Google Sheets
Read, write, and manage data in Google Spreadsheets directly from your workflows. Four node types are available for different operations. All require a Google Sheets connection.
| Node | Description |
|---|---|
| Read | Read rows from a spreadsheet |
| Append | Add new rows to the end of a sheet |
| Update | Update existing rows by matching a lookup column |
| Clear | Clear values from a range or an entire sheet |
Spreadsheet ID
All Google Sheets nodes require a Spreadsheet ID. You can provide either:
- The spreadsheet ID directly (e.g.,
1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgVE2upms) - The full Google Sheets URL -- the ID is extracted automatically
The spreadsheet ID is the long string in the URL between /d/ and /edit:
https://docs.google.com/spreadsheets/d/SPREADSHEET_ID_HERE/edit#gid=0Google Sheets Read
Read rows from a Google Spreadsheet and output them as structured data.
Configuration
| Field | Description | Notes |
|---|---|---|
| Google Sheets Connection | The connection to use | Required. Select from your configured Google Sheets connections. |
| Spreadsheet ID | The spreadsheet to read from | Required. Accepts a spreadsheet ID or full URL. Supports templates. |
| Sheet Name | The sheet tab to read | Required. Defaults to Sheet1. |
| Range | A1 notation range to read | Optional. For example, A1:D100. Leave empty to read all data. |
| First Row is Header | Use the first row as column names | Enabled by default. When enabled, the first row values become the keys in each output object. |
| Limit | Maximum number of rows to return | Optional. Must be at least 1. |
Output
When First Row is Header is enabled, each row is output as an object keyed by column headers:
json
{ "Name": "Alice", "Age": 30, "City": "New York" }When disabled, columns are numbered:
json
{ "column_0": "Alice", "column_1": 30, "column_2": "New York" }TIP
The Read node supports streaming -- when connected to downstream nodes in piped mode, rows are streamed one at a time instead of loading the entire sheet into memory.
Google Sheets Append
Append new rows to the end of a Google Spreadsheet.
Configuration
| Field | Description | Notes |
|---|---|---|
| Google Sheets Connection | The connection to use | Required. |
| Spreadsheet ID | The target spreadsheet | Required. Supports templates. |
| Sheet Name | The sheet tab to append to | Required. Defaults to Sheet1. |
| Column Mapping | Map input data fields to spreadsheet column headers | Required. Each entry maps a source field (from upstream data) to a destination column header in the spreadsheet. |
Output
| Field | Description |
|---|---|
appended_rows | Number of rows successfully appended |
Streaming
When receiving piped data from upstream nodes, the Append node batches rows and sends them in groups of 100 per API call for efficiency.
INFO
New rows are always appended after the last row that contains data. Empty rows between data are skipped.
Google Sheets Update
Update existing rows in a Google Spreadsheet by matching on a lookup column.
Configuration
| Field | Description | Notes |
|---|---|---|
| Google Sheets Connection | The connection to use | Required. |
| Spreadsheet ID | The target spreadsheet | Required. Supports templates. |
| Sheet Name | The sheet tab to update | Required. Defaults to Sheet1. |
| Lookup Column | The column header to match rows on | Required. For example, Email or ID. |
| Lookup Value | The value to search for in the lookup column | Required. Supports templates -- use to reference data from upstream nodes. |
| Columns to Update | Map input fields to the columns you want to update | Required. Each entry maps a source field to a destination column header. |
How It Works
- The node reads the entire sheet (using the first row as headers)
- It finds all rows where the Lookup Column matches the Lookup Value
- It updates the matched rows with the values from Columns to Update
- All updates are sent to Google Sheets in a single batch API call
Output
| Field | Description |
|---|---|
updated_rows | Number of rows that were updated |
WARNING
If the lookup column does not exist in the header row, the node will return an error. Make sure the column name matches exactly (case-sensitive).
Google Sheets Clear
Clear values from a range or an entire sheet. This removes the cell values but does not delete the rows themselves.
Configuration
| Field | Description | Notes |
|---|---|---|
| Google Sheets Connection | The connection to use | Required. |
| Spreadsheet ID | The target spreadsheet | Required. Supports templates. |
| Sheet Name | The sheet tab to clear | Required. Defaults to Sheet1. |
| Range | A1 notation range to clear | Optional. For example, A2:D100. Leave empty to clear the entire sheet. |
Output
| Field | Description |
|---|---|
cleared | true if the operation succeeded |
range | The range that was cleared |
TIP
To clear all data rows but keep the header row, set the Range to start from row 2, e.g., A2:Z.