Skip to content

Google Docs

Google Docs

Google Docs is a cloud-based word processor with real-time collaboration, version history, and integration with other Google Workspace apps. With the integration in SquadOS, your agents can create documents from plain text or Markdown, edit existing content, search files, export PDFs, and automate complete documentation workflows directly via API.

This tool uses OAuth 2.0 (OAUTH2) to connect.

You will need the following fields:

FieldRequiredDescription
Google AccountYesOAuth 2.0 authorization managed by Composio. No manual key is needed — just authorize access during the connection flow.

Google Docs uses OAuth 2.0 managed by Composio. No manual key creation is required:

  1. Click Connect in SquadOS (see the section below).
  2. You’ll be redirected to Google’s authorization page.
  3. Sign in with the Google account you want to connect.
  4. Review the requested permissions and click Allow.
  5. After authorization, you’re automatically returned to SquadOS with the account connected.
  1. Go to Tools in the side menu (/admin/tools).
  2. Open the Available tab and search for Google Docs.
  3. Click the card to open the details modal and hit Connect.
  4. You’re taken to the secure connection page hosted by Composio, where you authorize access (OAuth).
  5. Once done, you’re sent back to SquadOS with the account connected and the tool available for your agents. (Connection-flow details in Organization Tools.)

How do I set up custom Google OAuth credentials for Google Docs?

Section titled “How do I set up custom Google OAuth credentials for Google Docs?”

For a step-by-step guide on creating and configuring your own Google OAuth credentials with Composio, see How to create OAuth2 credentials for Google Apps.

Why am I seeing “App is blocked” when connecting Google Docs?

Section titled “Why am I seeing “App is blocked” when connecting Google Docs?”

The OAuth client is requesting scopes that Google hasn’t verified for that client. This usually happens when you add extra scopes beyond the defaults. Remove the additional scopes from your auth config, or create your own OAuth app and submit the scopes for verification.

Why am I getting “Google Docs API has not been used in project” error?

Section titled “Why am I getting “Google Docs API has not been used in project” error?”

When using custom OAuth credentials, the Google Docs API must be enabled in the Google Cloud project that owns those credentials. Enable it in Google Cloud Console under APIs & Services, wait a few minutes, and retry.

Why am I getting “Error 400: invalid_scope”?

Section titled “Why am I getting “Error 400: invalid_scope”?”

The requested scopes are invalid or incorrectly formatted in the authorization URL. Verify your scope values against the Google OAuth scopes docs.

Section titled “Why does the OAuth consent screen show “Composio” instead of my app?”

By default, the consent screen uses Composio’s OAuth app. To show your own app name and logo, create your own OAuth app and set a custom redirect URL.

Why am I getting 401 errors on tool calls?

Section titled “Why am I getting 401 errors on tool calls?”

The user’s access token is no longer valid. Common causes: the user revoked access, changed their password or 2FA, a Workspace admin policy changed, or Google’s refresh token limit (~50 per account) was exceeded. Re-authenticating the user typically resolves this.

Why am I getting “Quota Exhausted” or “rate limit exhausted”?

Section titled “Why am I getting “Quota Exhausted” or “rate limit exhausted”?”

Google enforces per-minute and daily request quotas. If you’re using Composio’s default OAuth app, you share that quota with other users. Use your own OAuth app credentials to get a dedicated quota, and add exponential backoff and retries to handle transient rate limits.

GOOGLEDOCS_COPY_DOCUMENT

Tool to create a copy of an existing Google Document. Use this to duplicate a document, for example, when using an existing document as a template. The copied document will have a default title (e.g., ‘Copy of [original title]’) if no new title is provided, and will be placed in the user’s root Google Drive folder.

NameTypeRequiredDescription
titlestringNoThe title for the new copied document. If not provided, the title will be ‘Copy of [original document’s title]’.
document_idstringYesThe ID of the Google Document to be copied.
include_shared_drivesbooleanNoWhether to support copying documents from shared drives. Defaults to True.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_CREATE_DOCUMENT

Creates a new Google Docs document using the provided title as filename and inserts the initial text at the beginning if non-empty, returning the document’s ID and metadata (excluding body content).

NameTypeRequiredDescription
textstringNoOptional initial text content to insert at the beginning of the new document. If not provided, an empty document will be created. For very large text (over 50,000 characters), the text will be inserted in chunks to avoid API limits.
titlestringYesTitle for the new document, used as its filename in Google Drive.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_CREATE_DOCUMENT2

