Google Sheets
Description: Enable agents to interact with GoogleSheets
Author: Arcade
Auth: User authorization
The Arcade GoogleSheets Server provides a pre-built set of tools for working with Google Sheets. These tools make it easy to build and AI apps that can:
- Create new spreadsheets and seed initial data.
- Search Google Drive for spreadsheets and retrieve metadata (titles, IDs, URLs; excludes trash).
- Read specific ranges from sheets.
- Write to single cells or update ranges with flexible data formats.
- Add notes to cells.
- Get detailed spreadsheet and sheet metadata (names, IDs, positions, row/column counts; metadata only).
Available Tools
Tool Name | Description |
---|---|
GoogleSheets.CreateSpreadsheet | Create a new spreadsheet with the provided title and data in its first sheet |
GoogleSheets.WriteToCell | Write a value to a single cell in a spreadsheet. |
GoogleSheets.UpdateCells | Write values to a Google Sheet using a flexible data format. |
GoogleSheets.AddNoteToCell | Add a note to a specific cell in a spreadsheet. A note is a small |
GoogleSheets.SearchSpreadsheets | Searches for spreadsheets in the user's Google Drive based on the titles and content and |
GoogleSheets.WhoAmI | Get comprehensive user profile and Google Sheets environment information. |
GoogleSheets.GenerateGoogleFilePickerUrl | Generate a Google File Picker URL for user-driven file selection and authorization. |
GoogleSheets.GetSpreadsheet | Gets the specified range of cells from a single sheet in the spreadsheet. |
GoogleSheets.GetSpreadsheetMetadata | Gets the metadata for a spreadsheet including the metadata for the sheets in the spreadsheet. |
If you need to perform an action that’s not listed here, you can get in touch with us to request a new , or create your own tools.
GoogleSheets.CreateSpreadsheet
Create a new spreadsheet with the provided title and data in its first sheet
Parameters
- title (
string
, optional) The title of the new spreadsheet - data (
string
, optional) The data to write to the spreadsheet. A JSON string (property names enclosed in double quotes) representing a dictionary that maps row numbers to dictionaries that map column letters to cell values. For example, data[23][‘C’] would be the value of the cell in row 23, column C. Type hint: dict[int, dict[str, Union[int, float, str, bool]]]
GoogleSheets.WriteToCell
Write a value to a single cell in a spreadsheet.
Parameters
- spreadsheet_id (
string
, required) The id of the spreadsheet to write to - column (
string
, required) The column string to write to. For example, ‘A’, ‘F’, or ‘AZ’ - row (
integer
, required) The row number to write to - value (
string
, required) The value to write to the cell - sheet_name (
string
, optional) The name of the sheet to write to. Defaults to ‘Sheet1’
GoogleSheets.UpdateCells
Write values to a Google Sheet using a flexible data format.
Parameters
- spreadsheet_id (
string
, required) The id of the spreadsheet to write to - data (
string
, required) The data to write. A JSON string (property names enclosed in double quotes) representing a dictionary that maps row numbers to dictionaries that map column letters to cell values. For example, data[23][‘C’] is the value for cell C23. This is the same format accepted by create_spreadsheet. Type hint: dict[int, dict[str, int | float | str | bool]] - sheet_position (
integer
, optional) The position/tab of the sheet in the spreadsheet to write to. A value of 1 represents the first (leftmost/Sheet1) sheet. Defaults to 1. - sheet_id_or_name (
string
, optional) The id or name of the sheet to write to. If provided, takes precedence over sheet_position.
GoogleSheets.AddNoteToCell
Add a note to a specific cell in a spreadsheet. A note is a small
Parameters
- spreadsheet_id (
string
, required) The id of the spreadsheet to add a comment to - column (
string
, required) The column string to add a note to. For example, ‘A’, ‘F’, or ‘AZ’ - row (
integer
, required) The row number to add a note to - note_text (
string
, required) The text for the note to add - sheet_position (
integer
, optional) The position/tab of the sheet in the spreadsheet to write to. A value of 1 represents the first (leftmost/Sheet1) sheet. Defaults to 1. - sheet_id_or_name (
string
, optional) The id or name of the sheet to write to. If provided, takes precedence over sheet_position.
GoogleSheets.SearchSpreadsheets
Searches for spreadsheets in the ’s Google Drive based on the titles and content and
Parameters
- spreadsheet_contains (
array[string]
, optional) Keywords or phrases that must be in the spreadsheet title. Provide a list of keywords or phrases if needed. - spreadsheet_not_contains (
array[string]
, optional) Keywords or phrases that must NOT be in the spreadsheet title. Provide a list of keywords or phrases if needed. - search_only_in_shared_drive_id (
string
, optional) The ID of the shared drive to restrict the search to. If provided, the search will only return spreadsheets from this drive. Defaults to None, which searches across all drives. - include_shared_drives (
boolean
, optional) Whether to include spreadsheets from shared drives. Defaults to False (searches only in the ’s ‘My Drive’). - include_organization_domain_spreadsheets (
boolean
, optional) Whether to include spreadsheets from the organization’s domain. This is applicable to admin users who have permissions to view organization-wide spreadsheets in a Google Workspace . Defaults to False. - order_by (
Enum
OrderBy, optional) Sort order. Defaults to listing the most recently modified spreadsheets first - limit (
integer
, optional) The maximum number of spreadsheets to list. Defaults to 10. Max is 50 - pagination_token (
string
, optional) The pagination token to continue a previous request
GoogleSheets.WhoAmI
Get comprehensive profile and Google Sheets environment information.
Parameters
This does not take any parameters.
GoogleSheets.GenerateGoogleFilePickerUrl
Generate a Google File Picker URL for -driven file selection and authorization.
Parameters
This does not take any parameters.
GoogleSheets.GetSpreadsheet
Gets the specified range of cells from a single sheet in the spreadsheet.
Parameters
- spreadsheet_id (
string
, required) The id of the spreadsheet to get - sheet_position (
integer
, optional) The position/tab of the sheet in the spreadsheet to get. A value of 1 represents the first (leftmost/Sheet1) sheet . Defaults to 1. - sheet_id_or_name (
string
, optional) The id or name of the sheet to get. Defaults to None, which means sheet_position will be used instead. - start_row (
integer
, optional) Starting row number (1-indexed, defaults to 1) - start_col (
string
, optional) Starting column letter(s) or 1-based column number (defaults to ‘A’) - max_rows (
integer
, optional) Maximum number of rows to fetch for each sheet in the spreadsheet. Must be between 1 and 1000. Defaults to 1000. - max_cols (
integer
, optional) Maximum number of columns to fetch for each sheet in the spreadsheet. Must be between 1 and 100. Defaults to 100.
GoogleSheets.GetSpreadsheetMetadata
Gets the metadata for a spreadsheet including the metadata for the sheets in the spreadsheet.
Parameters
- spreadsheet_id (
string
, required) The id of the spreadsheet to get metadata for
Auth
The Arcade GoogleSheets Sever uses the Google auth provider to connect to users’ GoogleSheets . Please refer to the Google auth provider documentation to learn how to configure auth.