OXYGENOXYGEN
← All integrations
Google Sheets logo

Google Sheets

Read and write spreadsheet data.

WorkspaceOAuth58 endpoints

Endpoints

OperationMethod & pathEffectLatencyRateCost
GOOGLESHEETS_ADD_SHEET
Add a GRID sheet with rows and columns to an existing spreadsheet. This action does not create chart-only or DATA_SOURCE sheets. Use properties to configure the GRID sheet's dimensions, tab color, position, visibility, and text direction. Notes: - Sheet names must be unique; use forceUnique=true to auto-append suffix (_2, _3) if name exists - For tab colors, use EITHER rgbColor OR themeColor, not both - Avoid 'index' when creating sheets in parallel (causes errors)
POST /composio/googlesheets/googlesheets_add_sheetexternal_send——managed
GOOGLESHEETS_AGGREGATE_COLUMN_DATA
Searches for rows where a specific column matches a value and performs mathematical operations on data from another column.
POST /composio/googlesheets/googlesheets_aggregate_column_dataexternal_send——managed
GOOGLESHEETS_APPEND_DIMENSION
Tool to append new rows or columns to a sheet, increasing its size. Use when you need to add empty rows or columns to an existing sheet.
POST /composio/googlesheets/googlesheets_append_dimensionexternal_send——managed
GOOGLESHEETS_AUTO_RESIZE_DIMENSIONS
Auto-fit column widths or row heights for a dimension range using batchUpdate.autoResizeDimensions. Use when you need to automatically adjust row heights or column widths to fit content after writing data.
POST /composio/googlesheets/googlesheets_auto_resize_dimensionsexternal_send——managed
GOOGLESHEETS_BATCH_CLEAR_VALUES_BY_DATA_FILTER
Clears one or more ranges of values from a spreadsheet using data filters. The caller must specify the spreadsheet ID and one or more DataFilters. Ranges matching any of the specified data filters will be cleared. Only values are cleared -- all other properties of the cell (such as formatting, data validation, etc..) are kept.
POST /composio/googlesheets/googlesheets_batch_clear_values_by_data_filterexternal_send——managed
GOOGLESHEETS_BATCH_GET
Retrieves data from specified cell ranges in a Google Spreadsheet.
POST /composio/googlesheets/googlesheets_batch_getexternal_send——managed
GOOGLESHEETS_BATCH_UPDATE
DEPRECATED: Use GOOGLESHEETS_VALUES_UPDATE instead. Write values to ONE range in a Google Sheet, or append as new rows if no start cell is given. IMPORTANT - This tool does NOT accept the Google Sheets API's native batch format: - WRONG: {"data": [{"range": "...", "values": [[...]]}], ...} - CORRECT: {"sheet_name": "...", "values": [[...]], "first_cell_location": "...", ...} To update MULTIPLE ranges, make SEPARATE CALLS to this tool for each range. Features: - Auto-expands grid for large datasets (prevents range errors) - Set first_cell_location to write at a specific position (e.g., "A1", "B5") - Omit first_cell_location to append values as new rows at the end Requirements: Target sheet must exist and spreadsheet must contain at least one worksheet.
POST /composio/googlesheets/googlesheets_batch_updateexternal_send——managed
GOOGLESHEETS_BATCH_UPDATE_VALUES_BY_DATA_FILTER
Tool to update values in ranges matching data filters. Use when you need to update specific data in a Google Sheet based on criteria rather than fixed cell ranges.
POST /composio/googlesheets/googlesheets_batch_update_values_by_data_filterexternal_send——managed
GOOGLESHEETS_CLEAR_BASIC_FILTER
Tool to clear the basic filter from a sheet. Use when you need to remove an existing basic filter from a specific sheet within a Google Spreadsheet.
POST /composio/googlesheets/googlesheets_clear_basic_filterexternal_send——managed
GOOGLESHEETS_CLEAR_VALUES
Clears cell content (preserving formatting and notes) from a specified A1 notation range in a Google Spreadsheet; the range must correspond to an existing sheet and cells.
POST /composio/googlesheets/googlesheets_clear_valuesexternal_send——managed
GOOGLESHEETS_CREATE_CHART
Create a chart in a Google Sheets spreadsheet using the specified data range and chart type. Conditional requirements: - Provide either a simple chart via chart_type + data_range (basicChart), OR supply a full chart_spec supporting all chart types. Exactly one approach should be used. - When using chart_spec, set exactly one of the union fields (basicChart | pieChart | bubbleChart | candlestickChart | histogramChart | waterfallChart | treemapChart | orgChart | scorecardChart).
POST /composio/googlesheets/googlesheets_create_chartexternal_send——managed
GOOGLESHEETS_CREATE_GOOGLE_SHEET1
Creates a new Google Spreadsheet in Google Drive. If a title is provided, the spreadsheet will be created with that name. If no title is provided, Google will create a spreadsheet with a default name like 'Untitled spreadsheet'. Optionally create the spreadsheet in a specific folder by providing either: - folder_id: The Google Drive folder ID (preferred, unambiguous) - folder_name: The folder name (searches for exact match; if multiple folders match, returns choices) If neither folder_id nor folder_name is provided, the spreadsheet is created in the root Drive folder.
POST /composio/googlesheets/googlesheets_create_google_sheet1external_send——managed
GOOGLESHEETS_CREATE_SPREADSHEET_COLUMN
Creates a new column in a Google Spreadsheet. Specify the target sheet using sheet_id (numeric) or sheet_name (text). If neither is provided, defaults to the first sheet (sheet_id=0).
POST /composio/googlesheets/googlesheets_create_spreadsheet_columnexternal_send——managed
GOOGLESHEETS_CREATE_SPREADSHEET_ROW
Inserts a new, empty row into a specified sheet of a Google Spreadsheet at a given index, optionally inheriting formatting from the row above.
POST /composio/googlesheets/googlesheets_create_spreadsheet_rowexternal_send——managed
GOOGLESHEETS_DELETE_CHART
Delete an existing chart from a Google Sheets spreadsheet. Use this action when you need to remove a chart that is no longer needed or needs to be replaced. This action is irreversible — once a chart is deleted, it cannot be recovered. The chart data source (the cells containing the data) remains unchanged; only the chart visualization is removed.
POST /composio/googlesheets/googlesheets_delete_chartexternal_send——managed
GOOGLESHEETS_DELETE_DIMENSION
Tool to delete specified rows or columns from a sheet in a Google Spreadsheet. Use when you need to remove a range of rows or columns.
POST /composio/googlesheets/googlesheets_delete_dimensionexternal_send——managed
GOOGLESHEETS_DELETE_SHEET
Tool to delete a sheet (worksheet) from a spreadsheet. Use when you need to remove a specific sheet from a Google Sheet document.
POST /composio/googlesheets/googlesheets_delete_sheetexternal_send——managed
GOOGLESHEETS_EXECUTE_SQL
DEPRECATED: Use direct Google Sheets actions instead: - GOOGLESHEETS_VALUES_GET / GOOGLESHEETS_BATCH_GET for reads - GOOGLESHEETS_VALUES_UPDATE / GOOGLESHEETS_UPDATE_VALUES_BATCH / GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND for writes Execute SQL queries against Google Sheets tables. Supports SELECT, INSERT, UPDATE, DELETE operations and WITH clauses (CTEs) with familiar SQL syntax. Tables are automatically detected and mapped from the spreadsheet structure.
POST /composio/googlesheets/googlesheets_execute_sqlexternal_send——managed
GOOGLESHEETS_EXPORT_DRIVE_FILE
Export an entire native spreadsheet as XLSX, ODS, PDF, ZIP, CSV, or TSV; use Export Sheet as PDF for print layout and range controls.
POST /composio/googlesheets/googlesheets_export_drive_fileexternal_send——managed
GOOGLESHEETS_EXPORT_SHEET_AS_PDF
Render one sheet tab or rectangular range as PDF with orientation, gridline, margin, and fit-to-width controls.
POST /composio/googlesheets/googlesheets_export_sheet_as_pdfexternal_send——managed
GOOGLESHEETS_FIND_REPLACE
Tool to find and replace text in a Google Spreadsheet. Use when you need to fix formula errors, update values, or perform bulk text replacements across cells. Common use cases: - Fix #ERROR! cells by replacing with empty string or correct formula - Update old values with new ones across multiple cells - Fix formula references or patterns - Clean up data formatting issues
GET /composio/googlesheets/googlesheets_find_replacenone——managed
GOOGLESHEETS_FIND_WORKSHEET_BY_TITLE
DEPRECATED: Use GetSpreadsheetInfo instead. Finds a worksheet by its exact, case-sensitive title within a Google Spreadsheet; returns a boolean indicating if found and the matched worksheet's metadata when found, or None when not found.
GET /composio/googlesheets/googlesheets_find_worksheet_by_titlenone——managed
GOOGLESHEETS_FORMAT_CELL
Applies text and background cell formatting to a specified range in a Google Sheets worksheet.
POST /composio/googlesheets/googlesheets_format_cellexternal_send——managed
GOOGLESHEETS_GET_BATCH_VALUES
DEPRECATED: Use GOOGLESHEETS_BATCH_GET instead. Tool to return one or more ranges of values from a spreadsheet. Use when you need to retrieve data from multiple ranges in a single request.
GET /composio/googlesheets/googlesheets_get_batch_valuesnone——managed
GOOGLESHEETS_GET_CONDITIONAL_FORMAT_RULES
List conditional formatting rules for each sheet (or a selected sheet) in a normalized, easy-to-edit form. Use when you need to view, audit, or prepare to modify conditional format rules.
GET /composio/googlesheets/googlesheets_get_conditional_format_rulesnone——managed
GOOGLESHEETS_GET_DATA_VALIDATION_RULES
Tool to extract data validation rules from a Google Sheets spreadsheet. Use when you need to understand dropdown lists, allowed values, custom formulas, or other validation constraints for cells.
GET /composio/googlesheets/googlesheets_get_data_validation_rulesnone——managed
GOOGLESHEETS_GET_DRIVE_FILE_METADATA
Get JSON metadata for one Drive file without downloading its content.
GET /composio/googlesheets/googlesheets_get_drive_file_metadatanone——managed
GOOGLESHEETS_GET_SHEET_NAMES
Lists all worksheet names from a specified Google Spreadsheet (which must exist), useful for discovering sheets before further operations.
GET /composio/googlesheets/googlesheets_get_sheet_namesnone——managed
GOOGLESHEETS_GET_SPREADSHEET_BY_DATA_FILTER
Returns the spreadsheet at the given ID, filtered by the specified data filters. Use this tool when you need to retrieve specific subsets of data from a Google Sheet based on criteria like A1 notation, developer metadata, or grid ranges. Important: This action is designed for filtered data retrieval. While it accepts empty filters and returns full metadata in that case, GOOGLESHEETS_GET_SPREADSHEET_INFO is the recommended action for unfiltered spreadsheet retrieval.
GET /composio/googlesheets/googlesheets_get_spreadsheet_by_data_filternone——managed
GOOGLESHEETS_GET_SPREADSHEET_INFO
Retrieves metadata for a Google Spreadsheet using its ID. By default, returns essential information (ID, title, sheet properties) to avoid payload size issues. Use the fields parameter for comprehensive metadata or specific fields.
GET /composio/googlesheets/googlesheets_get_spreadsheet_infonone——managed
GOOGLESHEETS_GET_TABLE_SCHEMA
DEPRECATED: Use GOOGLESHEETS_GET_SHEET_NAMES and GOOGLESHEETS_GET_SPREADSHEET_INFO for sheet structure metadata, and GOOGLESHEETS_VALUES_GET for direct range inspection. This action is used to get the schema of a table in a Google Spreadsheet, call this action to get the schema of a table in a spreadsheet BEFORE YOU QUERY THE TABLE. Analyze table structure and infer column names, types, and constraints. Uses statistical analysis of sample data to determine the most likely data type for each column. Call this action after calling the LIST_TABLES action to get the schema of a table in a spreadsheet.
GET /composio/googlesheets/googlesheets_get_table_schemanone——managed
GOOGLESHEETS_INSERT_DIMENSION
Tool to insert new rows or columns into a sheet at a specified location. Use when you need to add empty rows or columns within an existing Google Sheet.
POST /composio/googlesheets/googlesheets_insert_dimensionexternal_send——managed
GOOGLESHEETS_LIST_CHARTS
Lists all charts in a Google Sheets spreadsheet across all sheets, returning chart_id, sheet metadata, chart type, title, and position. Use this action when you need to discover what charts exist in a spreadsheet, retrieve chart IDs for update or delete operations, or inspect chart configurations. The default field mask in GOOGLESHEETS_GET_SPREADSHEET_INFO omits chart data, making this dedicated action necessary for chart discovery.
GET /composio/googlesheets/googlesheets_list_chartsnone——managed
GOOGLESHEETS_LIST_DRIVE_CHANGES
Start a Drive change monitor or list one page after an existing token.
GET /composio/googlesheets/googlesheets_list_drive_changesnone——managed
GOOGLESHEETS_LIST_TABLES
DEPRECATED: Use GOOGLESHEETS_GET_SHEET_NAMES for tab discovery and GOOGLESHEETS_GET_SPREADSHEET_INFO for full sheet metadata. This action is used to list all tables in a Google Spreadsheet, call this action to get the list of tables in a spreadsheet. Discover all tables in a Google Spreadsheet by analyzing sheet structure and detecting data patterns. Uses heuristic analysis to find header rows, data boundaries, and table structures.
GET /composio/googlesheets/googlesheets_list_tablesnone——managed
GOOGLESHEETS_LOOKUP_SPREADSHEET_ROW
Finds the first row in a Google Spreadsheet where a cell's entire content exactly matches the query string, searching within a specified A1 notation range or the first sheet by default.
GET /composio/googlesheets/googlesheets_lookup_spreadsheet_rownone——managed
GOOGLESHEETS_MOVE_CHART
Move or resize an existing chart on a Google Sheets spreadsheet. Use this action when you need to reposition a chart to a different location on the same or different sheet, move it to a brand-new sheet, or change its size. This action wraps the updateEmbeddedObjectPosition batchUpdate request type and supports three positioning modes: moving to a new sheet, moving to an existing sheet, or repositioning via pixel-perfect overlay coordinates.
POST /composio/googlesheets/googlesheets_move_chartexternal_send——managed
GOOGLESHEETS_MOVE_SPREADSHEET_TO_FOLDER
Move an existing Google Spreadsheet to a different Google Drive folder.
POST /composio/googlesheets/googlesheets_move_spreadsheet_to_folderexternal_send——managed
GOOGLESHEETS_MUTATE_CONDITIONAL_FORMAT_RULES
Add, update, delete, or reorder conditional format rules on a Google Sheet. Use when you need to create, modify, or remove conditional formatting without manually building batchUpdate requests. Supports four operations: ADD (create new rule), UPDATE (replace existing rule), DELETE (remove rule), MOVE (reorder rules by changing index).
POST /composio/googlesheets/googlesheets_mutate_conditional_format_rulesexternal_send——managed
GOOGLESHEETS_QUERY_TABLE
DEPRECATED: Use GOOGLESHEETS_VALUES_GET / GOOGLESHEETS_BATCH_GET for table reads and GOOGLESHEETS_LOOKUP_SPREADSHEET_ROW for row lookup/filter workflows. Execute SQL-like SELECT queries against Google Spreadsheet tables. Table names correspond to sheet/tab names visible at the bottom of the spreadsheet. Use GOOGLESHEETS_LIST_TABLES first to discover available table names if unknown. Supports WHERE conditions, ORDER BY, LIMIT clauses.
POST /composio/googlesheets/googlesheets_query_tableexternal_send——managed
GOOGLESHEETS_SEARCH_DEVELOPER_METADATA
Tool to search for developer metadata in a spreadsheet. Use when you need to find specific metadata entries based on filters.
GET /composio/googlesheets/googlesheets_search_developer_metadatanone——managed
GOOGLESHEETS_SEARCH_SPREADSHEETS
Search for Google Spreadsheets using various filters including name, content, date ranges, and more.
GET /composio/googlesheets/googlesheets_search_spreadsheetsnone——managed
GOOGLESHEETS_SET_BASIC_FILTER
Tool to set a basic filter on a sheet in a Google Spreadsheet. Use when you need to filter or sort data within a specific range on a sheet.
POST /composio/googlesheets/googlesheets_set_basic_filterexternal_send——managed
GOOGLESHEETS_SET_DATA_VALIDATION_RULE
Tool to set or clear data validation rules (including dropdowns) on a range in Google Sheets. Use when you need to apply dropdown lists, range-based dropdowns, or custom formula validation to cells.
POST /composio/googlesheets/googlesheets_set_data_validation_ruleexternal_send——managed
GOOGLESHEETS_SHEET_FROM_JSON
DEPRECATED: Use GOOGLESHEETS_CREATE_GOOGLE_SHEET1 + GOOGLESHEETS_UPDATE_VALUES_BATCH (or GOOGLESHEETS_VALUES_UPDATE / GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND) instead. Creates a new Google Spreadsheet and populates its first worksheet from `sheet_json`. When data is provided, the first item's keys establish the headers. An empty list creates an empty worksheet.
POST /composio/googlesheets/googlesheets_sheet_from_jsonexternal_send——managed
GOOGLESHEETS_SORT_RANGE
Sorts data within a specified range in a Google Sheet based on one or more sort criteria. Use this action when you need to reorder rows in a range by column values, with support for multi-level (cascading) sorts.
POST /composio/googlesheets/googlesheets_sort_rangeexternal_send——managed
GOOGLESHEETS_SPREADSHEETS_SHEETS_COPY_TO
Tool to copy a single sheet from a spreadsheet to another spreadsheet. Use when you need to duplicate a sheet into a different spreadsheet.
POST /composio/googlesheets/googlesheets_spreadsheets_sheets_copy_toexternal_send——managed
GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND
Tool to append values to a spreadsheet. Use when you need to add new data to the end of an existing table in a Google Sheet.
POST /composio/googlesheets/googlesheets_spreadsheets_values_appendexternal_send——managed
GOOGLESHEETS_SPREADSHEETS_VALUES_BATCH_CLEAR
Tool to clear one or more ranges of values from a spreadsheet. Use when you need to remove data from specific cells or ranges while keeping formatting and other properties intact.
POST /composio/googlesheets/googlesheets_spreadsheets_values_batch_clearexternal_send——managed
GOOGLESHEETS_SPREADSHEETS_VALUES_BATCH_GET_BY_DATA_FILTER
Tool to return one or more ranges of values from a spreadsheet that match the specified data filters. Use when you need to retrieve specific data sets based on filtering criteria rather than entire sheets or fixed ranges.
POST /composio/googlesheets/googlesheets_spreadsheets_values_batch_get_by_data_filterexternal_send——managed
GOOGLESHEETS_UPDATE_CHART
Update the specification of an existing chart in a Google Sheets spreadsheet. Use this action when you need to modify an existing chart's properties such as its title, chart type, data ranges, colors, axes, or other visual settings. This action updates the chart's specification but does not change its position or size on the sheet.
POST /composio/googlesheets/googlesheets_update_chartexternal_send——managed
GOOGLESHEETS_UPDATE_DIMENSION_PROPERTIES
Tool to hide/unhide rows or columns and set row heights or column widths. Use when you need to change visibility or pixel sizing of dimensions in a Google Sheet.
POST /composio/googlesheets/googlesheets_update_dimension_propertiesexternal_send——managed
GOOGLESHEETS_UPDATE_SHEET_PROPERTIES
Tool to update properties of a sheet (worksheet) within a Google Spreadsheet, such as its title, index, visibility, tab color, or grid properties. Use this when you need to modify the metadata or appearance of a specific sheet.
POST /composio/googlesheets/googlesheets_update_sheet_propertiesexternal_send——managed
GOOGLESHEETS_UPDATE_SPREADSHEET_PROPERTIES
Tool to update SPREADSHEET-LEVEL properties such as the spreadsheet's title, locale, time zone, or auto-recalculation settings. Use when you need to modify the overall configuration of a Google Spreadsheet. NOTE: To update individual SHEET properties (like renaming a specific sheet/tab), use GOOGLESHEETS_UPDATE_SHEET_PROPERTIES instead.
POST /composio/googlesheets/googlesheets_update_spreadsheet_propertiesexternal_send——managed
GOOGLESHEETS_UPDATE_VALUES_BATCH
Tool to set values in one or more ranges of a spreadsheet. Use when you need to update multiple ranges in a single operation for better performance.
POST /composio/googlesheets/googlesheets_update_values_batchexternal_send——managed
GOOGLESHEETS_UPSERT_ROWS
Upsert rows - update existing rows by key, append new ones. Automatically handles column mapping and partial updates. Use for: CRM syncs (match Lead ID), transaction imports (match Transaction ID), inventory updates (match SKU), calendar syncs (match Event ID). Features: - Auto-adds missing columns to sheet - Partial column updates (only update Phone + Status, preserve other columns) - Column order doesn't matter (auto-maps by header name) - Prevents duplicates by matching key column Example inputs: - Contact update: keyColumn='Email', headers=['Email','Phone','Status'], data=[['[email protected]','555-0101','Active']] - Inventory sync: keyColumn='SKU', headers=['SKU','Stock','Price'], data=[['WIDGET-001',50,9.99],['GADGET-002',30,19.99]] - CRM lead update: keyColumn='Lead ID', headers=['Lead ID','Score','Status'], data=[['L-12345',85,'Hot']] - Partial update: keyColumn='Email', headers=['Email','Phone'] (only updates Phone, preserves Name/Address/etc)
POST /composio/googlesheets/googlesheets_upsert_rowsexternal_send——managed
GOOGLESHEETS_VALUES_GET
Returns a range of values from a spreadsheet. Use when you need to read data from specific cells or ranges in a Google Sheet.
POST /composio/googlesheets/googlesheets_values_getexternal_send——managed
GOOGLESHEETS_VALUES_UPDATE
Tool to set values in a range of a Google Spreadsheet. Use when you need to update or overwrite existing cell values in a specific range.
POST /composio/googlesheets/googlesheets_values_updateexternal_send——managed