Overview
Add Google Drive to any ModuleX agent or workflow. Google Workspace integration via the v3 (Drive) / v1 (Docs, Slides) / v4 (Sheets) REST APIs. Pure HTTP, no SDK dep. 16 actions.
Categories : Cloud Infrastructure · File Storage · Document Management · Productivity · Auth : OAuth2, Service Account / Access Token · Actions : 16
Authentication
OAuth2 Authentication Connect using Google OAuth2 (recommended). Provides secure access to Drive, Docs, Sheets, and Slides. Required Credentials Field Description Required Format Client ID Google OAuth2 Client ID from Cloud Console Yes 123456789-xxxxxxxxxxxxxxxx.apps.googleusercontent.comClient Secret Google OAuth2 Client Secret Yes -
OAuth Configuration
Authorization URL : https://accounts.google.com/o/oauth2/v2/auth
Token URL : https://oauth2.googleapis.com/token
Scopes : https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/documents, https://www.googleapis.com/auth/spreadsheets, https://www.googleapis.com/auth/presentations
Service Account / Access Token Use a pre-generated access token or service account credentials Required Credentials Field Description Required Format Access Token A valid Google OAuth2 access token Yes -
Available Actions
create_text_file — Create a plain text (.txt) or markdown (.md) file via multipart upload
Parameters File name (must end with .txt or .md)
Parent folder (defaults to root)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Id"
},
"name" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Name"
},
"mime_type" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Mime Type"
},
"web_view_link" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Web View Link"
}
},
"required" : [
"success"
],
"title" : "CreateTextFileOutput" ,
"type" : "object"
}
update_text_file — Replace a text file's content via media upload; optionally rename in a follow-up call
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Id"
},
"name" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Name"
},
"mime_type" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Mime Type"
},
"modified_time" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Modified Time"
},
"web_view_link" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Web View Link"
}
},
"required" : [
"success"
],
"title" : "UpdateTextFileOutput" ,
"type" : "object"
}
create_folder — Create a folder
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Id"
},
"name" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Name"
},
"web_view_link" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Web View Link"
}
},
"required" : [
"success"
],
"title" : "CreateFolderOutput" ,
"type" : "object"
}
create_google_doc — Create a Google Doc (Drive create + optional Docs batchUpdate to insert content)
Parameters Initial content (Default: “)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Id"
},
"name" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Name"
},
"web_view_link" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Web View Link"
}
},
"required" : [
"success"
],
"title" : "CreateGoogleDocOutput" ,
"type" : "object"
}
read_google_doc — Read full text content from a Google Doc
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Id"
},
"title" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Title"
},
"content" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Content"
},
"revision_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Revision Id"
}
},
"required" : [
"success"
],
"title" : "ReadGoogleDocOutput" ,
"type" : "object"
}
update_google_doc — Replace all content (read end-index, deleteContentRange, insertText)
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Id"
},
"title" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Title"
},
"message" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Message"
}
},
"required" : [
"success"
],
"title" : "UpdateGoogleDocOutput" ,
"type" : "object"
}
append_to_google_doc — Append content at the end of a doc
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Id"
},
"title" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Title"
},
"message" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Message"
}
},
"required" : [
"success"
],
"title" : "AppendToGoogleDocOutput" ,
"type" : "object"
}
create_google_sheet — Create a Sheet (Sheets API create + optional Drive PATCH to move + optional Sheets API values write)
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Id"
},
"name" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Name"
},
"web_view_link" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Web View Link"
}
},
"required" : [
"success"
],
"title" : "CreateGoogleSheetOutput" ,
"type" : "object"
}
read_google_sheet — Read values from a range (resolves localized sheet name via /spreadsheets?fields=sheets.properties.title)
Parameters A1 notation (e.g. ‘Sheet1!A1:D10’) (Default: Sheet1)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"spreadsheet_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Spreadsheet Id"
},
"range" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Range"
},
"values" : {
"items" : {
"items" : {},
"type" : "array"
},
"title" : "Values" ,
"type" : "array"
},
"row_count" : {
"default" : 0 ,
"title" : "Row Count" ,
"type" : "integer"
}
},
"required" : [
"success"
],
"title" : "ReadGoogleSheetOutput" ,
"type" : "object"
}
update_google_sheet — PUT values into an A1 range
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"spreadsheet_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Spreadsheet Id"
},
"updated_range" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Updated Range"
},
"updated_rows" : {
"anyOf" : [
{
"type" : "integer"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Updated Rows"
},
"updated_columns" : {
"anyOf" : [
{
"type" : "integer"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Updated Columns"
},
"updated_cells" : {
"anyOf" : [
{
"type" : "integer"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Updated Cells"
}
},
"required" : [
"success"
],
"title" : "UpdateGoogleSheetOutput" ,
"type" : "object"
}
format_sheet_cells — Format cells (background color + horizontal/vertical alignment) — converts A1 to GridRange
format_sheet_text — Format text in cells (bold/italic/font_size/color)
Parameters Text RGB color {red, green, blue}
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"spreadsheet_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Spreadsheet Id"
},
"range" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Range"
},
"message" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Message"
}
},
"required" : [
"success"
],
"title" : "FormatSheetTextOutput" ,
"type" : "object"
}
create_google_slides — Create a blank Slides presentation (+ optional move)
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Id"
},
"name" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Name"
},
"web_view_link" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Web View Link"
}
},
"required" : [
"success"
],
"title" : "CreateGoogleSlidesOutput" ,
"type" : "object"
}
read_google_slides — Read slide metadata + extract text + placeholder IDs from each slide
add_slide — Add a slide with the given predefined layout
Parameters BLANK / TITLE / TITLE_AND_BODY / etc. (Default: BLANK)
Insert position (0-based)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"presentation_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Presentation Id"
},
"slide_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Slide Id"
},
"layout" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Layout"
},
"message" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Message"
}
},
"required" : [
"success"
],
"title" : "AddSlideOutput" ,
"type" : "object"
}
update_slide_content — Replace text in a slide placeholder (deleteText ALL + insertText 0)
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"presentation_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Presentation Id"
},
"slide_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Slide Id"
},
"placeholder_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Placeholder Id"
},
"message" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Message"
}
},
"required" : [
"success"
],
"title" : "UpdateSlideContentOutput" ,
"type" : "object"
}
Links