DEPRECATED: Use GOOGLEDOCS_CREATE_DOCUMENT instead. Tool to create a blank Google Docs document with a specified title. Use when you need to create a new, empty document.

NameTypeRequiredDescription
titlestringYesThe title of the document to create. This will be used as the document name in Google Drive.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_CREATE_DOCUMENT_MARKDOWN

Creates a new Google Docs document, optionally initializing it with a title and content provided as Markdown text.

NameTypeRequiredDescription
titlestringYesThe title for the new Google Docs document.
image_assetsarrayNoOptional uploaded images that Markdown can reference by name. Use Markdown image syntax like ![Alt](attachment://diagram). Public HTTPS image URLs in markdown do not need image_assets.
markdown_textstringNoThe initial content for the document, formatted as Markdown. Also accepts ‘content’ as an alias. Supports headings, real Google Docs lists including nested lists, multiple Markdown tables, task-list markers, images via publicly accessible URLs or matching image_assets uploads (max 2KB URL length after resolution; formats: JPEG, PNG, GIF; SVG not supported), blockquotes, code blocks, hyperlinks, and text formatting (bold, italic, etc.). If empty or omitted, creates document with title only.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_CREATE_FOOTER

Tool to create a new footer in a Google Document. Use when you need to add a footer, optionally specifying its type and the section it applies to.

NameTypeRequiredDescription
typestring ("DEFAULT")YesThe type of footer to create.
document_idstringYesThe ID of the document to create the footer in.
section_break_locationobjectNoThe location of the SectionBreak immediately preceding the section whose SectionStyle this footer should belong to. If this is unset or refers to the first section break in the document, the footer applies to the document style.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_CREATE_FOOTNOTE

Tool to create a new footnote in a Google Document. Use this when you need to add a footnote at a specific location or at the end of the document body.

NameTypeRequiredDescription
locationobjectNoInserts the footnote reference at a specific index in the document. The segmentId within this Location object must be empty as footnotes can only be inserted in the document body.
documentIdstringYesThe ID of the document to create the footnote in.
endOfSegmentLocationobjectNoInserts the footnote reference at the end of the document body. The segmentId within this EndOfSegmentLocation object must be empty.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_CREATE_HEADER

Tool to create a new header in a Google Document, optionally with text content. Use this tool when you need to add a header to a document. You can provide: document_id (required), type (header type; DEFAULT is the standard header), text (optional text content), and section_break_location (optional location for section-specific headers).

NameTypeRequiredDescription
textstringNoOptional text content to add to the header after creation. If provided, the text will be inserted into the header at index 0.
typestring ("HEADER_FOOTER_TYPE_UNSPECIFIED" or "DEFAULT")NoThe type of header to create. Use ‘DEFAULT’ for the standard document header. Only one DEFAULT header can exist per document; if one already exists, the existing header ID will be returned.
documentIdstringYesThe ID of the document to create the header in.
sectionBreakLocationobjectNoThe location of the SectionBreak which begins the section this header should belong to. Only needed for section-specific headers.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_CREATE_NAMED_RANGE

Tool to create a new named range in a Google Document. Use this to assign a name to a specific part of the document for easier reference or programmatic manipulation.

NameTypeRequiredDescription
namestringYesThe name for the new named range. Must be 1-256 characters.
tabIdstringNoOptional. The ID of the document tab containing this range. When omitted, Google Docs applies the request to the first tab.
documentIdstringYesThe ID of the document where the named range will be created.
rangeEndIndexintegerYesThe zero-based end index of the range.
rangeSegmentIdstringNoOptional. The ID of the header, footer, or footnote. Empty for document body.
rangeStartIndexintegerYesThe zero-based start index of the range.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_CREATE_PARAGRAPH_BULLETS

Tool to add bullets to paragraphs within a specified range in a Google Document. Use when you need to format a list or a set of paragraphs as bullet points.

NameTypeRequiredDescription
tabIdstringNoOptional tab ID to apply to createParagraphBullets.range.tabId. When omitted, Google Docs applies the request to the first tab.
document_idstringYesThe ID of the document to update.
createParagraphBulletsobjectYesThe request body for creating paragraph bullets in the document.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_DELETE_CONTENT_RANGE

Tool to delete a range of content from a Google Document. Use when you need to remove a specific portion of text or other structural elements within a document. Note: Every segment (body, header, footer, footnote) in Google Docs ends with a final newline character that cannot be deleted. Ensure the endIndex does not include this trailing newline.

NameTypeRequiredDescription
rangeobjectYesThe range of content to delete. Deleting text across paragraph boundaries may merge paragraphs and affect styles. IMPORTANT: The endIndex must not include the final newline character at the end of a segment (body, header, footer, footnote), as this newline cannot be deleted.
document_idstringYesThe ID of the document from which to delete content. This ID can be found in the URL of the Google Doc.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_DELETE_FOOTER

Tool to delete a footer from a Google Document. Use when you need to remove a footer from a specific section or the default footer.

NameTypeRequiredDescription
tab_idstringNoThe tab that contains the footer to delete. When omitted, the request is applied to the first tab.
footer_idstringYesThe ID of the footer to delete. Footer IDs are system-generated strings created by Google Docs. Obtain a valid footer ID from the GOOGLEDOCS_CREATE_FOOTER response or GOOGLEDOCS_GET_DOCUMENT_BY_ID. Do not use made-up or placeholder values.
document_idstringYesThe ID of the document to delete the footer from.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_DELETE_HEADER

Deletes the header from the specified section or the default header if no section is specified. Use this tool to remove a header from a Google Document.

NameTypeRequiredDescription
tab_idstringNoThe tab containing the header to delete. When omitted, the request is applied to the first tab.
header_idstringYesThe ID of the header to delete. If this header is defined on DocumentStyle, the reference to this header is removed, resulting in no header of that type for the first section of the document. If defined on a SectionStyle, the reference is removed and the header of that type is now continued from the previous section.
document_idstringYesThe ID of the document from which to delete the header.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_DELETE_NAMED_RANGE

Tool to delete a named range from a Google Document. Use when you need to remove a previously defined named range by its ID or name.

NameTypeRequiredDescription
document_idstringYesThe ID of the document.
deleteNamedRangeobjectYesSpecifies the named range to delete.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_DELETE_PARAGRAPH_BULLETS

Tool to remove bullets from paragraphs within a specified range in a Google Document. Use when you need to clear bullet formatting from a section of a document.

NameTypeRequiredDescription
rangeobjectYesThe range of the document from which to delete paragraph bullets. The range is applied to the document body by default. To specify a different segment (e.g. header, footer), include segment_id in the range object.
tab_idstringNoThe ID of the tab the range is in. If omitted, it applies to the first tab or the singular tab in a single-tab document.
document_idstringYesThe ID of the document to update.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_DELETE_TABLE_COLUMN

Tool to delete a column from a table in a Google Document. Use this tool when you need to remove a specific column from an existing table within a document.

NameTypeRequiredDescription
requestsarrayYesA list of requests to be applied to the document.
document_idstringYesThe ID of the document to delete the table column from.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_DELETE_TABLE_ROW

Tool to delete a row from a table in a Google Document. Use when you need to remove a specific row from an existing table.

NameTypeRequiredDescription
documentIdstringYesThe ID of the document.
tableCellLocationobjectYesThe reference table cell location from which the row will be deleted.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_EXPORT_DOCUMENT_AS_PDF

Tool to export a Google Docs file as PDF using the Google Drive API. Use when you need to generate a PDF version of a Google Docs document for download or distribution. Note: Google Drive enforces a 10MB limit on export content.

NameTypeRequiredDescription
file_idstringYesThe ID of the Google Docs file to export as PDF. This is the same as the document ID — typically a 44-character alphanumeric string. Extract it from a Google Docs URL: https://docs.google.com/document/d/<file-id>/edit
filenamestringNoOptional suggested filename for the exported PDF (e.g., ‘report.pdf’). If not provided, a default filename will be generated.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_GET_DOCUMENT_BY_ID

Retrieves an existing Google Document by its ID; will error if the document is not found.

NameTypeRequiredDescription
idstringYesThe unique identifier for a native Google Docs document (typically a 44-character alphanumeric string). Accepts either a document ID or a full Google Docs URL. IMPORTANT: This tool only works with native Google Docs documents, not uploaded Office files stored in Google Drive. Use GOOGLEDOCS_SEARCH_DOCUMENTS to find available documents.
includeTabsContentbooleanNoWhen true, request includeTabsContent=true so the response includes document.tabs with content for all tabs. When false, Google Docs returns the legacy first-tab content fields.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_GET_DOCUMENT_PLAINTEXT

Retrieve a Google Doc by ID and return a best-effort plain-text rendering. Converts document structure into plain text including paragraphs, lists, and tables without requiring clients to traverse complex Docs API JSON.

NameTypeRequiredDescription
tab_idsarrayNoOptional tab IDs to include when include_tabs_content=true. Nested child tabs are searched recursively.
document_idstringYesThe unique identifier for the Google Document. Accepts either a document ID or a full Google Docs URL. Also accepts ‘id’ as an alias.
include_tablesbooleanNoWhether to include table content in the plain text output. Tables are rendered with configurable cell and row delimiters.
include_footersbooleanNoWhether to include footer text in the plain text output. Footers are appended with a clear section separator.
include_headersbooleanNoWhether to include header text in the plain text output. Headers are appended with a clear section separator.
include_footnotesbooleanNoWhether to include footnote text in the plain text output. Footnotes are appended with a clear section separator.
table_row_delimiterstringNoThe delimiter to use between table rows (default: newline character).
include_tabs_contentbooleanNoWhen true, fetch the document using includeTabsContent=true query parameter to render all tabs. When false, only the main body content is rendered.
table_cell_delimiterstringNoThe delimiter to use between table cells (default: tab character).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_INSERT_INLINE_IMAGE

Tool to insert an image from a given URI at a specified location in a Google Document as an inline image. Use when you need to add an image to a document programmatically.

NameTypeRequiredDescription
uristringYesThe URI of the image. Must be a publicly accessible direct image URL (no redirects or viewer links). Images must be less than 50MB, not exceed 25 megapixels, and be in PNG, JPEG, or GIF format (SVG not supported). The URI can be at most 2 kB in length.
locationobjectYesThe location in the document to insert the image. The index field is required to specify the insertion point.
documentIdstringYesThe ID of the document to update.
objectSizeobjectNoThe size of the image. If not specified, the image is rendered at its intrinsic size.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_INSERT_PAGE_BREAK

Tool to insert a page break into a Google Document. Use when you need to start new content on a fresh page, such as at the end of a chapter or section.

NameTypeRequiredDescription
documentIdstringYesThe ID of the document to update.
insertPageBreakstringYesThe details for the insertPageBreak request.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_INSERT_TABLE_ACTION

Tool to insert a table into a Google Document. Use when you need to add a new table at a specific location or at the end of a segment (like document body, header, or footer) in a document.

NameTypeRequiredDescription
rowsintegerYesThe number of rows in the table.
indexintegerNoThe zero-based index where the table will be inserted, in UTF-16 code units. IMPORTANT: The index must be strictly less than the segment’s end index. To insert at the end of a segment, omit this parameter and set ‘insertAtEndOfSegment’ to true instead.
tabIdstringNoThe tab that the location is in. When omitted, the request is applied to the first tab.
columnsintegerYesThe number of columns in the table.
segmentIdstringNoThe ID of the header, footer or footnote the location is in. An empty segment ID signifies the document’s body.
documentIdstringYesThe ID of the document to update.
insertAtEndOfSegmentbooleanNoIf true, inserts the table at the end of the segment. This is the recommended way to append content to the end of a segment. If ‘index’ is provided, this field is ignored.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_INSERT_TABLE_COLUMN

Tool to insert a new column into a table in a Google Document. Use this tool when you need to add a column to an existing table at a specific location.

NameTypeRequiredDescription
requestsarrayYesA list of insert table column requests. Multiple requests can be sent in a single call to insert columns at different locations in the document.
document_idstringYesThe ID of the document to update.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_INSERT_TEXT_ACTION

Tool to insert a string of text at a specified location within a Google Document. Use when you need to add new text content to an existing document. IMPORTANT: Two ways to specify insertion location: 1. Use ‘insertion_index’ to insert at a specific position (index 1 is safe for document start). 2. Use ‘append_to_end=true’ to append text to the end of the document (recommended for appending). CRITICAL CONSTRAINT: When using insertion_index, the index MUST fall within the bounds of an EXISTING paragraph. The index must also be strictly less than the document’s end index.

NameTypeRequiredDescription
tab_idstringNoThe ID of the document tab to insert text into. When omitted, Google Docs applies the request to the first tab.
segment_idstringNoThe ID of the header, footer or footnote to insert text into. Leave empty or omit to insert into the document body.
document_idstringYesThe ID of the document to insert text into.
append_to_endbooleanNoSet to true to append text to the end of the document body. When true, the ‘insertion_index’ parameter is ignored. This is the recommended way to add text at the end of a document.
text_to_insertstringYesThe string of text to insert. Alternatively, you can provide this as ‘text’.
insertion_indexintegerNoThe zero-based UTF-16 code unit index where text will be inserted. Alternatively, ‘index’. CRITICAL CONSTRAINTS: (1) The index MUST fall within the bounds of an EXISTING paragraph. (2) The index MUST be strictly less than the document’s end index. Index 1 is the minimum valid index for inserting at the document start. Either ‘insertion_index’ or ‘append_to_end’ must be provided.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_LIST_SPREADSHEET_CHARTS

Tool to retrieve a list of all charts from a specified Google Sheets spreadsheet. Use when you need to get chart IDs and their specifications for embedding or referencing elsewhere, such as in Google Docs.

NameTypeRequiredDescription
spreadsheet_idstringYesThe ID of the Google Sheets spreadsheet from which to retrieve charts.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_REPLACE_ALL_TEXT

Tool to replace all occurrences of a specified text string with another text string throughout a Google Document. Use when you need to perform a global find and replace operation within a document.

NameTypeRequiredDescription
tab_idsarrayNoOptional. A list of specific tab IDs to perform the replacement on. If not provided, replacement occurs on all tabs.
find_textstringYesThe text to search for in the document. Cannot be empty.
match_casebooleanNoIndicates whether the search should be case sensitive. Defaults to False (case insensitive).
document_idstringYesThe ID of the document to update.
replace_textstringYesThe text that will replace the matched text.
search_by_regexbooleanNoOptional. If True, the find_text is treated as a regular expression. Defaults to False.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_REPLACE_IMAGE

Tool to replace a specific image in a document with a new image from a URI. Use when you need to update an existing image within a Google Doc.

NameTypeRequiredDescription
document_idstringYesThe ID of the document containing the image to replace.
replace_imageobjectYesThe details of the image replacement request.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_SEARCH_DOCUMENTS

Search for Google Documents using various filters including name, content, date ranges, and more.

NameTypeRequiredDescription
querystringNoSearch query to filter documents. Provide either: (1) Plain text to search in document content (e.g., ‘quarterly report’), which will search fullText, or (2) Drive API query syntax with operators like ‘name contains’, ‘fullText contains’, combined with ‘and’, ‘or’, ‘not’. Leave empty to get all documents.
order_bystringNoOrder results by field. Common options: ‘modifiedTime desc’, ‘modifiedTime asc’, ‘name’, ‘createdTime desc’.
page_tokenstringNoToken for continuing a previous search request on the next page. Use the next_page_token from the previous response to retrieve additional results.
max_resultsintegerNoMaximum number of documents to return per page (1-100). Defaults to 10.
starred_onlybooleanNoWhether to return only starred documents. Defaults to False.
created_afterstringNoReturn documents created after this date. Use RFC 3339 format like ‘2024-01-01T00:00:00Z’.
modified_afterstringNoReturn documents modified after this date. Use RFC 3339 format like ‘2024-01-01T00:00:00Z’.
shared_with_mebooleanNoWhether to return only documents shared with the current user. Defaults to False.
include_trashedbooleanNoWhether to include documents in trash. Defaults to False.
response_detailstring ("minimal" or "full")NoLevel of detail in the response. ‘minimal’ returns only essential fields (id, name, modifiedTime, webViewLink). ‘full’ returns comprehensive metadata including permissions, owners, timestamps, and other detailed information.
include_shared_drivesbooleanNoWhether to include documents from shared drives you have access to. Defaults to True.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_UNMERGE_TABLE_CELLS

Tool to unmerge previously merged cells in a table. Use this when you need to revert merged cells in a Google Document table back to their individual cell states.

NameTypeRequiredDescription
documentIdstringYesThe ID of the document to unmerge table cells in.
tableRangeobjectYesThe table range specifying which cells of the table to unmerge.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_UPDATE_DOCUMENT_BATCH

DEPRECATED: Use UpdateExistingDocument instead. Tool to apply one or more updates to a Google Document. Use when you need to perform batch operations on a document, such as inserting text, updating styles, or modifying document structure. Supports 35+ request types including insertText, replaceAllText, updateTextStyle, createParagraphBullets, insertTable, createHeader/Footer, and more. Each request is validated before being applied. If any request is invalid, the entire operation fails and nothing is applied.

NameTypeRequiredDescription
requestsarrayYesA list of updates to apply to the document. Each request dict must contain exactly one request type key (e.g., insertText, replaceAllText, updateTextStyle, createParagraphBullets). See https://developers.google.com/docs/api/reference/rest/v1/documents/request for all types.
document_idstringYesThe ID of the document to update.
write_controlobjectNoProvides control over how write requests are executed.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_UPDATE_DOCUMENT_MARKDOWN

Replaces the entire content of an existing Google Docs document with new Markdown text; requires edit permissions for the document.

NameTypeRequiredDescription
idstringYesThe unique identifier for the Google Docs document to update. Accepts either a document ID or a full Google Docs URL.
tab_idstringNoOptional tab ID to replace with the rendered Markdown. When omitted, the first tab is updated.
markdownstringYesMarkdown content that will replace the document’s entire existing content. Supports standard Markdown features.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_UPDATE_DOCUMENT_SECTION_MARKDOWN

Tool to insert or replace a section of a Google Docs document with Markdown content. Use when you need to update only a section of a document by specifying start and optional end indices. Supports full Markdown formatting.

NameTypeRequiredDescription
tab_idstringNoOptional tab ID to update with the rendered Markdown. When omitted, the first tab is updated.
end_indexintegerNoOptional one-based end index of the content to replace (exclusive); must be greater than or equal to start_index. If end_index is not provided, the content is inserted at the start_index without replacing existing content. Important: Use the exact indices from GOOGLEDOCS_GET_DOCUMENT_BY_ID without modification. The Google Docs API does not allow deleting the last newline character of a document segment.
document_idstringYesThe unique ID of the Google Docs document to update. Alphanumeric string found in the document URL: https://docs.google.com/document/d/<document-id>/edit. Also accepts aliases: ‘id’, ‘doc_id’, ‘documentId’, or ‘docId’.
start_indexintegerNoOne-based UTF-16 code unit index where to insert or start replacement. If not provided, content will be appended to the end of the document. Use 1 to insert at the very beginning.
markdown_textstringYesMarkdown content to insert or replace in the document section. Large content is automatically split into smaller batches to avoid API limits. Also accepts ‘markdown’, ‘content’, ‘text’, ‘body’, ‘markdownText’, or ‘markdown_content’.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_UPDATE_DOCUMENT_STYLE

Tool to update the overall document style, such as page size, margins, and default text direction. Use when you need to modify the global style settings of a Google Document.

NameTypeRequiredDescription
fieldsstringNoA comma-separated list of fields to update (using camelCase API names like ‘marginTop’, ‘pageSize’). Use ’*’ to automatically update only fields that have values set in document_style.
tab_idstringNoThe ID of the tab to update the style for. If not provided, the first tab is used.
document_idstringYesThe ID of the document to update.
document_styleobjectYesThe DocumentStyle object with the new style settings.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_UPDATE_EXISTING_DOCUMENT

Applies programmatic edits, such as text insertion, deletion, or formatting, to a specified Google Doc using the batchUpdate API method.

NameTypeRequiredDescription
edit_docsarrayYes(Required) A list of requests to execute on the document. Each request must be a dict containing exactly ONE of the valid request types. Common request types: replaceAllText, insertText, updateTextStyle, createParagraphBullets, deleteParagraphBullets, createNamedRange, deleteNamedRange, updateParagraphStyle, deleteContentRange, insertInlineImage, insertTable, insertTableRow, insertTableColumn, deleteTableRow, deleteTableColumn, insertPageBreak, deletePositionedObject, updateTableColumnProperties, updateTableCellStyle, updateTableRowStyle, replaceImage, updateDocumentStyle, mergeTableCells, unmergeTableCells, createHeader, createFooter, createFootnote, replaceNamedRangeContent, updateSectionStyle, insertSectionBreak, deleteHeader, deleteFooter, pinTableHeaderRows, addDocumentTab, deleteTab, updateDocumentTabProperties, insertPerson. Internal ‘kix.’ segment IDs are NOT valid. Invalid tab IDs cause errors — get valid IDs from GOOGLEDOCS_GET_DOCUMENT_BY_ID. For multiple inserts at specific positions, process in REVERSE index order (highest first). See https://developers.google.com/docs/api/reference/rest/v1/documents/batchUpdate for full schemas.
document_idstringYes(Required) The unique identifier of the Google Docs document to be updated.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

GOOGLEDOCS_UPDATE_TABLE_ROW_STYLE

Tool to update the style of a table row in a Google Document. Use when you need to modify the appearance of specific rows within a table, such as setting minimum row height or marking rows as headers.

NameTypeRequiredDescription
documentIdstringYesThe ID of the document to update.
updateTableRowStyleobjectYesThe request body for updating the table row style.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.