Google Sheets
Read, write, update, and manage Google Sheets spreadsheets and sheet tabs — authenticated via Google OAuth2 credential.
What this node does: The Google Sheets node covers two resources: spreadsheet (create and delete entire files) and sheet (manage individual sheet tabs — append rows, update rows, get data, clear ranges, and manage sheet structure). All access is authenticated via a stored Google OAuth2
CredentialId (Guid).
Resources & Operations (10 total)
spreadsheet 2 Operations
| Operation | Description |
|---|---|
spreadsheet/create | Create a new Google Sheets file with a title, optional initial sheet tab names, locale, and recalculation interval. Returns the new spreadsheetId. |
spreadsheet/delete | Permanently delete a spreadsheet file from Google Drive. Irreversible — bypasses Trash. |
sheet 8 Operations
| Operation | Description |
|---|---|
sheet/append | Append a new row to a sheet. Supports AutoMap (reads column headers automatically), DefineBelow (manual column-to-expression mapping), or Nothing (raw data pass-through). Uses Google's append API or direct write depending on the UseAppend flag. |
sheet/appendOrUpdate | Look up an existing row using one or more filter conditions (e.g. match by email). If found, update it in place; if not found, append a new row. Returns whether the action was appended or updated. |
sheet/clear | Clear cell data from a sheet. Can clear all rows or a specific row range defined by StartRow and EndRow. |
sheet/create | Add a new sheet tab to an existing spreadsheet. Supports setting a tab title, hidden state, and tab color. |
sheet/delete | Permanently remove a sheet tab from a spreadsheet by name. This deletes all data in the tab. |
sheet/deleteRowsOrColumns | Delete a contiguous range of rows or columns from a sheet using a 0-based start index and a count. |
sheet/get | Read rows from a sheet with optional filter conditions (e.g. Status = "Pending"). Supports AND/OR filter combine modes, header row configuration, value render format, and first-match-only mode. |
sheet/update | Update rows matching lookup filter conditions. Uses DataMode and ColumnMappings to define which columns to write and what values to set. |
Key Use Cases
- Automated reporting: Append daily summary rows to a reporting sheet at the end of each workflow run. Columns are mapped from workflow variables using BizFirst expressions.
- CRM sync to sheets: Mirror customer records from your CRM into Google Sheets for stakeholder visibility. Use
appendOrUpdatewith email as the lookup key to keep rows in sync. - Data collection staging: Use Google Sheets as an ETL staging area — append inbound form submissions, then process and archive them row by row with a Loop node.
- Dynamic sheet management: Automatically create a new sheet tab at the start of each month for monthly log tracking, using expressions to name the tab dynamically.
- Workflow task queue: Read unprocessed rows with
sheet/getfiltered by a Status column, process each row, then update Status to "Done" withsheet/update.
OAuth2 Setup
Google OAuth2 credential required: Before using this node, create a Google OAuth2 credential in BizFirst Credentials Manager with the scope
https://www.googleapis.com/auth/spreadsheets. If the workflow also creates or deletes spreadsheet files (spreadsheet/create, spreadsheet/delete), additionally include the https://www.googleapis.com/auth/drive scope. The CredentialId (Guid) is passed as the authentication parameter on every operation.
In This Guide
Configuration
Complete property reference for all 10 operations, DataMode explained, ColumnMappings format, and filter syntax.
Input & Output
Output schemas for get, append, appendOrUpdate, and create operations with example JSON payloads.
Examples
Five real-world examples: append order row, update customer by email, get pending rows, create monthly tab, and delete processed rows.