<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_v2.html">Drive API</a> . <a href="drive_v2.about.html">about</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#get">get(includeSubscribed=None, maxChangeIdCount=None, startChangeId=None)</a></code></p>
<p class="firstline">Gets the information about the current user along with Drive API settings</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="get">get(includeSubscribed=None, maxChangeIdCount=None, startChangeId=None)</code>
  <pre>Gets the information about the current user along with Drive API settings

Args:
  includeSubscribed: boolean, Whether to count changes outside the My Drive hierarchy. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the maxChangeIdCount.
  maxChangeIdCount: string, Maximum number of remaining change IDs to count
  startChangeId: string, Change ID to start counting from when calculating number of remaining change IDs

Returns:
  An object of the form:

    { # An item with user information and settings.
    &quot;additionalRoleInfo&quot;: [ # Information about supported additional roles per file type. The most specific type takes precedence.
      {
        &quot;roleSets&quot;: [ # The supported additional roles per primary role.
          {
            &quot;additionalRoles&quot;: [ # The supported additional roles with the primary role.
              &quot;A String&quot;,
            ],
            &quot;primaryRole&quot;: &quot;A String&quot;, # A primary permission role.
          },
        ],
        &quot;type&quot;: &quot;A String&quot;, # The content type that this additional role info applies to.
      },
    ],
    &quot;canCreateDrives&quot;: True or False, # Whether the user can create shared drives.
    &quot;canCreateTeamDrives&quot;: True or False, # Deprecated - use canCreateDrives instead.
    &quot;domainSharingPolicy&quot;: &quot;A String&quot;, # The domain sharing policy for the current user. Possible values are:
        # - allowed
        # - allowedWithWarning
        # - incomingOnly
        # - disallowed
    &quot;driveThemes&quot;: [ # A list of themes that are supported for shared drives.
      {
        &quot;backgroundImageLink&quot;: &quot;A String&quot;, # A link to this theme&#x27;s background image.
        &quot;colorRgb&quot;: &quot;A String&quot;, # The color of this theme as an RGB hex string.
        &quot;id&quot;: &quot;A String&quot;, # The ID of the theme.
      },
    ],
    &quot;etag&quot;: &quot;A String&quot;, # The ETag of the item.
    &quot;exportFormats&quot;: [ # The allowable export formats.
      {
        &quot;source&quot;: &quot;A String&quot;, # The content type to convert from.
        &quot;targets&quot;: [ # The possible content types to convert to.
          &quot;A String&quot;,
        ],
      },
    ],
    &quot;features&quot;: [ # List of additional features enabled on this account.
      {
        &quot;featureName&quot;: &quot;A String&quot;, # The name of the feature.
        &quot;featureRate&quot;: 3.14, # The request limit rate for this feature, in queries per second.
      },
    ],
    &quot;folderColorPalette&quot;: [ # The palette of allowable folder colors as RGB hex strings.
      &quot;A String&quot;,
    ],
    &quot;importFormats&quot;: [ # The allowable import formats.
      {
        &quot;source&quot;: &quot;A String&quot;, # The imported file&#x27;s content type to convert from.
        &quot;targets&quot;: [ # The possible content types to convert to.
          &quot;A String&quot;,
        ],
      },
    ],
    &quot;isCurrentAppInstalled&quot;: True or False, # A boolean indicating whether the authenticated app is installed by the authenticated user.
    &quot;kind&quot;: &quot;drive#about&quot;, # This is always drive#about.
    &quot;languageCode&quot;: &quot;A String&quot;, # The user&#x27;s language or locale code, as defined by BCP 47, with some extensions from Unicode&#x27;s LDML format (http://www.unicode.org/reports/tr35/).
    &quot;largestChangeId&quot;: &quot;A String&quot;, # The largest change id.
    &quot;maxUploadSizes&quot;: [ # List of max upload sizes for each file type. The most specific type takes precedence.
      {
        &quot;size&quot;: &quot;A String&quot;, # The max upload size for this type.
        &quot;type&quot;: &quot;A String&quot;, # The file type.
      },
    ],
    &quot;name&quot;: &quot;A String&quot;, # The name of the current user.
    &quot;permissionId&quot;: &quot;A String&quot;, # The current user&#x27;s ID as visible in the permissions collection.
    &quot;quotaBytesByService&quot;: [ # The amount of storage quota used by different Google services.
      {
        &quot;bytesUsed&quot;: &quot;A String&quot;, # The storage quota bytes used by the service.
        &quot;serviceName&quot;: &quot;A String&quot;, # The service&#x27;s name, e.g. DRIVE, GMAIL, or PHOTOS.
      },
    ],
    &quot;quotaBytesTotal&quot;: &quot;A String&quot;, # The total number of quota bytes. This is only relevant when quotaType is LIMITED.
    &quot;quotaBytesUsed&quot;: &quot;A String&quot;, # The number of quota bytes used by Google Drive.
    &quot;quotaBytesUsedAggregate&quot;: &quot;A String&quot;, # The number of quota bytes used by all Google apps (Drive, Picasa, etc.).
    &quot;quotaBytesUsedInTrash&quot;: &quot;A String&quot;, # The number of quota bytes used by trashed items.
    &quot;quotaType&quot;: &quot;A String&quot;, # The type of the user&#x27;s storage quota. Possible values are:
        # - LIMITED
        # - UNLIMITED
    &quot;remainingChangeIds&quot;: &quot;A String&quot;, # The number of remaining change ids, limited to no more than 2500.
    &quot;rootFolderId&quot;: &quot;A String&quot;, # The id of the root folder.
    &quot;selfLink&quot;: &quot;A String&quot;, # A link back to this item.
    &quot;teamDriveThemes&quot;: [ # Deprecated - use driveThemes instead.
      {
        &quot;backgroundImageLink&quot;: &quot;A String&quot;, # Deprecated - use driveThemes/backgroundImageLink instead.
        &quot;colorRgb&quot;: &quot;A String&quot;, # Deprecated - use driveThemes/colorRgb instead.
        &quot;id&quot;: &quot;A String&quot;, # Deprecated - use driveThemes/id instead.
      },
    ],
    &quot;user&quot;: { # Information about a Drive user. # The authenticated user.
      &quot;displayName&quot;: &quot;A String&quot;, # A plain text displayable name for this user.
      &quot;emailAddress&quot;: &quot;A String&quot;, # The email address of the user.
      &quot;isAuthenticatedUser&quot;: True or False, # Whether this user is the same as the authenticated user for whom the request was made.
      &quot;kind&quot;: &quot;drive#user&quot;, # This is always drive#user.
      &quot;permissionId&quot;: &quot;A String&quot;, # The user&#x27;s ID as visible in the permissions collection.
      &quot;picture&quot;: { # The user&#x27;s profile picture.
        &quot;url&quot;: &quot;A String&quot;, # A URL that points to a profile picture of this user.
      },
    },
  }</pre>
</div>

</body></html>