Google Sheets

Google Sheets operations — read, append, and update rows, clear ranges, and manage spreadsheets.

The node authenticates through a Google connection. No API key setup is needed — connect a Google account once and pick it in the node's settings.

When to Use

Use Google Sheets when:

  • A form or webhook should append rows to a spreadsheet
  • A workflow should read rows for lookups or sync them elsewhere
  • You want to give an AI Agent tool access to your spreadsheets

Connection

Google Account — required. Pick a Google connection from the Connections page.

Inputs

HandleTypeDescription
inputanyUpstream data for {{ input.field }} template references in settings.

Output

HandleTypeDescription
resultobjectGoogle Sheets operation result

The result (accessed as {{ google_sheets.* }}) shape:

FieldTypeDescription
successbooleanWhether the operation succeeded
responseobjectRaw Google Sheets API response (rows, values, or spreadsheet metadata depending on operation)

Settings

Each node run executes a single operation. Set Operation, then configure the fields shown for that operation.

Operation

SettingTypeDefaultDescription
operationenumread_rowsSheets action to perform: read_rows, append_rows, update_rows, clear_range, get_spreadsheet, create_spreadsheet, or add_sheet.

Agent Permissions

SettingTypeDefaultDescription
allowed_operationsmulti-selectAll operationsWhich operations are available when this plugin is used as an AI agent tool.

Target

SettingTypeDefaultDescription
spreadsheet_idstring—Google Sheets spreadsheet ID (the long value in the sheet URL). Supports {{ }} bindings.
sheet_namestring—Worksheet tab name (e.g. Sheet1). Supports {{ }} bindings.
rangestringA1:Z1000A1 notation range (e.g. A1:D10). Supports {{ }} bindings.

Data

Shown for append/update/create operations:

SettingTypeDefaultDescription
datacode editor (JSON)[]Row data as a JSON array (append/update) or spreadsheet config (create). Supports {{ }} bindings.

Example

Append form submissions to a sheet:

Webhook Trigger → Google Sheets (append_rows)

Google Sheets settings:

  • Operation: append_rows
  • Spreadsheet ID: 1Bxi...
  • Sheet Name: Responses
  • Data:
    [
      ["{{ webhook.body.name }}", "{{ webhook.body.email }}"]
    ]
    

Common Gotchas

  • Spreadsheet ID, not URL: use the ID between /d/ and /edit in the sheet URL.
  • Range defaults to A1:Z1000: set a tighter range for large sheets to avoid reading empty cells.
  • The connected account must have access: the spreadsheet must be shared with the Google account chosen in the node's settings.

See Also

On this page