<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="drive_v3.html">Drive API</a> . <a href="drive_v3.about.html">about</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#get">get()</a></code></p>
<p class="firstline">Gets information about the user, the user's Drive, and system capabilities.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="get">get()</code>
  <pre>Gets information about the user, the user's Drive, and system capabilities.

Args:

Returns:
  An object of the form:

    { # Information about the user, the user's Drive, and system capabilities.
    "kind": "drive#about", # Identifies what kind of resource this is. Value: the fixed string "drive#about".
    "maxUploadSize": "A String", # The maximum upload size in bytes.
    "maxImportSizes": { # A map of maximum import sizes by MIME type, in bytes.
      "a_key": "A String",
    },
    "storageQuota": { # The user's storage quota limits and usage. All fields are measured in bytes.
      "usage": "A String", # The total usage across all services.
      "usageInDrive": "A String", # The usage by all files in Google Drive.
      "usageInDriveTrash": "A String", # The usage by trashed files in Google Drive.
      "limit": "A String", # The usage limit, if applicable. This will not be present if the user has unlimited storage.
    },
    "importFormats": { # A map of source MIME type to possible targets for all supported imports.
      "a_key": [
        "A String",
      ],
    },
    "appInstalled": True or False, # Whether the user has installed the requesting app.
    "folderColorPalette": [ # The currently supported folder colors as RGB hex strings.
      "A String",
    ],
    "exportFormats": { # A map of source MIME type to possible targets for all supported exports.
      "a_key": [
        "A String",
      ],
    },
    "user": { # Information about a Drive user. # The authenticated user.
      "me": True or False, # Whether this user is the requesting user.
      "kind": "drive#user", # Identifies what kind of resource this is. Value: the fixed string "drive#user".
      "displayName": "A String", # A plain text displayable name for this user.
      "permissionId": "A String", # The user's ID as visible in Permission resources.
      "emailAddress": "A String", # The email address of the user. This may not be present in certain contexts if the user has not made their email address visible to the requester.
      "photoLink": "A String", # A link to the user's profile photo, if available.
    },
  }</pre>
</div>

</body></html>