Google Sheets
Blocks for creating, reading, and editing Google Sheets spreadsheets.
Google Sheets Add Column
What it is
Add a new column with a header. Can add at the end or insert at a specific position.
How it works
This block adds a new column to a Google Sheet with a specified header name. You can add the column at the end or insert it before a specific column position. If you provide a default value, all existing data rows will be populated with that value.
The block uses the Google Sheets API to perform the insertion, shifting existing columns to the right when inserting in the middle.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
sheet_name
Sheet name (optional, defaults to first sheet)
str
No
header
Header name for the new column
str
Yes
position
Where to add: 'end' for last column, or column letter (e.g., 'C') to insert before
str
No
default_value
Default value to fill in all data rows (optional). Requires existing data rows.
str
No
Outputs
error
Error message if any
str
result
Result of the operation
Dict[str, Any]
column_letter
Letter of the new column (e.g., 'D')
str
column_index
0-based index of the new column
int
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
Schema Evolution: Add new data fields to existing tracking sheets as requirements change.
Status Tracking: Add a "Status" or "Processed" column to mark items as they flow through a workflow.
Data Enhancement: Add computed or lookup columns to enrich existing datasets.
Google Sheets Add Dropdown
What it is
Add a dropdown list (data validation) to cells. Useful for enforcing valid inputs.
How it works
This block adds data validation rules to a cell range using the Google Sheets API, creating dropdown menus with predefined options. You can enforce strict validation (reject invalid inputs) or show warnings for non-list values.
The dropdown arrow appears in cells when enabled, providing users with a list of valid choices.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
sheet_name
Sheet name (optional, defaults to first sheet)
str
No
range
Cell range to add dropdown to (e.g., 'B2:B100')
str
Yes
options
List of dropdown options
List[str]
Yes
strict
Reject input not in the list
bool
No
show_dropdown
Show dropdown arrow in cells
bool
No
Outputs
error
Error message if any
str
result
Result of the operation
Dict[str, Any]
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
Status Tracking: Add status dropdowns (Pending, In Progress, Complete) to task tracking sheets.
Data Entry Control: Restrict input options to valid categories, departments, or product types.
Survey Forms: Create structured input fields with predefined response options.
Google Sheets Add Note
What it is
Add a note to a cell in a Google Sheet
How it works
This block adds a text note to a specific cell using the Google Sheets API. Notes appear when hovering over a cell and provide additional context without affecting cell values.
Notes are useful for documentation, explanations, or audit trails that shouldn't modify the underlying data.
Inputs
spreadsheet
The spreadsheet to add note to
Spreadsheet
No
cell
Cell to add note to (e.g., A1, B2)
str
Yes
note
Note text to add
str
Yes
sheet_name
Name of the sheet. Defaults to first sheet.
str
No
Outputs
error
Error message if operation failed
str
result
Result of the operation
Dict[str, Any]
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
Audit Trail: Add notes documenting who modified data and when.
Data Documentation: Explain calculation logic or data sources for specific cells.
Error Flagging: Mark cells with notes explaining validation issues or anomalies.
Google Sheets Append Row
What it is
Append or Add a single row to the end of a Google Sheet. The row is added after the last row with data.
How it works
This block appends a new row to the end of a Google Sheet after the last row containing data. You provide values as a list that maps to columns in order. The value_input_option controls whether values are parsed (like formulas or dates) or stored as raw text.
This is ideal for continuously adding records to a log or database-style sheet.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
row
Row values to append (e.g., ['Alice', 'alice@example.com', '25'])
List[str]
Yes
sheet_name
Sheet to append to (optional, defaults to first sheet)
str
No
value_input_option
How values are interpreted. USER_ENTERED: parsed like typed input (e.g., '=SUM(A1:A5)' becomes a formula, '1/2/2024' becomes a date). RAW: stored as-is without parsing.
"RAW" | "USER_ENTERED"
No
Outputs
error
Error message if any
str
result
Append API response
Dict[str, Any]
spreadsheet
The spreadsheet for chaining to other blocks
GoogleDriveFile
Possible use case
Lead Capture: Append new leads from forms or webhooks to a sales tracking sheet.
Event Logging: Add timestamped entries to an activity log or audit trail.
Data Collection: Continuously gather data points from sensors, APIs, or user submissions.
Google Sheets Batch Operations
What it is
This block performs multiple operations on a Google Sheets spreadsheet in a single batch request.
How it works
This block combines multiple spreadsheet operations into a single API call using the Google Sheets API's batch update functionality. This is more efficient than making separate calls for each operation.
Operations execute in order and can include various actions like formatting, data validation, and protection. The batch fails if any operation fails.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
operations
List of operations to perform
List[BatchOperation]
Yes
Outputs
error
Error message if any
str
result
The result of the batch operations
Dict[str, Any]
spreadsheet
The spreadsheet as a GoogleDriveFile (for chaining to other blocks)
GoogleDriveFile
Possible use case
Bulk Setup: Apply multiple formatting rules, validations, and protections when setting up new sheets.
Performance Optimization: Reduce API calls by batching multiple updates together.
Atomic Updates: Ensure multiple related changes succeed or fail together.
Google Sheets Clear
What it is
This block clears data from a specified range in a Google Sheets spreadsheet.
How it works
This block removes all values from a specified cell range using the Google Sheets API. The cells remain but their contents are deleted, preserving any formatting.
Use A1 notation (e.g., "A1:D10" or "Sheet1!B2:C5") to specify the range to clear.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
range
The A1 notation of the range to clear
str
Yes
Outputs
error
Error message if any
str
result
The result of the clear operation
Dict[str, Any]
spreadsheet
The spreadsheet as a GoogleDriveFile (for chaining to other blocks)
GoogleDriveFile
Possible use case
Data Reset: Clear data areas before importing fresh data from external sources.
Template Preparation: Reset input areas of templates before distributing new copies.
Periodic Cleanup: Clear temporary or staging data areas as part of scheduled workflows.
Google Sheets Copy To Spreadsheet
What it is
Copy a sheet from one spreadsheet to another.
How it works
This block copies an entire sheet (tab) from one Google Spreadsheet to another using the Google Sheets API. The copied sheet includes all data, formatting, formulas, and structure.
The new sheet is added to the destination spreadsheet with a potentially modified name if a sheet with the same name already exists.
Inputs
source_spreadsheet
Select the source spreadsheet
Source Spreadsheet
No
source_sheet_name
Sheet to copy (optional, defaults to first sheet)
str
No
destination_spreadsheet_id
ID of the destination spreadsheet
str
Yes
Outputs
error
Error message if any
str
result
Result of the copy operation
Dict[str, Any]
new_sheet_id
ID of the new sheet in the destination
int
new_sheet_name
Name of the new sheet
str
spreadsheet
The source spreadsheet for chaining
GoogleDriveFile
Possible use case
Template Distribution: Copy template sheets to individual project or client spreadsheets.
Report Consolidation: Copy data sheets from multiple sources into a master spreadsheet.
Backup Creation: Copy important sheets to backup spreadsheets for archival.
Google Sheets Create Named Range
What it is
Create a named range to reference cells by name instead of A1 notation.
How it works
This block creates a named range in a Google Spreadsheet using the Google Sheets API. Named ranges allow you to reference cells by descriptive names instead of A1 notation, making formulas more readable.
Named ranges can be used in formulas across the spreadsheet and make maintenance easier when data locations change.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
sheet_name
Sheet name (optional, defaults to first sheet)
str
No
name
Name for the range (e.g., 'SalesData', 'CustomerList')
str
Yes
range
Cell range in A1 notation (e.g., 'A1:D10', 'B2:B100')
str
Yes
Outputs
error
Error message if any
str
result
Result of the operation
Dict[str, Any]
named_range_id
ID of the created named range
str
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
Formula Clarity: Create named ranges like "SalesData" or "TaxRate" for clearer formulas.
Dynamic References: Define named ranges that formulas reference, simplifying updates.
Data Source Setup: Create named ranges for areas that serve as data sources for charts or lookups.
Google Sheets Create Spreadsheet
What it is
This block creates a new Google Sheets spreadsheet with specified sheets.
How it works
This block creates a brand new Google Sheets spreadsheet with a specified title and optional sheet names. The spreadsheet is created in the user's Google Drive and immediately accessible via the returned URL.
The spreadsheet output can be chained to other Sheets blocks for immediate data population.
Inputs
title
The title of the new spreadsheet
str
Yes
sheet_names
List of sheet names to create (optional, defaults to single 'Sheet1')
List[str]
No
Outputs
error
Error message if any
str
result
The result containing spreadsheet ID and URL
Dict[str, Any]
spreadsheet
The created spreadsheet as a GoogleDriveFile (for chaining to other blocks)
GoogleDriveFile
spreadsheet_id
The ID of the created spreadsheet
str
spreadsheet_url
The URL of the created spreadsheet
str
Possible use case
Report Generation: Create new spreadsheets for periodic reports with dedicated sheets for different data sections.
Project Setup: Automatically create project tracking spreadsheets with pre-defined sheet structures.
Data Export: Create new spreadsheets to export data from other systems for sharing.
Google Sheets Delete Column
What it is
Delete a column by header name or column letter.
How it works
This block removes an entire column from a Google Sheet using the Google Sheets API. You can specify the column by its header name or column letter (A, B, C, etc.).
All data in the column is permanently deleted and subsequent columns shift left to fill the gap.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
sheet_name
Sheet name (optional, defaults to first sheet)
str
No
column
Column to delete (header name or column letter like 'A', 'B')
str
Yes
Outputs
error
Error message if any
str
result
Result of the delete operation
Dict[str, Any]
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
Schema Cleanup: Remove deprecated or unused columns from data sheets.
Data Reduction: Delete columns containing sensitive or unnecessary information before sharing.
Structure Maintenance: Remove temporary calculation columns after processing.
Google Sheets Delete Rows
What it is
Delete specific rows from a Google Sheet by their row indices. Works well with FilterRowsBlock output.
How it works
This block removes specific rows from a Google Sheet by their 1-based row indices using the Google Sheets API. It handles multiple deletions efficiently by processing from bottom to top to maintain correct indices.
Works seamlessly with the Filter Rows block output to delete rows matching specific criteria.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
sheet_name
Sheet name (optional, defaults to first sheet)
str
No
row_indices
1-based row indices to delete (e.g., [2, 5, 7])
List[int]
Yes
Outputs
error
Error message if any
str
result
Result of the delete operation
Dict[str, Any]
deleted_count
Number of rows deleted
int
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
Data Cleanup: Delete rows with invalid or incomplete data identified by filtering.
Record Removal: Remove processed or archived records from active sheets.
Conditional Deletion: Delete rows matching specific criteria like outdated entries or cancelled items.
Google Sheets Export Csv
What it is
Export a Google Sheet as CSV data
How it works
This block exports data from a Google Sheet as a CSV-formatted string using the Google Sheets API. You can choose whether to include headers and specify which sheet to export.
The CSV data can be used for integration with other systems, file downloads, or data processing pipelines.
Inputs
spreadsheet
The spreadsheet to export from
Spreadsheet
No
sheet_name
Name of the sheet to export. Defaults to first sheet.
str
No
include_headers
Include the first row (headers) in the CSV output
bool
No
Outputs
error
Error message if export failed
str
csv_data
The sheet data as CSV string
str
row_count
Number of rows exported
int
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
System Integration: Export data as CSV for import into external systems or databases.
File Distribution: Generate CSV exports for email attachments or file downloads.
Data Backup: Create periodic CSV backups of spreadsheet data.
Google Sheets Filter Rows
What it is
Filter rows in a Google Sheet based on a column condition. Returns matching rows and their indices.
How it works
This block filters rows in a Google Sheet based on conditions applied to a specific column using the Google Sheets API. Supports operators like equals, not_equals, contains, is_empty, and is_not_empty.
Returns matching rows along with their original 1-based row indices, making it easy to chain with delete or update operations.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
sheet_name
Sheet name (optional, defaults to first sheet)
str
No
filter_column
Column to filter on (header name or column letter like 'A', 'B')
str
Yes
filter_value
Value to filter by (not used for is_empty/is_not_empty operators)
str
No
operator
Filter comparison operator
"equals" | "not_equals" | "contains" | "not_contains" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "is_empty" | "is_not_empty"
No
match_case
Whether to match case in comparisons
bool
No
include_header
Include header row in output
bool
No
Outputs
error
Error message if any
str
rows
Filtered rows (including header if requested)
List[List[str]]
row_indices
Original 1-based row indices of matching rows (useful for deletion)
List[int]
count
Number of matching rows (excluding header)
int
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
Conditional Processing: Filter rows by status to process only pending or active items.
Data Extraction: Extract rows matching specific criteria for reports or analysis.
Cleanup Preparation: Identify rows to delete based on conditions like empty values or specific statuses.
Google Sheets Find
What it is
Find text in a Google Sheets spreadsheet. Returns locations and count of occurrences. Can find all occurrences or just the first one.
How it works
This block searches for text across a Google Spreadsheet using the Google Sheets API. You can search entire spreadsheets or specific sheets/ranges, with options for case matching and whole-cell matching.
Returns the locations (sheet, row, column) of all matches or just the first one, along with the total count.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
find_text
The text to find
str
Yes
sheet_id
The ID of the specific sheet to search (optional, searches all sheets if not provided)
int
No
match_case
Whether to match case
bool
No
match_entire_cell
Whether to match entire cell
bool
No
find_all
Whether to find all occurrences (true) or just the first one (false)
bool
No
range
The A1 notation range to search in (optional, searches entire sheet if not provided)
str
No
Outputs
error
Error message if any
str
result
The result of the find operation including locations and count
Dict[str, Any]
locations
List of cell locations where the text was found
List[Dict[str, Any]]
count
Number of occurrences found
int
spreadsheet
The spreadsheet as a GoogleDriveFile (for chaining to other blocks)
GoogleDriveFile
Possible use case
Data Validation: Find specific values to verify data presence or locate errors.
Position Lookup: Find where specific text appears to determine update locations.
Audit Checks: Search for specific terms across spreadsheets for compliance verification.
Google Sheets Find Replace
What it is
This block finds and replaces text in a Google Sheets spreadsheet.
How it works
This block performs find-and-replace operations across a Google Spreadsheet using the Google Sheets API. You can target all sheets or specific ones, with options for case matching and whole-cell matching.
Returns the number of replacements made, enabling verification of the operation's scope.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
find_text
The text to find
str
Yes
replace_text
The text to replace with
str
Yes
sheet_id
The ID of the specific sheet to search (optional, searches all sheets if not provided)
int
No
match_case
Whether to match case
bool
No
match_entire_cell
Whether to match entire cell
bool
No
Outputs
error
Error message if any
str
result
The result of the find/replace operation including number of replacements
Dict[str, Any]
spreadsheet
The spreadsheet as a GoogleDriveFile (for chaining to other blocks)
GoogleDriveFile
Possible use case
Data Standardization: Replace variations of terms with standardized values.
Batch Updates: Update company names, status values, or codes across entire spreadsheets.
Error Correction: Fix systematic typos or outdated values across all sheets.
Google Sheets Format
What it is
Format a range in a Google Sheet (sheet optional)
How it works
This block applies visual formatting to cell ranges in a Google Sheet using the Google Sheets API. Options include background color, text color, bold, italic, and font size.
Formatting enhances readability and can highlight important data or create visual structure in reports.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
range
A1 notation – sheet optional
str
Yes
background_color
-
Dict[str, Any]
No
text_color
-
Dict[str, Any]
No
bold
-
bool
No
italic
-
bool
No
font_size
-
int
No
Outputs
error
Error message if any
str
result
API response or success flag
Dict[str, Any]
spreadsheet
The spreadsheet as a GoogleDriveFile (for chaining to other blocks)
GoogleDriveFile
Possible use case
Header Styling: Format header rows with bold text and background colors.
Conditional Highlighting: Apply colors to highlight important values or warnings.
Report Presentation: Style sheets for professional presentation before sharing.
Google Sheets Get Column
What it is
Extract all values from a specific column. Useful for getting a list of emails, IDs, or any single field.
How it works
This block extracts all values from a specific column in a Google Sheet using the Google Sheets API. You can reference the column by header name or column letter, with options to skip empty cells and include/exclude headers.
Returns values as a list for easy iteration or processing in subsequent blocks.
Inputs
spreadsheet
Select a Google Sheets spreadsheet
Spreadsheet
No
sheet_name
Sheet name (optional, defaults to first sheet)
str
No
column
Column to extract (header name or column letter like 'A', 'B')
str
Yes
include_header
Include the header in output
bool
No
skip_empty
Skip empty cells
bool
No
Outputs
error
Error message if any
str
values
List of values from the column
List[str]
count
Number of values (excluding header if not included)
int
column_index
0-based column index
int
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
Email Lists: Extract email column values for sending notifications or marketing.
ID Processing: Get all IDs from a column to process records individually.
Data Validation: Extract values to check against allowed lists or external databases.
Google Sheets Get Notes
What it is
Get notes from cells in a Google Sheet
How it works
This block retrieves cell notes from a specified range in a Google Sheet using the Google Sheets API. Notes are the comments that appear when hovering over cells.
Returns a list of notes with their cell locations, useful for extracting documentation or audit information.
Inputs
spreadsheet
The spreadsheet to get notes from
Spreadsheet
No
range
Range to get notes from (e.g., A1:B10)
str
No
sheet_name
Name of the sheet. Defaults to first sheet.
str
No
Outputs
error
Error message if operation failed
str
notes
List of notes with cell and text
List[Dict[str, Any]]
count
Number of notes found
int
spreadsheet
The spreadsheet for chaining
GoogleDriveFile
Possible use case
Audit Extraction: Retrieve notes documenting changes or approvals for compliance reports.