Google · Capability
Google Docs API — Documents
Google Docs API — Documents. 3 operations. Lead operation: Google Post Documents. Self-contained Naftiko capability covering one Google business surface.
What You Can Do
POST
Docsdocumentscreate
— Google Post Documents
/v1/v1/documents
GET
Docsdocumentsget
— Google Get Documents
/v1/v1/documents/{documentid}
POST
Docsdocumentsbatchupdate
— Google Post Documents Batch Update
/v1/v1/documents/documentid-batchupdate
MCP Tools
google-post-documents
Google Post Documents
google-get-documents
Google Get Documents
read-only
idempotent
google-post-documents-batch-update
Google Post Documents Batch Update
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Google Docs API — Documents
description: 'Google Docs API — Documents. 3 operations. Lead operation: Google Post Documents. Self-contained Naftiko capability
covering one Google business surface.'
tags:
- Google
- Documents
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
GOOGLE_API_KEY: GOOGLE_API_KEY
capability:
consumes:
- type: http
namespace: docs-documents
baseUri: https://docs.googleapis.com
description: Google Docs API — Documents business capability. Self-contained, no shared references.
resources:
- name: v1-documents
path: /v1/documents
operations:
- name: docsdocumentscreate
method: POST
description: Google Post Documents
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- 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: Authorization
in: header
type: string
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: v1-documents-documentId
path: /v1/documents/{documentId}
operations:
- name: docsdocumentsget
method: GET
description: Google Get Documents
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: documentId
in: path
type: string
description: The ID of the document to retrieve.
required: true
- name: suggestionsViewMode
in: query
type: string
description: The suggestions view mode to apply to the document. This allows viewing the document with all suggestions
inline, accepted or rejected. If one is not specified,
- 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: Authorization
in: header
type: string
- name: v1-documents-documentId}:batchUpdate
path: /v1/documents/{documentId}:batchUpdate
operations:
- name: docsdocumentsbatchupdate
method: POST
description: Google Post Documents Batch Update
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: documentId
in: path
type: string
description: The ID of the document to update.
required: true
- 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: Authorization
in: header
type: string
- name: body
in: body
type: object
description: Request body (JSON).
required: false
authentication:
type: bearer
token: '{{env.GOOGLE_API_KEY}}'
exposes:
- type: rest
namespace: docs-documents-rest
port: 8080
description: REST adapter for Google Docs API — Documents. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/v1/documents
name: v1-documents
description: REST surface for v1-documents.
operations:
- method: POST
name: docsdocumentscreate
description: Google Post Documents
call: docs-documents.docsdocumentscreate
with:
$.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
Authorization: rest.Authorization
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/documents/{documentid}
name: v1-documents-documentid
description: REST surface for v1-documents-documentId.
operations:
- method: GET
name: docsdocumentsget
description: Google Get Documents
call: docs-documents.docsdocumentsget
with:
documentId: rest.documentId
suggestionsViewMode: rest.suggestionsViewMode
$.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
Authorization: rest.Authorization
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/documents/documentid-batchupdate
name: v1-documents-documentid-batchupdate
description: REST surface for v1-documents-documentId}:batchUpdate.
operations:
- method: POST
name: docsdocumentsbatchupdate
description: Google Post Documents Batch Update
call: docs-documents.docsdocumentsbatchupdate
with:
documentId: rest.documentId
$.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
Authorization: rest.Authorization
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: docs-documents-mcp
port: 9090
transport: http
description: MCP adapter for Google Docs API — Documents. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: google-post-documents
description: Google Post Documents
hints:
readOnly: false
destructive: false
idempotent: false
call: docs-documents.docsdocumentscreate
with:
$.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
Authorization: tools.Authorization
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: google-get-documents
description: Google Get Documents
hints:
readOnly: true
destructive: false
idempotent: true
call: docs-documents.docsdocumentsget
with:
documentId: tools.documentId
suggestionsViewMode: tools.suggestionsViewMode
$.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
Authorization: tools.Authorization
outputParameters:
- type: object
mapping: $.
- name: google-post-documents-batch-update
description: Google Post Documents Batch Update
hints:
readOnly: false
destructive: false
idempotent: false
call: docs-documents.docsdocumentsbatchupdate
with:
documentId: tools.documentId
$.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
Authorization: tools.Authorization
body: tools.body
outputParameters:
- type: object
mapping: $.