Skip to main content

Google Sheets

Uses a Google account. Read actions use read-capable scopes; write actions need write access—the editor enforces this per node.

Common inputs

  • Spreadsheet ID or URL — Full link or raw spreadsheet id.
  • Return formatted values — On many read nodes: formatted = what users see in the UI (dates as text, etc.); off = raw stored values.
  • Header row number — 1-based index of the header row for table operations (default 1).
  • A1 notation — Ranges like Sheet1!A1:B10 or 'My Sheet'!A:C.

Spreadsheet & sheet structure

Get Spreadsheet Details

Inputs: Account (read); spreadsheet id/url. Outputs: spreadsheetId, title, url; sheets (repeatable) with sheetId, title, index per tab.

Create Spreadsheet

Inputs: Account (write); title. Outputs: spreadsheetId, spreadsheetUrl.

Create Sheet

Blank tab in an existing file. Inputs: Account (write); spreadsheet id/url; sheetName.

Delete Sheet

Inputs: Account (write); spreadsheet id/url; sheetName to remove.

Create Table

New tab + formatted table with headers. Inputs: Account (write); spreadsheet id/url; sheetName; repeatable headers; header row number; apply header formatting; freeze header row.

Ranges (raw grid, not “table” helpers)

Read Range

Inputs: Account (read); spreadsheet id/url; range (A1); major dimensionRows vs Columns (how the nested repeat is grouped); return formatted values. Outputs: Nested repeat structure: outer = rows or columns (per dimension), inner = cell values in that row/column.

Write Range

Inputs: Account (write); spreadsheet id/url; range (A1); major dimension; nested values repeat (same shape idea as read—rows/columns of cells). Output: updatedRange — A1 range that was written.

Append Values to Range

Appends rows after existing data in the range; new rows inherit formatting from rows already in that range. Inputs: Account (write); spreadsheet id/url; range (e.g. Sheet1!A:B); rows (each row = list of cell values). Output: updatedRange.

Clear Range

Clears values only in the A1 range (no outputs).

Highlight Range

Inputs: Account (write); spreadsheet id/url; range; color (hex, color picker in UI).

Parse Range

No Google call—parses an A1 string locally. Input: range string. Outputs: sheetName (if present); startColumnLetter / startColumnNumber / startRow; endColumnLetter / endColumnNumber / endRow; isSingleCell.

Create Range from Parts

Builds an A1 string from pieces. Inputs: Optional sheetName; startColumn (letter or 1-based number); optional startRow; optional endColumn / endRow (omit for column-only or single-cell patterns). Output: range (A1 string).

Table rows (by header name)

These actions treat the sheet as a table: column keys come from the header row.

Get Table Row(s)

By row number (1-based data rows; header row configured separately). Inputs: Account (read); spreadsheet; sheetName; repeatable rowNumbers; header row number; return formatted values. Outputs: rows (repeatable); each row is a pickable object (header name → value).

Get Table Row Range(s)

Inputs: Account (read); spreadsheet; sheetName; repeatable rowRanges entries with startRow and endRow (inclusive, 1-based); header row number; return formatted values. Outputs: rowCount (may be less than end − start + 1 if the sheet is shorter); rows (repeatable pickable row objects).

Get First N Table Rows / Get Last N Table Rows

Inputs: Account; spreadsheet; sheetName; numberOfRows; header row number; return formatted values. Outputs: rows (repeatable pickable objects).

Find Table Row(s) by Column

Search using one or more filters (row must match all filters). Each filter: columnName (exact header text); matchMode — e.g. exact value, empty / not empty, contains text, matches regex, numeric comparisons, boolean checks; searchValue when the mode needs it (type changes by mode—regex uses the Regular Expression data type). Inputs: Find multiple rows? — off = first match only; on = all matches. Plus header row number and return formatted values. Outputs: found (boolean). If multiple: rows + rowNumbers (repeatable). If single: row (object) + rowNumber.

Update Table Row(s)

Inputs: Account (write); spreadsheet; sheetName; rowNumbers (repeatable); values — repeatable column (header name) + value pairs applied to each listed row; header row number.

Insert Table Rows

Inputs: Account (write); spreadsheet; sheetName; rows — each row is a set of column + value pairs; header row number; optional rowNumber (insert position; default append at end); overwrite (if rowNumber set: replace vs shift). Output: updatedRange when appending (per node description).

Delete Row(s)

Inputs: Account (write); spreadsheet; sheetName; rowNumbers to delete (1-based).