Google Drive API
Google Drive is a cloud-based storage service that lets users store, access, and share files from any device with an internet connection.
Google Drive is a cloud-based storage service that lets users store, access, and share files from any device with an internet connection.
openapi: 3.1.0
info:
title: Google Drive API
description: The Google Drive API allows clients to access resources from Google Drive.
version: v3
contact:
name: Google
url: https://google.com
x-twitter: youtube
license:
name: Creative Commons Attribution 3.0
url: http://creativecommons.org/licenses/by/3.0/
termsOfService: https://developers.google.com/terms/
servers:
- url: https://www.googleapis.com/drive/v3
description: Google Drive API Server
tags:
- name: About
description: Operations related to About
- name: Applications
- name: Changes
description: Operations related to Changes
- name: Channels
description: Operations related to Channels
- name: Comments
description: Operations related to Comments
- name: Drives
description: Operations related to Drives
- name: Files
description: Operations related to Files
- name: Permissions
description: Operations related to Permissions
- name: Replies
description: Operations related to Replies
- name: Revisions
description: Operations related to Revisions
- name: Team Drives
description: Operations related to Teamdrives
externalDocs:
url: https://developers.google.com/drive/
paths:
/about:
get:
tags:
- About
summary: Google Get About
description: Gets information about the user, the user's Drive, and system capabilities.
operationId: googleDriveAboutGet
security:
- Oauth2:
- https://www.googleapis.com/auth/drive
Oauth2c:
- https://www.googleapis.com/auth/drive
- Oauth2:
- https://www.googleapis.com/auth/drive.appdata
Oauth2c:
- https://www.googleapis.com/auth/drive.appdata
- Oauth2:
- https://www.googleapis.com/auth/drive.file
Oauth2c:
- https://www.googleapis.com/auth/drive.file
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.photos.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.photos.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.readonly
parameters:
- in: header
name: Authorization
schema:
type: string
- description: V1 error format.
in: query
name: $.xgafv
schema:
enum:
- '1'
- '2'
type: string
- description: OAuth access token.
in: query
name: access_token
schema:
type: string
- description: Data format for response.
in: query
name: alt
schema:
enum:
- json
- media
- proto
type: string
- description: JSONP
in: query
name: callback
schema:
type: string
- description: Selector specifying which fields to include in a partial response.
in: query
name: fields
schema:
type: string
- description: API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
in: query
name: key
schema:
type: string
- description: OAuth 2.0 token for the current user.
in: query
name: oauth_token
schema:
type: string
- description: Returns response with indentations and line breaks.
in: query
name: prettyPrint
schema:
type: boolean
- description: Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
in: query
name: quotaUser
schema:
type: string
- description: Upload protocol for media (e.g. "raw", "multipart").
in: query
name: upload_protocol
schema:
type: string
- description: Legacy upload protocol for media (e.g. "media", "multipart").
in: query
name: uploadType
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/About'
x-microcks-operation:
delay: 100
dispatcher: FALLBACK
dispatcherRules: SuccessExample
/apps:
get:
tags:
- Applications
summary: Google Get Apps
description: Lists a user's installed apps.
operationId: googleDriveAppsList
security:
- Oauth2:
- https://www.googleapis.com/auth/drive.apps.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.apps.readonly
parameters:
- description: A comma-separated list of file extensions to limit returned results. All results within the given app query scope which can open any of the given file extensions are included in the response. If `appFilterMimeTypes` are provided as well, the result is a union of the two resulting app lists.
in: query
name: appFilterExtensions
schema:
type: string
- description: A comma-separated list of file extensions to limit returned results. All results within the given app query scope which can open any of the given MIME types will be included in the response. If `appFilterExtensions` are provided as well, the result is a union of the two resulting app lists.
in: query
name: appFilterMimeTypes
schema:
type: string
- description: A language or locale code, as defined by BCP 47, with some extensions from Unicode's LDML format (http://www.unicode.org/reports/tr35/).
in: query
name: languageCode
schema:
type: string
- in: header
name: Authorization
schema:
type: string
- description: V1 error format.
in: query
name: $.xgafv
schema:
enum:
- '1'
- '2'
type: string
- description: OAuth access token.
in: query
name: access_token
schema:
type: string
- description: Data format for response.
in: query
name: alt
schema:
enum:
- json
- media
- proto
type: string
- description: JSONP
in: query
name: callback
schema:
type: string
- description: Selector specifying which fields to include in a partial response.
in: query
name: fields
schema:
type: string
- description: API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
in: query
name: key
schema:
type: string
- description: OAuth 2.0 token for the current user.
in: query
name: oauth_token
schema:
type: string
- description: Returns response with indentations and line breaks.
in: query
name: prettyPrint
schema:
type: boolean
- description: Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
in: query
name: quotaUser
schema:
type: string
- description: Upload protocol for media (e.g. "raw", "multipart").
in: query
name: upload_protocol
schema:
type: string
- description: Legacy upload protocol for media (e.g. "media", "multipart").
in: query
name: uploadType
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/AppList'
x-microcks-operation:
delay: 100
dispatcher: FALLBACK
dispatcherRules: SuccessExample
/apps/{appId}:
get:
tags:
- Applications
summary: Google Get Apps Appid
description: Gets a specific app.
operationId: googleDriveAppsGet
security:
- Oauth2:
- https://www.googleapis.com/auth/drive
Oauth2c:
- https://www.googleapis.com/auth/drive
- Oauth2:
- https://www.googleapis.com/auth/drive.appdata
Oauth2c:
- https://www.googleapis.com/auth/drive.appdata
- Oauth2:
- https://www.googleapis.com/auth/drive.apps.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.apps.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.file
Oauth2c:
- https://www.googleapis.com/auth/drive.file
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.readonly
parameters:
- description: The ID of the app.
in: path
name: appId
required: true
schema:
type: string
- in: header
name: Authorization
schema:
type: string
- description: V1 error format.
in: query
name: $.xgafv
schema:
enum:
- '1'
- '2'
type: string
- description: OAuth access token.
in: query
name: access_token
schema:
type: string
- description: Data format for response.
in: query
name: alt
schema:
enum:
- json
- media
- proto
type: string
- description: JSONP
in: query
name: callback
schema:
type: string
- description: Selector specifying which fields to include in a partial response.
in: query
name: fields
schema:
type: string
- description: API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
in: query
name: key
schema:
type: string
- description: OAuth 2.0 token for the current user.
in: query
name: oauth_token
schema:
type: string
- description: Returns response with indentations and line breaks.
in: query
name: prettyPrint
schema:
type: boolean
- description: Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
in: query
name: quotaUser
schema:
type: string
- description: Upload protocol for media (e.g. "raw", "multipart").
in: query
name: upload_protocol
schema:
type: string
- description: Legacy upload protocol for media (e.g. "media", "multipart").
in: query
name: uploadType
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/App'
x-microcks-operation:
delay: 100
dispatcher: FALLBACK
dispatcherRules: SuccessExample
/changes:
get:
tags:
- Changes
summary: Google Get Changes
description: Lists the changes for a user or shared drive.
operationId: googleDriveChangesList
security:
- Oauth2:
- https://www.googleapis.com/auth/drive
Oauth2c:
- https://www.googleapis.com/auth/drive
- Oauth2:
- https://www.googleapis.com/auth/drive.appdata
Oauth2c:
- https://www.googleapis.com/auth/drive.appdata
- Oauth2:
- https://www.googleapis.com/auth/drive.file
Oauth2c:
- https://www.googleapis.com/auth/drive.file
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.photos.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.photos.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.readonly
parameters:
- description: The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.
in: query
name: pageToken
required: true
schema:
type: string
- description: The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.
in: query
name: driveId
schema:
type: string
- description: Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.
in: query
name: includeCorpusRemovals
schema:
type: boolean
- description: Whether both My Drive and shared drive items should be included in results.
in: query
name: includeItemsFromAllDrives
schema:
type: boolean
- description: A comma-separated list of IDs of labels to include in the `labelInfo` part of the response.
in: query
name: includeLabels
schema:
type: string
- description: Specifies which additional view's permissions to include in the response. Only 'published' is supported.
in: query
name: includePermissionsForView
schema:
type: string
- description: Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.
in: query
name: includeRemoved
schema:
type: boolean
- description: 'Deprecated: Use `includeItemsFromAllDrives` instead.'
in: query
name: includeTeamDriveItems
schema:
type: boolean
- description: The maximum number of changes to return per page.
in: query
name: pageSize
schema:
maximum: 1000
minimum: 1
type: integer
- description: Whether to restrict the results to changes inside the My Drive hierarchy. This omits changes to files such as those in the Application Data folder or shared files which have not been added to My Drive.
in: query
name: restrictToMyDrive
schema:
type: boolean
- description: A comma-separated list of spaces to query within the corpora. Supported values are 'drive' and 'appDataFolder'.
in: query
name: spaces
schema:
type: string
- description: Whether the requesting application supports both My Drives and shared drives.
in: query
name: supportsAllDrives
schema:
type: boolean
- description: 'Deprecated: Use `supportsAllDrives` instead.'
in: query
name: supportsTeamDrives
schema:
type: boolean
- description: 'Deprecated: Use `driveId` instead.'
in: query
name: teamDriveId
schema:
type: string
- in: header
name: Authorization
schema:
type: string
- description: V1 error format.
in: query
name: $.xgafv
schema:
enum:
- '1'
- '2'
type: string
- description: OAuth access token.
in: query
name: access_token
schema:
type: string
- description: Data format for response.
in: query
name: alt
schema:
enum:
- json
- media
- proto
type: string
- description: JSONP
in: query
name: callback
schema:
type: string
- description: Selector specifying which fields to include in a partial response.
in: query
name: fields
schema:
type: string
- description: API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
in: query
name: key
schema:
type: string
- description: OAuth 2.0 token for the current user.
in: query
name: oauth_token
schema:
type: string
- description: Returns response with indentations and line breaks.
in: query
name: prettyPrint
schema:
type: boolean
- description: Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
in: query
name: quotaUser
schema:
type: string
- description: Upload protocol for media (e.g. "raw", "multipart").
in: query
name: upload_protocol
schema:
type: string
- description: Legacy upload protocol for media (e.g. "media", "multipart").
in: query
name: uploadType
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/ChangeList'
x-microcks-operation:
delay: 100
dispatcher: FALLBACK
dispatcherRules: SuccessExample
/changes/startPageToken:
get:
tags:
- Changes
summary: Google Get Changes Startpagetoken
description: Gets the starting pageToken for listing future changes.
operationId: googleDriveChangesGetstartpagetoken
security:
- Oauth2:
- https://www.googleapis.com/auth/drive
Oauth2c:
- https://www.googleapis.com/auth/drive
- Oauth2:
- https://www.googleapis.com/auth/drive.appdata
Oauth2c:
- https://www.googleapis.com/auth/drive.appdata
- Oauth2:
- https://www.googleapis.com/auth/drive.file
Oauth2c:
- https://www.googleapis.com/auth/drive.file
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.photos.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.photos.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.readonly
parameters:
- description: The ID of the shared drive for which the starting pageToken for listing future changes from that shared drive will be returned.
in: query
name: driveId
schema:
type: string
- description: Whether the requesting application supports both My Drives and shared drives.
in: query
name: supportsAllDrives
schema:
type: boolean
- description: 'Deprecated: Use `supportsAllDrives` instead.'
in: query
name: supportsTeamDrives
schema:
type: boolean
- description: 'Deprecated: Use `driveId` instead.'
in: query
name: teamDriveId
schema:
type: string
- in: header
name: Authorization
schema:
type: string
- description: V1 error format.
in: query
name: $.xgafv
schema:
enum:
- '1'
- '2'
type: string
- description: OAuth access token.
in: query
name: access_token
schema:
type: string
- description: Data format for response.
in: query
name: alt
schema:
enum:
- json
- media
- proto
type: string
- description: JSONP
in: query
name: callback
schema:
type: string
- description: Selector specifying which fields to include in a partial response.
in: query
name: fields
schema:
type: string
- description: API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
in: query
name: key
schema:
type: string
- description: OAuth 2.0 token for the current user.
in: query
name: oauth_token
schema:
type: string
- description: Returns response with indentations and line breaks.
in: query
name: prettyPrint
schema:
type: boolean
- description: Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
in: query
name: quotaUser
schema:
type: string
- description: Upload protocol for media (e.g. "raw", "multipart").
in: query
name: upload_protocol
schema:
type: string
- description: Legacy upload protocol for media (e.g. "media", "multipart").
in: query
name: uploadType
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/StartPageToken'
x-microcks-operation:
delay: 100
dispatcher: FALLBACK
dispatcherRules: SuccessExample
/changes/watch:
post:
tags:
- Changes
summary: Google Post Changes Watch
description: Subscribes to changes for a user.
operationId: googleDriveChangesWatch
security:
- Oauth2:
- https://www.googleapis.com/auth/drive
Oauth2c:
- https://www.googleapis.com/auth/drive
- Oauth2:
- https://www.googleapis.com/auth/drive.appdata
Oauth2c:
- https://www.googleapis.com/auth/drive.appdata
- Oauth2:
- https://www.googleapis.com/auth/drive.file
Oauth2c:
- https://www.googleapis.com/auth/drive.file
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.photos.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.photos.readonly
- Oauth2:
- https://www.googleapis.com/auth/drive.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.readonly
parameters:
- description: The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method.
in: query
name: pageToken
required: true
schema:
type: string
- description: The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.
in: query
name: driveId
schema:
type: string
- description: Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.
in: query
name: includeCorpusRemovals
schema:
type: boolean
- description: Whether both My Drive and shared drive items should be included in results.
in: query
name: includeItemsFromAllDrives
schema:
type: boolean
- description: A comma-separated list of IDs of labels to include in the `labelInfo` part of the response.
in: query
name: includeLabels
schema:
type: string
- description: Specifies which additional view's permissions to include in the response. Only 'published' is supported.
in: query
name: includePermissionsForView
schema:
type: string
- description: Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.
in: query
name: includeRemoved
schema:
type: boolean
- description: 'Deprecated: Use `includeItemsFromAllDrives` instead.'
in: query
name: includeTeamDriveItems
schema:
type: boolean
- description: The maximum number of changes to return per page.
in: query
name: pageSize
schema:
maximum: 1000
minimum: 1
type: integer
- description: Whether to restrict the results to changes inside the My Drive hierarchy. This omits changes to files such as those in the Application Data folder or shared files which have not been added to My Drive.
in: query
name: restrictToMyDrive
schema:
type: boolean
- description: A comma-separated list of spaces to query within the corpora. Supported values are 'drive' and 'appDataFolder'.
in: query
name: spaces
schema:
type: string
- description: Whether the requesting application supports both My Drives and shared drives.
in: query
name: supportsAllDrives
schema:
type: boolean
- description: 'Deprecated: Use `supportsAllDrives` instead.'
in: query
name: supportsTeamDrives
schema:
type: boolean
- description: 'Deprecated: Use `driveId` instead.'
in: query
name: teamDriveId
schema:
type: string
- in: header
name: Authorization
schema:
type: string
- description: V1 error format.
in: query
name: $.xgafv
schema:
enum:
- '1'
- '2'
type: string
- description: OAuth access token.
in: query
name: access_token
schema:
type: string
- description: Data format for response.
in: query
name: alt
schema:
enum:
- json
- media
- proto
type: string
- description: JSONP
in: query
name: callback
schema:
type: string
- description: Selector specifying which fields to include in a partial response.
in: query
name: fields
schema:
type: string
- description: API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
in: query
name: key
schema:
type: string
- description: OAuth 2.0 token for the current user.
in: query
name: oauth_token
schema:
type: string
- description: Returns response with indentations and line breaks.
in: query
name: prettyPrint
schema:
type: boolean
- description: Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
in: query
name: quotaUser
schema:
type: string
- description: Upload protocol for media (e.g. "raw", "multipart").
in: query
name: upload_protocol
schema:
type: string
- description: Legacy upload protocol for media (e.g. "media", "multipart").
in: query
name: uploadType
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Channel'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Channel'
x-microcks-operation:
delay: 100
dispatcher: FALLBACK
dispatcherRules: SuccessExample
/channels/stop:
post:
tags:
- Channels
summary: Google Post Channels Stop
description: Stops watching resources through this channel.
operationId: googleDriveChannelsStop
security:
- Oauth2:
- https://www.googleapis.com/auth/drive
Oauth2c:
- https://www.googleapis.com/auth/drive
- Oauth2:
- https://www.googleapis.com/auth/drive.appdata
Oauth2c:
- https://www.googleapis.com/auth/drive.appdata
- Oauth2:
- https://www.googleapis.com/auth/drive.file
Oauth2c:
- https://www.googleapis.com/auth/drive.file
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata
- Oauth2:
- https://www.googleapis.com/auth/drive.metadata.readonly
Oauth2c:
- https://www.googleapis.com/auth/drive.metadata.readonly
- Oauth2:
- https://www.goog
# --- truncated at 32 KB (298 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/google/refs/heads/main/openapi/google-drive-api-openapi.yml