Google Sheets is an accessible tool for teams that need structured data without setting up a database. Unlike Supabase (which connects to PostgreSQL and business logic) or a CRM (which enforces a predefined model), Sheets is flexible, shareable, and familiar for anyone on the team. In Brain Studio, this integration lets your flows read, write, and transform spreadsheet data in real time: log leads, update statuses, consolidate reports, and orchestrate processes where the sheet acts as an operational control panel.Documentation Index
Fetch the complete documentation index at: https://docs.jelou.ai/llms.txt
Use this file to discover all available pages before exploring further.
What Google Sheets enables
When you connect Google Sheets, you can:- Log business events in shared spreadsheets — leads, appointments, payments, or documents get structured directly from conversation
- Query existing data before replying — find a row by ID, read a range, or verify a status so the agent does not invent data
- Update statuses and columns in real time — mark as processed, add timestamps, or change values based on what happens in the flow
- Govern spreadsheet structure — conditional formatting, data validation, and range protection to maintain quality
- Orchestrate processes across integrations — use the sheet as a task queue where each row is a pending case the flow processes and marks done
Installation
Prerequisites
- A Google account with access to Google Sheets and Google Drive.
How to connect it
The most direct way is using Jelou Agent: describe what you need and the agent connects Google Sheets automatically inside the flow. If you prefer manual installation, follow these steps in Marketplace. The connection uses Google OAuth; you do not need to copy credentials.Authorize access with Google
Available tools
At a high level, actions are grouped as:- Query — get cells, ranges, rows, tabs, and workbook metadata.
- Create and structure — create workbooks/tabs, insert rows/columns, and move dimensions.
- Update data — append, edit, clear, or upsert rows and cells.
- Governance and quality — validation, conditional formatting, protection, comments, and notes.
Features
Create column
Create column
InsertDimension or equivalent batchUpdate requests).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- sheetId / sheetName (string) — Tab.
- startIndex (number) — Column index to insert at.
- endIndex (optional, number) — For multiple columns.
spreadsheets.values.batchUpdate · Sheet requestsAdd conditional format rule
Add conditional format rule
- spreadsheetId (string) — Spreadsheet ID.
- sheetId (number) — Tab ID.
- rule (object) — Rule definition (
ranges,booleanRule,gradientRule, etc.).
AddConditionalFormatRuleRequestAdd multiple rows
Add multiple rows
values.append.Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (string) — Base range (e.g.
Sheet1!A:C). - values (2D array) — Rows to append.
- valueInputOption (optional, enum:
RAW|USER_ENTERED) — DefaultUSER_ENTERED.
spreadsheets.values.appendAdd protected range
Add protected range
AddProtectedRange).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (object) — Range to protect.
- editors (optional, object) — Users or domains allowed to edit.
AddProtectedRangeRequestAdd single row
Add single row
- spreadsheetId (string) — Spreadsheet ID.
- range (string) — Target range or table.
- values (array) — One row of values.
- insertDataOption (optional, enum) —
INSERT_ROWSor append options.
spreadsheets.values.appendClear cell
Clear cell
values.clear on a one-cell A1 range).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (string) — A1 cell (e.g.
Sheet1!B5).
spreadsheets.values.clearClear rows
Clear rows
- spreadsheetId (string) — Spreadsheet ID.
- range (string) — Row range (e.g.
Sheet1!A5:Z20).
spreadsheets.values.clearCopy worksheet
Copy worksheet
sheets.copyTo).Inputs:- spreadsheetId (string) — Source spreadsheet ID.
- sheetId (number) — Source tab ID.
- destinationSpreadsheetId (string) — Destination spreadsheet ID.
spreadsheets.sheets.copyToCreate spreadsheet
Create spreadsheet
spreadsheets.create).Inputs:- title (string) — Spreadsheet title.
- sheets (optional, array) — Initial tabs with
title. - sourceSpreadsheetId (optional, string) — If the tool supports duplicate-from-ID.
spreadsheets.createCreate Sheet
Create Sheet
AddSheetRequest via batchUpdate).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- title (string) — New tab name.
AddSheetRequest · batchUpdateDelete conditional format rule
Delete conditional format rule
- spreadsheetId (string) — Spreadsheet ID.
- sheetId (number) — Tab ID.
- index (number) — Rule index to remove.
DeleteConditionalFormatRuleRequestDelete rows
Delete rows
DeleteDimension for rows).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- sheetId (number) — Tab.
- startIndex (number) — First row (0-based).
- endIndex (number) — End row (exclusive).
DeleteDimensionRequestDelete sheet
Delete sheet
DeleteSheetRequest).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- sheetId (number) — Tab ID to delete.
DeleteSheetRequestFind row
Find row
values.get + filter in the flow).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (string) — Range to scan.
- column (string or number) — Key column.
- value (string) — Value to find.
spreadsheets.values.getGet cell
Get cell
values.get on a one-cell range).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (string) — Cell A1 (e.g.
Sheet1!B2).
spreadsheets.values.getGet current user
Get current user
about.get: name, email, quota, etc.Inputs:- fields (optional, string) — Fields (
user,storageQuota, …).
about.get (Drive)Get spreadsheet by ID
Get spreadsheet by ID
spreadsheets.get).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- ranges (optional, array of string) — Partial ranges if supported.
- includeGridData (optional, boolean) — Include grid data.
spreadsheets.getGet values in range
Get values in range
values.get).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (string) — Range (e.g.
Sales!A1:F100). - majorDimension (optional, enum:
ROWS|COLUMNS) — Orientation.
spreadsheets.values.getInsert anchored note
Insert anchored note
batchUpdate cell note requests).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- sheetId (number) — Tab.
- row (number) — Row (0-based).
- column (number) — Column (0-based).
- note (string) — Note text.
spreadsheets.batchUpdateInsert comment
Insert comment
- fileId (string) — File ID (same as spreadsheetId).
- content (string) — Comment body.
- anchor (optional, object) — Anchor if exposed by the tool.
comments.create (Drive)Insert dimension
Insert dimension
InsertDimension).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- sheetId (number) — Tab.
- dimension (enum:
ROWS|COLUMNS) — Type. - startIndex / endIndex (number) — Position and span.
InsertDimensionRequestList worksheets
List worksheets
spreadsheets.get → sheets[]).Inputs:- spreadsheetId (string) — Spreadsheet ID.
spreadsheets.getMerge cells
Merge cells
MergeCells).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (object) —
sheetId,startRowIndex,endRowIndex,startColumnIndex,endColumnIndex. - mergeType (optional, enum) — Merge type.
MergeCellsRequestMove dimension
Move dimension
MoveDimension).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- sheetId (number) — Tab.
- dimension (enum:
ROWS|COLUMNS) — Type. - sourceIndex / destinationIndex (number) — Source and destination per API.
MoveDimensionRequestSet data validation
Set data validation
SetDataValidation.Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (object) — Target range.
- rule (object) — Rule (
condition,showCustomUi, etc.).
SetDataValidationRequestUpdate cell
Update cell
values.update on a one-cell range).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (string) — A1 cell.
- values (2D array 1×1) — Value.
- valueInputOption (optional, enum) — Default
USER_ENTERED.
spreadsheets.values.updateUpdate conditional format rule
Update conditional format rule
UpdateConditionalFormatRule).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- sheetId (number) — Tab.
- index (number) — Rule index.
- rule (object) — New definition.
UpdateConditionalFormatRuleRequestUpdate formatting
Update formatting
RepeatCell / UpdateCells in batchUpdate.Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (object) — Range.
- format (object) —
userEnteredFormat(text, background, borders).
Update multiple rows
Update multiple rows
values.update on a rectangular range.Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (string) — Range (e.g.
Sheet1!A2:D10). - values (2D array) — Value matrix.
- valueInputOption (optional, enum) —
USER_ENTERED.
spreadsheets.values.updateUpdate row
Update row
- spreadsheetId (string) — Spreadsheet ID.
- range (string) — e.g.
Sheet1!A5:Z5. - values (2D array with one row) — Values.
spreadsheets.values.updateInsert or update row
Insert or update row
append / update).Inputs:- spreadsheetId (string) — Spreadsheet ID.
- range (string) — Table or range.
- values (array) — Row values.
- keyColumn (optional, string) — Key column for upsert.
spreadsheets.values.appendHow to use in Brain
Once connected, you can use Google Sheets in two surfaces:In AI Agent
Ideal when users want to query, insert, or update rows in natural language.Configure tools
In Canvas
Ideal when you need full flow control (for example: find row → validate → insert or update → next step).Drag Google Sheets into Canvas
Select the tool
Configure request body and memory
spreadsheetId, range, keyColumn, and values according to your workbook and columns.
Use cases
Real-time lead logging from WhatsApp
Real-time lead logging from WhatsApp
Operational board with synchronized statuses
Operational board with synchronized statuses
Sheet as task queue across integrations
Sheet as task queue across integrations
Integrations that combine well with Google Sheets
Google Drive
Google Drive
fileId, link, and document status as columns in the operational sheet. Everything stays traceable in one place.Combined flow: file uploaded to Drive → new column in Sheets with link and date.Google Drive documentationGmail
Gmail
Google Calendar
Google Calendar
CRM (HubSpot / Pipedrive)
CRM (HubSpot / Pipedrive)