Google · Capability
Google Drive API — Changes
Google Drive API — Changes. 3 operations. Lead operation: Google Get Changes. Self-contained Naftiko capability covering one Google business surface.
What You Can Do
GET
Googledrivechangeslist
— Google Get Changes
/v1/changes
GET
Googledrivechangesgetstartpagetoken
— Google Get Changes Startpagetoken
/v1/changes/startpagetoken
POST
Googledrivechangeswatch
— Google Post Changes Watch
/v1/changes/watch
MCP Tools
google-get-changes
Google Get Changes
read-only
idempotent
google-get-changes-startpagetoken
Google Get Changes Startpagetoken
read-only
idempotent
google-post-changes-watch
Google Post Changes Watch
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Google Drive API — Changes
description: 'Google Drive API — Changes. 3 operations. Lead operation: Google Get Changes. Self-contained Naftiko capability
covering one Google business surface.'
tags:
- Google
- Changes
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
GOOGLE_API_KEY: GOOGLE_API_KEY
capability:
consumes:
- type: http
namespace: drive-changes
baseUri: https://www.googleapis.com/drive/v3
description: Google Drive API — Changes business capability. Self-contained, no shared references.
resources:
- name: changes
path: /changes
operations:
- name: googledrivechangeslist
method: GET
description: Google Get Changes
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: pageToken
in: query
type: string
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 respo
required: true
- name: driveId
in: query
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 I
- name: includeCorpusRemovals
in: query
type: boolean
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 l
- name: includeItemsFromAllDrives
in: query
type: boolean
description: Whether both My Drive and shared drive items should be included in results.
- name: includeLabels
in: query
type: string
description: A comma-separated list of IDs of labels to include in the `labelInfo` part of the response.
- name: includePermissionsForView
in: query
type: string
description: Specifies which additional view's permissions to include in the response. Only 'published' is supported.
- name: includeRemoved
in: query
type: boolean
description: Whether to include changes indicating that items have been removed from the list of changes, for example
by deletion or loss of access.
- name: includeTeamDriveItems
in: query
type: boolean
description: 'Deprecated: Use `includeItemsFromAllDrives` instead.'
- name: pageSize
in: query
type: integer
description: The maximum number of changes to return per page.
- name: restrictToMyDrive
in: query
type: boolean
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 fil
- name: spaces
in: query
type: string
description: A comma-separated list of spaces to query within the corpora. Supported values are 'drive' and 'appDataFolder'.
- name: supportsAllDrives
in: query
type: boolean
description: Whether the requesting application supports both My Drives and shared drives.
- name: supportsTeamDrives
in: query
type: boolean
description: 'Deprecated: Use `supportsAllDrives` instead.'
- name: teamDriveId
in: query
type: string
description: 'Deprecated: Use `driveId` instead.'
- name: Authorization
in: header
type: string
- name: $.xgafv
in: query
type: string
description: V1 error format.
- name: access_token
in: query
type: string
description: OAuth access token.
- name: alt
in: query
type: string
description: Data format for response.
- name: callback
in: query
type: string
description: JSONP
- name: fields
in: query
type: string
description: Selector specifying which fields to include in a partial response.
- name: key
in: query
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.
- name: oauth_token
in: query
type: string
description: OAuth 2.0 token for the current user.
- name: prettyPrint
in: query
type: boolean
description: Returns response with indentations and line breaks.
- name: quotaUser
in: query
type: string
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.
- name: upload_protocol
in: query
type: string
description: Upload protocol for media (e.g. "raw", "multipart").
- name: uploadType
in: query
type: string
description: Legacy upload protocol for media (e.g. "media", "multipart").
- name: changes-startPageToken
path: /changes/startPageToken
operations:
- name: googledrivechangesgetstartpagetoken
method: GET
description: Google Get Changes Startpagetoken
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: driveId
in: query
type: string
description: The ID of the shared drive for which the starting pageToken for listing future changes from that shared
drive will be returned.
- name: supportsAllDrives
in: query
type: boolean
description: Whether the requesting application supports both My Drives and shared drives.
- name: supportsTeamDrives
in: query
type: boolean
description: 'Deprecated: Use `supportsAllDrives` instead.'
- name: teamDriveId
in: query
type: string
description: 'Deprecated: Use `driveId` instead.'
- name: Authorization
in: header
type: string
- name: $.xgafv
in: query
type: string
description: V1 error format.
- name: access_token
in: query
type: string
description: OAuth access token.
- name: alt
in: query
type: string
description: Data format for response.
- name: callback
in: query
type: string
description: JSONP
- name: fields
in: query
type: string
description: Selector specifying which fields to include in a partial response.
- name: key
in: query
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.
- name: oauth_token
in: query
type: string
description: OAuth 2.0 token for the current user.
- name: prettyPrint
in: query
type: boolean
description: Returns response with indentations and line breaks.
- name: quotaUser
in: query
type: string
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.
- name: upload_protocol
in: query
type: string
description: Upload protocol for media (e.g. "raw", "multipart").
- name: uploadType
in: query
type: string
description: Legacy upload protocol for media (e.g. "media", "multipart").
- name: changes-watch
path: /changes/watch
operations:
- name: googledrivechangeswatch
method: POST
description: Google Post Changes Watch
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: pageToken
in: query
type: string
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 respo
required: true
- name: driveId
in: query
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 I
- name: includeCorpusRemovals
in: query
type: boolean
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 l
- name: includeItemsFromAllDrives
in: query
type: boolean
description: Whether both My Drive and shared drive items should be included in results.
- name: includeLabels
in: query
type: string
description: A comma-separated list of IDs of labels to include in the `labelInfo` part of the response.
- name: includePermissionsForView
in: query
type: string
description: Specifies which additional view's permissions to include in the response. Only 'published' is supported.
- name: includeRemoved
in: query
type: boolean
description: Whether to include changes indicating that items have been removed from the list of changes, for example
by deletion or loss of access.
- name: includeTeamDriveItems
in: query
type: boolean
description: 'Deprecated: Use `includeItemsFromAllDrives` instead.'
- name: pageSize
in: query
type: integer
description: The maximum number of changes to return per page.
- name: restrictToMyDrive
in: query
type: boolean
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 fil
- name: spaces
in: query
type: string
description: A comma-separated list of spaces to query within the corpora. Supported values are 'drive' and 'appDataFolder'.
- name: supportsAllDrives
in: query
type: boolean
description: Whether the requesting application supports both My Drives and shared drives.
- name: supportsTeamDrives
in: query
type: boolean
description: 'Deprecated: Use `supportsAllDrives` instead.'
- name: teamDriveId
in: query
type: string
description: 'Deprecated: Use `driveId` instead.'
- name: Authorization
in: header
type: string
- name: $.xgafv
in: query
type: string
description: V1 error format.
- name: access_token
in: query
type: string
description: OAuth access token.
- name: alt
in: query
type: string
description: Data format for response.
- name: callback
in: query
type: string
description: JSONP
- name: fields
in: query
type: string
description: Selector specifying which fields to include in a partial response.
- name: key
in: query
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.
- name: oauth_token
in: query
type: string
description: OAuth 2.0 token for the current user.
- name: prettyPrint
in: query
type: boolean
description: Returns response with indentations and line breaks.
- name: quotaUser
in: query
type: string
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.
- name: upload_protocol
in: query
type: string
description: Upload protocol for media (e.g. "raw", "multipart").
- name: uploadType
in: query
type: string
description: Legacy upload protocol for media (e.g. "media", "multipart").
- name: body
in: body
type: object
description: Request body (JSON).
required: false
authentication:
type: bearer
token: '{{env.GOOGLE_API_KEY}}'
exposes:
- type: rest
namespace: drive-changes-rest
port: 8080
description: REST adapter for Google Drive API — Changes. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/changes
name: changes
description: REST surface for changes.
operations:
- method: GET
name: googledrivechangeslist
description: Google Get Changes
call: drive-changes.googledrivechangeslist
with:
pageToken: rest.pageToken
driveId: rest.driveId
includeCorpusRemovals: rest.includeCorpusRemovals
includeItemsFromAllDrives: rest.includeItemsFromAllDrives
includeLabels: rest.includeLabels
includePermissionsForView: rest.includePermissionsForView
includeRemoved: rest.includeRemoved
includeTeamDriveItems: rest.includeTeamDriveItems
pageSize: rest.pageSize
restrictToMyDrive: rest.restrictToMyDrive
spaces: rest.spaces
supportsAllDrives: rest.supportsAllDrives
supportsTeamDrives: rest.supportsTeamDrives
teamDriveId: rest.teamDriveId
Authorization: rest.Authorization
$.xgafv: rest.$.xgafv
access_token: rest.access_token
alt: rest.alt
callback: rest.callback
fields: rest.fields
key: rest.key
oauth_token: rest.oauth_token
prettyPrint: rest.prettyPrint
quotaUser: rest.quotaUser
upload_protocol: rest.upload_protocol
uploadType: rest.uploadType
outputParameters:
- type: object
mapping: $.
- path: /v1/changes/startpagetoken
name: changes-startpagetoken
description: REST surface for changes-startPageToken.
operations:
- method: GET
name: googledrivechangesgetstartpagetoken
description: Google Get Changes Startpagetoken
call: drive-changes.googledrivechangesgetstartpagetoken
with:
driveId: rest.driveId
supportsAllDrives: rest.supportsAllDrives
supportsTeamDrives: rest.supportsTeamDrives
teamDriveId: rest.teamDriveId
Authorization: rest.Authorization
$.xgafv: rest.$.xgafv
access_token: rest.access_token
alt: rest.alt
callback: rest.callback
fields: rest.fields
key: rest.key
oauth_token: rest.oauth_token
prettyPrint: rest.prettyPrint
quotaUser: rest.quotaUser
upload_protocol: rest.upload_protocol
uploadType: rest.uploadType
outputParameters:
- type: object
mapping: $.
- path: /v1/changes/watch
name: changes-watch
description: REST surface for changes-watch.
operations:
- method: POST
name: googledrivechangeswatch
description: Google Post Changes Watch
call: drive-changes.googledrivechangeswatch
with:
pageToken: rest.pageToken
driveId: rest.driveId
includeCorpusRemovals: rest.includeCorpusRemovals
includeItemsFromAllDrives: rest.includeItemsFromAllDrives
includeLabels: rest.includeLabels
includePermissionsForView: rest.includePermissionsForView
includeRemoved: rest.includeRemoved
includeTeamDriveItems: rest.includeTeamDriveItems
pageSize: rest.pageSize
restrictToMyDrive: rest.restrictToMyDrive
spaces: rest.spaces
supportsAllDrives: rest.supportsAllDrives
supportsTeamDrives: rest.supportsTeamDrives
teamDriveId: rest.teamDriveId
Authorization: rest.Authorization
$.xgafv: rest.$.xgafv
access_token: rest.access_token
alt: rest.alt
callback: rest.callback
fields: rest.fields
key: rest.key
oauth_token: rest.oauth_token
prettyPrint: rest.prettyPrint
quotaUser: rest.quotaUser
upload_protocol: rest.upload_protocol
uploadType: rest.uploadType
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: drive-changes-mcp
port: 9090
transport: http
description: MCP adapter for Google Drive API — Changes. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: google-get-changes
description: Google Get Changes
hints:
readOnly: true
destructive: false
idempotent: true
call: drive-changes.googledrivechangeslist
with:
pageToken: tools.pageToken
driveId: tools.driveId
includeCorpusRemovals: tools.includeCorpusRemovals
includeItemsFromAllDrives: tools.includeItemsFromAllDrives
includeLabels: tools.includeLabels
includePermissionsForView: tools.includePermissionsForView
includeRemoved: tools.includeRemoved
includeTeamDriveItems: tools.includeTeamDriveItems
pageSize: tools.pageSize
restrictToMyDrive: tools.restrictToMyDrive
spaces: tools.spaces
supportsAllDrives: tools.supportsAllDrives
supportsTeamDrives: tools.supportsTeamDrives
teamDriveId: tools.teamDriveId
Authorization: tools.Authorization
$.xgafv: tools.$.xgafv
access_token: tools.access_token
alt: tools.alt
callback: tools.callback
fields: tools.fields
key: tools.key
oauth_token: tools.oauth_token
prettyPrint: tools.prettyPrint
quotaUser: tools.quotaUser
upload_protocol: tools.upload_protocol
uploadType: tools.uploadType
outputParameters:
- type: object
mapping: $.
- name: google-get-changes-startpagetoken
description: Google Get Changes Startpagetoken
hints:
readOnly: true
destructive: false
idempotent: true
call: drive-changes.googledrivechangesgetstartpagetoken
with:
driveId: tools.driveId
supportsAllDrives: tools.supportsAllDrives
supportsTeamDrives: tools.supportsTeamDrives
teamDriveId: tools.teamDriveId
Authorization: tools.Authorization
$.xgafv: tools.$.xgafv
access_token: tools.access_token
alt: tools.alt
callback: tools.callback
fields: tools.fields
key: tools.key
oauth_token: tools.oauth_token
prettyPrint: tools.prettyPrint
quotaUser: tools.quotaUser
upload_protocol: tools.upload_protocol
uploadType: tools.uploadType
outputParameters:
- type: object
mapping: $.
- name: google-post-changes-watch
description: Google Post Changes Watch
hints:
readOnly: false
destructive: false
idempotent: false
call: drive-changes.googledrivechangeswatch
with:
pageToken: tools.pageToken
driveId: tools.driveId
includeCorpusRemovals: tools.includeCorpusRemovals
includeItemsFromAllDrives: tools.includeItemsFromAllDrives
includeLabels: tools.includeLabels
includePermissionsForView: tools.includePermissionsForView
includeRemoved: tools.includeRemoved
includeTeamDriveItems: tools.includeTeamDriveItems
pageSize: tools.pageSize
restrictToMyDrive: tools.restrictToMyDrive
spaces: tools.spaces
supportsAllDrives: tools.supportsAllDrives
supportsTeamDrives: tools.supportsTeamDrives
teamDriveId: tools.teamDriveId
Authorization: tools.Authorization
$.xgafv: tools.$.xgafv
access_token: tools.access_token
alt: tools.alt
callback: tools.callback
fields: tools.fields
key: tools.key
oauth_token: tools.oauth_token
prettyPrint: tools.prettyPrint
quotaUser: tools.quotaUser
upload_protocol: tools.upload_protocol
uploadType: tools.uploadType
body: tools.body
outputParameters:
- type: object
mapping: $.