1. Overview
Coda is an all-in-one collaborative documentation tool that combines the functionality of documents, spreadsheets, databases, and applications into a flexible canvas, enabling teams to create dynamic, interconnected documents to manage projects, knowledge bases, and more.
Through GoInsight's Coda node, you can seamlessly integrate Coda's powerful capabilities into your automated workflows, achieving programmatic management of core resources such as documents, tables, and data rows. This makes advanced use cases such as automated report creation, data synchronization, and triggering actions within Coda possible, including:
- Document Management: Automatically create or delete Coda documents.
- Data Operations: Create, read, update, and delete data rows in specified tables or views.
- Structure Queries: Retrieve detailed information about tables, views, columns, formulas, and controls within documents.
- Interactive Triggers: Programmatically "push" buttons in Coda documents to trigger preset automations or actions.
2. Prerequisites
Before using this node, you need to have a valid Coda account. You may need appropriate permissions to generate an API token for authentication in your Coda account settings.
3. Credentials
For detailed guidance on how to obtain and configure credentials, please refer to our official documentation: Credentials Configuration Guide.
4. Supported Operations
Summary
This Coda node primarily operates around Documents (Doc), Tables, Rows, Views, and their related elements, allowing you to comprehensively manage content and data in Coda.
| Resource | Operation | Description |
|---|---|---|
| Document | Create a Doc | Create a new Coda document. |
| Document | Delete a Doc | Delete a specified Coda document. |
| Document | Get All Doc | Get all accessible Coda documents. |
| Table | List Tables | List all tables in the specified Coda document. |
| Table | Get a Table | Get details of a specific table in a Coda document. |
| Column | Get All Columns | Get all columns of a specified table in a Coda document. |
| Column | Get a Column | Get details of a specific column in a Coda table. |
| Row | Create a Row | Create a new row of data in a Coda table. |
| Row | Delete a Row | Delete a specified row from a Coda table. |
| Row | Get All Rows | Get all rows in a Coda table. |
| Row | Get a Row | Get information about a specified row from a Coda table. |
| View | Get Many Views | Get all views in a Coda document. |
| View | Get a View | Get a specific view from a Coda document. |
| View Column | Get All View Columns | Get all columns in a Coda view. |
| View Row | Delete a View Row | Delete a specified row from a Coda view. |
| View Row | Get a View Row | Get information about a specified row from a Coda view. |
| View Row | Update a View Row | Update a specified row in a Coda view. |
| Control | Get Many Controls | Get all controls in a Coda document. |
| Control | Get a Control | Get a specific control from a Coda document. |
| Formula | Get Many Formulas | Get all formulas in a Coda document. |
| Formula | Get a Formula | Get a specific formula from a Coda document. |
| Button | Push a Button | Push a button in a Coda table row. |
| Button | Push a View Button | Push a button in a Coda view row. |
Operation Details
Create a Doc
Create a new Coda document.
Input Parameters:
- Name: Name of the new Coda document.
Output:
- Doc (object): Information about the newly created Coda document.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Create a Row
Create a new row of data in a Coda table.
Input Parameters:
- DocId: ID of the Coda document.
- TableId: ID or name of the Coda table.
- Values: CSV format string for creating multiple rows, e.g., "ccc,333,333\nddd,444,444".
Output:
- Success (bool): Whether the data addition operation was successful.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Delete a Doc
Delete a specified Coda document.
Input Parameters:
- DocId: ID of the Coda document to delete.
Output:
- IsDeleted (bool): Whether the document was successfully deleted.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Delete a Row
Delete a specified row from a Coda table.
Input Parameters:
- DocId: ID of the Coda document.
- TableId: ID or name of the Coda table.
- RowId: ID or name of the Coda row.
Output:
- IsDeleted (bool): Whether the row was successfully deleted.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Delete a View Row
Delete a specified row from a Coda view.
Input Parameters:
- DocId: ID of the Coda document.
- ViewId: ID or name of the Coda view.
- RowId: ID or name of the Coda row.
Output:
- IsDeleted (bool): Whether the row was successfully deleted from the view.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get All Columns
Get all columns of a specified table in a Coda document.
Input Parameters:
- DocId: ID of the Coda document.
- TableId: ID or name of the table.
Output:
- Columns (object-array): List of columns in the specified table.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get All Doc
Get all accessible Coda documents.
Output:
- Docs (object-array): List of accessible Coda documents.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get All Rows
Get all rows in a Coda table.
Input Parameters:
- DocId: ID of the Coda document.
- TableId: ID or name of the Coda table.
Output:
- Rows (object-array): List of rows in the Coda table.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get All View Columns
Get all columns in a Coda view.
Input Parameters:
- DocId: ID of the Coda document.
- ViewId: ID or name of the Coda view.
Output:
- Columns (object-array): List of columns in the Coda view.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get Many Controls
Get all controls in a Coda document.
Input Parameters:
- DocId: ID of the Coda document.
Output:
- Controls (object-array): List of controls in the Coda document.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get Many Formulas
Get all formulas in a Coda document.
Input Parameters:
- DocId: ID of the Coda document.
Output:
- Formulas (object-array): List of formulas in the Coda document.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get Many Views
Get all views in a Coda document.
Input Parameters:
- DocId: ID of the Coda document.
Output:
- Views (object-array): List of views in the Coda document.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get a Column
Get details of a specific column in a Coda table.
Input Parameters:
- DocId: ID of the Coda document.
- TableId: ID or name of the table.
- ColumnId: ID or name of the column.
Output:
- Column (object): Details of the specified column.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get a Control
Get a specific control from a Coda document.
Input Parameters:
- DocId: ID of the Coda document.
- ControlId: ID or name of the Coda control.
Output:
- Control (object): The specified control in the Coda document.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get a Formula
Get a specific formula from a Coda document.
Input Parameters:
- DocId: ID of the Coda document.
- FormulaId: ID or name of the Coda formula.
Output:
- Formula (object): The specified formula in the Coda document.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get a Row
Get information about a specified row from a Coda table.
Input Parameters:
- DocId: ID of the Coda document.
- TableId: ID or name of the Coda table.
- RowId: ID or name of the Coda row.
Output:
- Row (object): The specified row in the Coda table.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get a Table
Get details of a specific table in a Coda document.
Input Parameters:
- DocId: ID of the Coda document.
- TableId: ID or name of the table.
Output:
- Table (object): Details of the specified table.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get a View
Get a specific view from a Coda document.
Input Parameters:
- DocId: ID of the Coda document.
- ViewId: ID or name of the Coda view.
Output:
- View (object): The specified view in the Coda document.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Get a View Row
Get information about a specified row from a Coda view.
Input Parameters:
- DocId: ID of the Coda document.
- ViewId: ID or name of the Coda view.
- RowId: ID or name of the Coda row.
Output:
- Row (object): The specified row in the Coda view.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
List Tables
List all tables in the specified Coda document.
Input Parameters:
- DocId: ID of the Coda document.
Output:
- Tables (object-array): List of tables in the Coda document.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Push a Button
Push a button in a Coda table row.
Input Parameters:
- DocId: ID of the Coda document.
- TableId: ID or name of the Coda table.
- RowId: ID or name of the Coda row.
- ButtonColumnId: ID or name of the Coda button column.
Output:
- Success (bool): Whether the button was successfully pushed.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Push a View Button
Push a button in a Coda view row.
Input Parameters:
- DocId: ID of the Coda document.
- ViewId: ID or name of the Coda view.
- RowId: ID or name of the Coda row.
- ButtonColumnId: ID or name of the Coda button column.
Output:
- Success (bool): Whether the button was successfully pushed in the view.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
Update a View Row
Update a specified row in a Coda view.
Input Parameters:
- DocId: ID of the Coda document.
- ViewId: ID or name of the Coda view.
- RowId: ID or name of the Coda row.
- Values: Key-value pairs for updating, e.g., "Name: John\nAge: 18\nGender: Male" (also supports Chinese colons).
Output:
- UpdatedRow (object): The updated row in the Coda view.
- StatusCode (number): Operation status code.
- ErrorMessage (string): Error message if the operation fails.
5. Example Usage
This section will guide you through creating a simple workflow to add a new row of data to a specified table in Coda. For example, we can add a new task to a "Task List" table.
Workflow Overview
A basic workflow contains three nodes: Start -> Coda: Create a Row -> Answer.
Step-by-Step Guide
- Add Tool Node:
- In the workflow canvas, click the "+" button to add a new node.
- Select the "Tools" tab in the pop-up panel.
- Find and select Coda in the tools list.
- In the Coda supported operations list, click to select Create a Row, which will add a corresponding node to the canvas.
- Configure Node:
- Click the newly added Create a Row node, and the configuration panel for this node will expand on the right side.
- Credentials Configuration: At the top of the panel, find the credentials field. Click the dropdown menu and select your configured Coda credentials.
- Parameter Filling: Fill in the input parameters for this operation in detail.
- DocId: Enter your Coda document ID. You can find it in the browser address bar, usually the string after coda.io/d/. For example, abcdef1234.
- TableId: Enter the ID or name of the table you want to operate on. For example, grid-xyz789 or Task List.
- Values: Enter the data to add in CSV string format. Values for each column are separated by commas. Assuming your table has three columns: "Task Name", "Assignee", and "Due Date", you can enter: "Complete Quarterly Report","John Smith","2024-12-31".
- Run and Verify:
- When all required parameters are filled in correctly, the error message in the upper right corner of the workflow canvas will disappear.
- Click the "Test Run" button in the upper right corner of the canvas to execute the workflow.
- After successful execution, you can click the log icon in the upper right corner to view the detailed input and output of the node. The Success field in the output should be true. Meanwhile, you can open your Coda document and will find that this new row of data has been added to the table.
Final Workflow Display
After completing the above steps, your entire workflow is configured. Click "Test Run", and a new row of task data will be successfully added to your specified Coda table.
6. FAQs
Q: How do I find my DocId, TableId, or ViewId?
A: You can find these IDs from the URL of your Coda document:
- DocId: When you open a Coda document, the URL format is usually https://coda.io/d/Document-Name_d[DocId]. The string after d is the document ID.
- TableId/ViewId: Click on a table or view in the document, and the URL will change to https://coda.io/d/Document-Name_d[DocId]/[TableId]. The last part of the URL is the table or view ID, usually starting with grid- or view-.
Q: I encountered an error when using "Create a Row", saying the format is incorrect. How should I check?
A: Please ensure that the Values field format strictly follows CSV specifications.
- Column Count Match: The number of comma-separated values you provide must exactly match the number of columns in the target table.
- Special Characters: If your values contain commas or newlines, enclose the entire value in double quotes.
- Multiple Row Insertion: To insert multiple rows at once, use the newline character \n to separate data for each row.
Q: I received a 401 Unauthorized or 403 Forbidden error. Why is this?
A: This is usually related to your API credentials. Please check the following:
- Is the API token correct: Confirm that the Coda API token configured in GoInsight is valid and has not been revoked.
- Token Permissions: Ensure that the API token you generated has sufficient permissions to perform the operation you want. For example, a read-only token cannot be used to create or delete rows.
- Document Access Rights: Confirm that the account that generated the API token has access to the Coda document specified in the node.
7. Official Documentation
For a deeper understanding of all the features and details of the Coda API, please refer to the official documentation:
Coda Official API Documentation
4. Supported Operations
Summary
This node primarily operates on resources such as Documents, Tables, Views, Columns, Rows, Controls, Formulas, and Buttons within Coda.
| Resource | Operation | Description |
|---|---|---|
| Document | Create a Doc | Create a new Coda document with optional settings like templates, timezone, and initial page setup. |
| Document | Delete a Doc | Permanently delete a Coda document and all its contents. |
| Document | Get All Doc | List all accessible Coda documents with advanced filtering and pagination. |
| Table | Get a Table | Retrieve detailed metadata of a specific table or view in a Coda document. |
| Table | List Tables And Views | List all tables and views in a Coda document with filtering and pagination. |
| View | Get a View | Retrieve detailed metadata of a specific view in a Coda document. |
| Column | Get All Columns | Retrieve the column schema from a Coda table with pagination support. |
| Column | Get a Column | Get detailed metadata of a specific column in a Coda table. |
| View Column | Get All View Columns | Retrieve the column schema from a Coda view with pagination support. |
| Row | Create a Row | Insert or upsert rows into a Coda table. |
| Row | Delete a Row | Delete a specific row from a Coda base table asynchronously. |
| Row | Get All Rows | Retrieve rows from a Coda table with advanced filtering, sorting, and pagination. |
| Row | Get a Row | Get detailed data of a specific row from a Coda table. |
| View Row | Delete a View Row | Delete a specific row from a Coda view asynchronously. |
| View Row | Get a View Row | Get detailed data of a specific row from a Coda view. |
| View Row | Update a View Row | Update a row in a view using auto-detected formats (Key-Value or CSV). |
| Control | Get Many Controls | Retrieve all interactive controls from a Coda document with pagination. |
| Control | Get a Control | Get detailed information about a specific control in a Coda document. |
| Formula | Get Many Formulas | Retrieve all named formulas from a Coda document with pagination. |
| Formula | Get a Formula | Get detailed information about a specific named formula in a Coda document. |
| Button | Push a Button | Trigger a button action in a Coda row asynchronously. |
| Button | Push a View Button | Trigger a button action in a Coda view row asynchronously. |
Operation Details
Create a Doc
Create a new Coda document with optional settings. Supports blank documents, copying from templates (sourceDoc), timezone configuration, folder organization (folderId), and initial page setup (name/subtitle/icon). Documents inherit folder/workspace permissions and are immediately accessible. Use Get_All_Doc to find source IDs or extract folderId from browser URL (?folderId=...). Common uses: project docs, team collaboration, template instances.
Input Parameters:
- Name: Title of the new document (1-255 characters). Defaults to 'Untitled' if not provided. Examples: 'Q1 2026 Budget Planning', 'Product Roadmap'
Options:
- SourceDoc: Optional: Document ID to copy from. Creates new document as a copy of this source document. Get sourceDoc ID from another document's properties or Get_All_Doc action.
- Timezone: Optional: Timezone for the new document. Common values: 'America/New_York', 'Europe/London', 'Asia/Shanghai', 'Asia/Tokyo'. If not specified, defaults to account timezone.
- FolderId: Optional: Folder ID where to create the document. Defaults to 'My docs' folder. Get folderId from folder URL query parameter (?folderId=...) when browsing docs.
- InitialPage: Optional: Initial page configuration (object). Allows setting the first page's properties when creating the doc. Object fields: 'name' (string: page name, e.g., 'Getting Started'), 'subtitle' (string: optional page subtitle), 'iconName' (string: icon name like 'rocket', 'chart', 'calendar'), 'imageUrl' (string: header image URL), 'pageContent' (object: page content structure - advanced). Most users can leave this empty - pages can be created/edited after doc creation using Create_a_Page action. Example: {"name": "Project Overview", "subtitle": "Q1 2026", "iconName": "rocket"}
Output:
- Doc (object): The newly created Coda document object containing: id (string: unique document ID), name (string: document name), href (string: web URL to open in browser), createdTime (ISO 8601 timestamp), updatedTime (ISO 8601 timestamp), owner (object with id and email), role (string: user's role like 'owner')
- OriginalStatusCode (number): The original HTTP status code returned by Coda API. Default 0 means request did not reach upstream (e.g., timeout, parameter validation failure). 201=Created (document created successfully), 400=Bad request, 401=Unauthorized, 403=Forbidden, 404=Not found, 429=Rate limited. Use this for debugging and troubleshooting.
- StatusCode (number): Operation status code: 200=Success or business error (check ErrorMessage), -1=Parameter validation error, 500=Network error (timeout/connection failure). Use OriginalStatusCode to see upstream API response code.
- ErrorMessage (string): Error details if any error occurred. Empty string if operation succeeded. When StatusCode is 200 and ErrorMessage is not empty, it's an upstream business error (e.g. 401 unauthorized, 404 not found). Check OriginalStatusCode for the actual HTTP status code from Coda API.
Delete a Doc
Permanently delete a Coda document. API may return 202 (async deletion queued) or 204 (immediate deletion). Deletion is irreversible - document and ALL its contents (pages, tables, data) are permanently lost. Use RequestId with getMutationStatus to track async completion. Requires owner/admin permissions. Critical for: workspace cleanup, test document removal, data lifecycle management, compliance-driven deletion. ALWAYS verify doc_id before execution. Essential safety practice: implement confirmation workflows before calling this action to prevent accidental data loss.
Input Parameters:
- DocId: ID of the Coda document to delete. Get it from: 1. Document URL: https://coda.io/d/{DocId}/... 2. Get_All_Doc action result 3. Using document properties/details ⚠️ WARNING: This action permanently deletes the document and cannot be undone.
Output:
- IsDeleted (bool): Boolean flag: True if deletion succeeded (202/204), False if failed. Note: API may return 202 (async deletion queued) or 204 (immediate deletion). Use RequestId to track async operations.
- RequestId (string): Request ID from Coda API response or header. Use with getMutationStatus endpoint to track async deletion completion. May be empty if API returns 204 instead of 202.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 202 (async deletion queued), 204 (deletion completed), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check IsDeleted and ErrorMessage), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Common issues: invalid doc ID, permission denied, document not found. CRITICAL: Document deletion is permanent and irreversible.
Get All Doc
List all accessible Coda documents with advanced filtering. Supports filters: isOwner, isPublished, query (search), sourceDoc, isStarred, inGallery, workspaceId, folderId. Returns docs in reverse chronological order (latest activity first). Cursor-based pagination via pageToken/nextPageToken. Each doc includes ID, name, owner, timestamps, folder/workspace info. Default limit: 25. Common uses: doc discovery, workspace audits, template search, bulk doc management.
Options:
- IsOwner: Optional: If true, return only docs owned by the authenticated user.
- IsPublished: Optional: If true, return only published docs. Default: return all docs.
- Query: Optional: Search term to filter docs by name or content. Supports substring matching.
- SourceDoc: Optional: Return only docs that were copied from the specified source document ID.
- IsStarred: Optional: If true, return only starred docs. If false, return only non-starred docs.
- InGallery: Optional: If true, return only docs visible in the Coda gallery.
- WorkspaceId: Optional: Return only docs belonging to the specified workspace ID.
- FolderId: Optional: Return only docs belonging to the specified folder ID.
- Limit: Optional: Maximum number of results to return in this query. Default: 25, Maximum: varies by endpoint.
- PageToken: Optional: Opaque token used to fetch the next page of results. Returned as 'NextPageToken' in previous response. Pass this to get the next page.
Output:
- Docs (object-array): Array of Coda document objects. Each doc contains ID, name, type, owner info, and timestamps.
- NextPageToken (string): Opaque token for fetching the next page of results. If empty, there are no more results. Pass this as PageToken parameter to get the next page.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request/invalid pagination token), 401 (invalid token), 403 (permission denied), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Get a Table
Get detailed metadata of a specific table or view in a Coda document. Returns comprehensive info: id, type, tableType, href, browserLink, name, parent (page), parentTable (base table if view), displayColumn, rowCount, sorts, layout, filter, createdAt, updatedAt. Supports useUpdatedTableLayouts to distinguish detail/form layouts. Table IDs recommended over names (URI encoding required). Works for both base tables and views. Essential for: table schema discovery, configuration inspection, view relationship understanding, sort/filter analysis.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Doc or document URL: https://coda.io/d/{DocId}/...
- TableId: Coda table ID or name (ID recommended). Get from List_Tables or table URL. If using name, ensure it's URI-encoded.
Options:
- UseUpdatedTableLayouts: Optional: If true, returns 'detail' and 'form' for the layout field of detail and form layouts respectively (instead of 'masterDetail' for both). Default false.
Output:
- Table (object): Table/view details: id, type, tableType, href, browserLink, name, parent (page info), parentTable (base table if view), displayColumn, rowCount, sorts, layout, filter, createdAt, updatedAt. Works for both base tables and views.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (table/doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
List Tables And Views
List all tables and views in a Coda document with filtering and pagination. Returns table/view metadata: ID, name, type, tableType, parent page info, browser link. Supports tableTypes filter ('table'/'view') to get specific types, sortBy=name for alphabetical ordering. Cursor-based pagination via pageToken/nextPageToken. Default limit: 25. Essential for: doc structure discovery, table enumeration, dynamic UI generation, workflow automation, integration setup.
Input Parameters:
- DocId: ID of the Coda document. Get it from: 1. Document URL: https://coda.io/d/{DocId}/... 2. Get_All_Doc action result 3. Document properties/details Example: abcDef9H
Options:
- limit: Maximum number of results to return (>= 1). Default: 25. Higher values reduce API calls but increase memory usage.
- PageToken: Optional: Opaque token for cursor-based pagination. Obtained from NextPageToken in previous response. Leave empty for first page. Important: When you receive NextPageToken=null from previous call, do NOT pass any PageToken - pagination is complete. Per official API docs, when pageToken is provided, other parameters are ignored.
- SortBy: Optional: Sort order for tables. Supported values: 'name' (sort by table name). If not specified, uses default API order.
- TableTypes: Optional: Filter tables by type. Comma-separated values: 'table' (regular tables), 'view' (views). If omitted, returns both types. Example: 'table,view' or just 'table'
Output:
- Tables (object-array): Array of table/view objects. Each contains: id, name, type, tableType ('table'/'view'), href, browserLink, parent (page info). Includes both base tables and views (filtered by tableTypes parameter).
- NextPageToken (string): Opaque token for fetching the next page of results. If null or empty string, there are no more pages available and pagination is complete. To fetch next page: pass this token as PageToken parameter in the next call. Important: When NextPageToken is null, do NOT make another call - you have reached the end of results.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Get a View
Get detailed metadata of a specific view in a Coda document. Views are filtered/sorted/grouped representations of base tables. Calls /tables endpoint and verifies tableType='view'. Returns view details: id, type, tableType, href, browserLink, name, parent (page), parentTable (base table), displayColumn, rowCount, sorts, layout, filter, createdAt, updatedAt. View IDs recommended over names (URI encoding required). Returns business error if ID exists but isn't a view. Essential for: view configuration inspection, base table relationship discovery, filter/sort analysis.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- ViewId: Coda view ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it. Get from Get_Many_Views.
Output:
- View (object): View details (only if tableType='view'): id, type, tableType, href, browserLink, name, parent (page info), parentTable (base table), displayColumn, rowCount, sorts, layout, filter, createdAt, updatedAt. Empty if not a view.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (view/doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages. Also set if ID is not a view (tableType mismatch).
Get All Columns
Retrieve column schema from a Coda table with pagination support. Returns column metadata including ID, name, type, display settings, calculated/formula info, default values, and format specifications. Supports visibleOnly filter (base tables only, not views) for visible columns. Table IDs auto-encoded for URI safety. Cursor-based pagination via pageToken/nextPageToken. Default limit: 25, max: 100. Essential for: schema discovery, dynamic form generation, data validation, column mapping, integration setup.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- TableId: Coda table ID or name (ID recommended). Get from List_Tables or table URL. Names are discouraged as they are fragile and prone to being changed by users. If you're using a name, ensure it is URI-encoded.
Options:
- Limit: Optional: Maximum number of results to return in this query. Default: 25, Maximum: 100.
- PageToken: Optional: Opaque token used to fetch the next page of results. Returned as 'NextPageToken' in previous response. Pass this to get the next page.
- VisibleOnly: Optional: If true, return only visible columns for the table. This parameter only applies to base tables, not views. Default: false (return all columns).
Output:
- Columns (object-array): Array of column objects. Each column contains ID, name, type, display name, and other metadata.
- NextPageToken (string): Opaque token for fetching the next page of results. If empty, there are no more results. Pass this as PageToken parameter to get the next page.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (doc/table not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Get a Column
Get detailed metadata of a specific column in a Coda table. Returns column schema: ID, name, type, display status, calculated/formula info, default value, format specifications (type/isArray/label/disableIf/action), parent table/page info. Supports both column IDs (recommended) and names (fragile, requires URI encoding). Essential for: schema discovery, data validation rules, column behavior understanding, dynamic form generation, integration mapping.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- TableId: Coda table ID or name (ID recommended). Get from List_Tables or table URL. Names are discouraged as they are fragile and prone to being changed by users. If you're using a name, ensure it is URI-encoded.
- ColumnId: Coda column ID or name (ID recommended). Get from List_Columns. Names are discouraged as they are fragile and prone to being changed by users. If you're using a name, ensure it is URI-encoded.
Output:
- Column (object): Column details: id, name, type, href, display, calculated, formula, defaultValue, format (type/isArray/label/disableIf/action), parent (table and page info). Essential for understanding column schema and behavior.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (column/table/doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Get All View Columns
Retrieve column schema from a Coda view with pagination. Views share columns with their base table. Returns column metadata: ID, name, type, display settings, calculated/formula info, default values, format specs. Supports visibleOnly filter for visible columns. View IDs auto-encoded for URI safety. Cursor-based pagination via pageToken/nextPageToken. Default limit: 25, max: 100. Essential for: view schema discovery, filtered column lists, dynamic UI generation, view-specific data validation.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- ViewId: Coda view ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it. Get from Get_Many_Views.
Options:
- Limit: Optional: Maximum number of results to return in this query. Range: 1-100. Default: 25.
- PageToken: Optional: Opaque token used to fetch the next page of results. Returned as 'NextPageToken' in previous response. Pass this to get the next page.
- VisibleOnly: Optional: If true, returns only visible columns for the view. This parameter only applies to base tables and views (not applicable for some view types). Default: false.
Output:
- Columns (object-array): Array of column objects from the view. Each column contains id, name, type, and display properties. Note: Views use the same columns as their underlying base table.
- NextPageToken (string): Opaque token for fetching the next page of results. If empty, there are no more results. Pass this as PageToken parameter to get the next page.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (doc/view not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Create a Row
Insert or upsert rows into a Coda table. Pass an array of row objects where each object maps column names to values. Use keyColumns parameter to enable upsert mode (INSERT OR UPDATE) - matching rows will be updated, new ones inserted. Operations are asynchronous (returns requestId for status tracking). Only works with base tables, not views. Common uses: data import, sync operations, bulk updates, form submissions.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Doc or document URL: https://coda.io/d/{DocId}/...
- TableId: Coda table ID or name (ID recommended, names are fragile). Get from List_Tables or table URL. Only supports base tables, not views. If you're using a name, be sure to URI-encode it.
- Rows: Array of row objects to insert. Each object maps column names (or column IDs) to cell values. Example: [{"product": "Apple", "Number": 100, "Currency": 8.88}, {"product": "Banana", "Number": 200, "Currency": 5.50}]. Keys can be column names (e.g., 'product') or column IDs (e.g., 'col-abc123'). Values can be strings, numbers, or booleans.
Options:
- KeyColumns: Optional: Comma-separated column names or IDs for upsert (INSERT OR UPDATE). When provided, rows matching these key columns are updated. If omitted, always inserts new rows. Example: 'Email' or 'id' or 'col-abc123,col-def456'
- DisableParsing: Optional: Boolean flag. If true, Coda API will not parse cell values (all treated as strings). Default false = API auto-parses numbers, dates, etc. Useful when you want to preserve exact string formatting.
Output:
- RequestId (string): Async request ID returned by Coda API (HTTP 202 accepted). Use this with GetMutationStatus to check when operation completes. If null, operation completed immediately.
- AddedRowIds (string-array): Array of row IDs for newly added rows. Only populated when keyColumns is not set or empty (insert-only mode). When upserting (keyColumns set), this may be empty if all rows were updates rather than inserts.
- OriginalStatusCode (number): The original HTTP status code returned by Coda API. Default 0 means request did not reach upstream (e.g., timeout, parameter validation failure). 202=Accepted (async operation queued), 400=Bad request, 401=Unauthorized, 403=Forbidden, 404=Not found, 429=Rate limited. Use this for debugging and troubleshooting.
- StatusCode (number): Operation status code: 200=Success or business error (check ErrorMessage), -1=Parameter validation error, 500=Network error (timeout/connection failure). Use OriginalStatusCode to see upstream API response code.
- ErrorMessage (string): Error details if any error occurred. Empty string if operation succeeded. When StatusCode is 200 and ErrorMessage is not empty, it's an upstream business error (e.g. 401 unauthorized, 404 not found). Check OriginalStatusCode for the actual HTTP status code from Coda API.
Delete a Row
Delete a specific row from a Coda base table. Operation is asynchronous: returns 202 Accepted when queued, actual deletion happens within seconds. Use RequestId with getMutationStatus to track completion. Deletion is permanent and cannot be undone via API. When using row name (instead of ID), an arbitrary matching row will be deleted if multiple exist. IDs strongly recommended over names (URI encoding required for names). Essential for: data cleanup, automated maintenance, batch deletion workflows, integration automation. Ensure proper authorization as deletions are irreversible.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Doc or document URL: https://coda.io/d/{DocId}/...
- TableId: Coda table ID or name (ID recommended). Get from List_Tables or table URL. If using name, ensure it's URI-encoded. Names are fragile and prone to change.
- RowId: Coda row ID or name (ID recommended). Get from Get_All_Rows. If using name, ensure it's URI-encoded. If multiple rows have same name, arbitrary one is selected.
Output:
- IsDeleted (bool): Boolean flag: True if deletion queued (202 Accepted), False if failed. Note: True means deletion queued for async processing, NOT completed. Use RequestId to track execution status.
- RequestId (string): Request ID from Coda API response. Use with getMutationStatus endpoint to track async deletion operation status and completion.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 202 (deletion queued successfully), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (doc/table/row not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check IsDeleted and ErrorMessage), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Common issues: invalid table/row IDs, permission denied, row not found, encoding errors, or name matching multiple rows.
Get All Rows
Retrieve rows from a Coda table with advanced filtering, sorting, and pagination. Supports: query filter (column:value syntax), sortBy (createdAt/updatedAt/natural), valueFormat (simple/simpleWithArrays/rich), visibleOnly mode. Features cursor-based pagination (pageToken/nextPageToken) and incremental sync (syncToken/nextSyncToken for delta updates). Use column IDs (recommended) or names (fragile). Default limit: 25, max: 100. Common uses: data export, table sync, filtered queries, change detection, report generation.
Input Parameters:
- DocId: Coda document ID. Can be found in the document URL: https://coda.io/d/{DocId}/...
- TableId: Coda table ID or name. Get it from the table URL or use Get_a_Table action.
Options:
- Query: Optional: Filter rows using query syntax. Format: column_id_or_name:value - Example: 'Email:"john@example.com"' (exact match with quotes for strings) - Example: 'Status:"Active"' (use column name with quotes if preferred) - Example: 'Price:>100' (numeric comparison) - To use column names instead of IDs, quote them: '"Full Name":"John"'
- SortBy: Optional: Sort order of returned rows. Default is 'createdAt' (ascending). - 'createdAt': Sort by creation time (default) - 'updatedAt': Sort by last update time - 'natural': Sort by row order in table view (visibleOnly=true)
- UseColumnNames: Optional: If true, use column names instead of column IDs in output. Default false (not recommended as names are fragile). Example: column 'Name' instead of 'col-abc123'.
- ValueFormat: Optional: Format of returned cell values. Default 'simple'. - 'simple': Plain values (numbers, strings, etc.) - 'simpleWithArrays': Supports array/reference fields - 'rich': Full formatting info (colors, formulas, etc.)
- VisibleOnly: Optional: If true, return only visible rows (filtered/sorted view). Default false (all rows).
- Limit: Optional: Maximum rows per page (1-100). Default 25. Larger values reduce API calls but use more memory.
- PageToken: Optional: Pagination token from previous response's nextPageToken. Use this instead of offset for better pagination. Omit for first page.
- SyncToken: Optional: Sync token from previous response. Use for incremental updates - returns only rows changed since last call.
Output:
- Rows (object-array): Array of row objects. Each row contains: id (string, unique row ID), cells (array of cell values), createdTime (ISO 8601), updatedTime (ISO 8601). Structure depends on valueFormat parameter.
- NextPageToken (string): Pagination token for fetching next page of results. Pass this as PageToken parameter in next call. Empty string means no more pages available.
- SyncToken (string): Sync token for incremental updates. Pass this as SyncToken parameter in next call to fetch only rows changed since this call. Useful for continuous synchronization.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request/invalid query), 401 (invalid token), 403 (permission denied), 404 (doc/table not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Get a Row
Get detailed data of a specific row from a Coda table. Returns row metadata: id, name, index, type, href, browserLink, createdAt, updatedAt, values (cell data), parent (table/page info). Supports useColumnNames (fragile, use column names instead of IDs), valueFormat ('simple'/'simpleWithArrays'/'rich'). Row IDs recommended over names (URI encoding required for names). If multiple rows share same name, arbitrary one selected. Essential for: single record retrieval, data inspection, row detail view, targeted data access.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Doc or document URL: https://coda.io/d/{DocId}/...
- TableId: Coda table ID or name (ID recommended). Get from List_Tables or table URL.
- RowId: Coda row ID or name (ID recommended). Get from Get_All_Rows. If multiple rows have same name, arbitrary one is selected.
Options:
- UseColumnNames: Optional: If true, use column names instead of column IDs in output. Default false (not recommended as names are fragile).
- ValueFormat: Optional: Format of returned cell values. Default 'simple'. Values: 'simple' (plain values), 'simpleWithArrays' (supports arrays), 'rich' (with formatting).
Output:
- Row (object): Row details: id, type, href, name, index, browserLink, createdAt, updatedAt, values (cell data with column IDs/names), parent (table/page info). Structure depends on valueFormat and useColumnNames parameters.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (row/table/doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Delete a View Row
Delete a specific row from a Coda view. Views use the same /tables endpoint as base tables for row deletion. Operation is asynchronous: returns 202 Accepted when queued, actual deletion happens later. Use RequestId with getMutationStatus to track completion. Deletion is permanent and cannot be undone via API. IDs recommended over names (URI encoding required for names). Essential for: data cleanup, automated maintenance, batch deletion workflows, view-filtered removal, integration automation. Ensure proper authorization as deletions are irreversible.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- ViewId: Coda view ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it. Get from Get_Many_Views.
- RowId: Coda row ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it. Get from Get_All_Rows or Get_a_View_Row.
Output:
- IsDeleted (bool): Boolean flag: True if deletion queued (202 Accepted), False if failed. Note: True means deletion queued for async processing, NOT completed. Use RequestId to track execution status.
- RequestId (string): Request ID from Coda API response header. Use with getMutationStatus endpoint to track async deletion operation status and completion.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 202 (deletion queued successfully), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (doc/view/row not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check IsDeleted and ErrorMessage), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Common issues: invalid view/row IDs, permission denied, row not found, or encoding errors.
Get a View Row
Get detailed data of a specific row from a Coda view. Views and tables share the same row API. Returns row metadata: id, name, index, type, href, browserLink, createdAt, updatedAt, values (cell data), parent (view info). Supports useColumnNames (fragile, use column names instead of IDs), valueFormat ('simple'/'simpleWithArrays'/'rich'). View/Row IDs recommended over names (URI encoding required). If multiple rows share same name, arbitrary one selected. Essential for: single record retrieval from views, filtered data access, view-specific row inspection.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- ViewId: Coda view ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it. Get from Get_Many_Views.
- RowId: Coda row ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it.
Options:
- UseColumnNames: Optional: Use column names instead of column IDs in the returned values object. Default: false. Note: Using names is fragile - if columns are renamed, code may break. Use IDs for reliability.
- ValueFormat: Optional: Format for returned cell values. Enum: 'simple' (default), 'simpleWithArrays' (preserve array values), 'rich' (formatted text). Default: 'simple'.
Output:
- Row (object): Row details from view: id, type, href, name, index, browserLink, createdAt, updatedAt, values (cell data with column IDs/names), parent (view info). Structure depends on valueFormat and useColumnNames parameters.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (row/view/doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Update a View Row
⚠️ Views are filtered/sorted Tables. Works on both via /tables endpoint. Update row with THREE auto-detected formats: 1) Key-value (Col: val, recommended), 2) Two-line CSV (header+values), 3) Single-line CSV (values only). Supports Chinese punctuation (,:). Auto type conversion '123'→123 (DisableParsing preserves strings). Async (202 Accepted), use RequestId+getMutationStatus. IDs recommended (URI-encode names). Use: batch updates, view-filtered mods, flexible import, automation.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or extract from URL: https://coda.io/d/{DocId}/... Example: 'XRGg4cC1lc' (alphanumeric string from URL path after /d/).
- ViewId: Coda view ID or name. ID strongly recommended (names are mutable). Get from Get_Tables_And_Filter_Views or List_Tables. ID format: starts with 'table-' or 'grid-', e.g., 'table-9wPXLgCAa1' or 'grid-AbCdEfGh'. If using name, URI-encode it.
- RowId: Coda row ID or name. ID strongly recommended (names are mutable, multiple rows may share same name). Get from Get_All_Rows or Get_a_View_Row. ID format: starts with 'i-', e.g., 'i-Dm3EUR5mM2'. If using name, URI-encode it.
- Values: Values to update in THREE auto-detected formats: 1) Key-Value (Recommended): 'Col: val' per line. Example: 'Name: Alice
Age: 30
Status: Active'. Supports Chinese punctuation (:,). 2) Two-Line CSV: Line 1=column names, Line 2=values. Example: 'Name,Age,Status
Alice,30,Active' 3) Single-Line CSV: Values only (comma-separated). Example: 'Alice,30,Active'. Auto-maps to table columns in order. Use Get_All_Columns to verify column order. ⚠️ Auto Type Conversion: Numeric strings convert to numbers by default (e.g., '123'→123). Use DisableParsing=true to preserve strings.
Options:
- DisableParsing: Optional: If true, disables automatic type conversion and treats all values as strings. Default: false. Use case: preserve leading zeros in zip codes (e.g., '00123' stays as '00123' instead of converting to number 123), product codes, or phone numbers.
Output:
- UpdatedRow (object): Updated row object containing: id (string, row identifier), values (object, map of column IDs/names→cell values, e.g., {'c-abc123': 'Alice', 'Age': 30}), name (string, row name if set), index (number, row position), createdAt (ISO 8601 timestamp), updatedAt (ISO 8601 timestamp). Result reflects async processing (202 Accepted). Use RequestId with getMutationStatus to verify completion.
- RequestId (string): Request ID from Coda API response header. Use with getMutationStatus endpoint to track async update operation status and completion.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 202 (update queued successfully), 400 (bad request/invalid column/values), 401 (invalid token), 403 (permission denied), 404 (doc/view/row not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation/format parsing failed), 200 (success or business error, check ErrorMessage), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Common issues: invalid format (CSV/key-value), non-existent columns, type mismatch, permission denied, or encoding errors.
Get Many Controls
Retrieve all controls from a Coda document with pagination. Controls are interactive elements (sliders, buttons, date pickers, etc.) used in docs. Returns control metadata: ID, name, type, parent page info, href. Supports sortBy=name for alphabetical ordering. Cursor-based pagination via pageToken/nextPageToken. Default limit: 25. Essential for: control discovery, doc automation, interactive element mapping, UI component extraction, doc structure analysis.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
Options:
- Limit: Optional: Maximum number of results to return in this query. Default: 25, Maximum: varies by endpoint.
- PageToken: Optional: Opaque token used to fetch the next page of results. Returned as 'NextPageToken' in previous response. Pass this to get the next page.
- SortBy: Optional: Determines how to sort the results. Default: 'name'. Currently supports 'name' for alphabetical sorting by control name.
Output:
- Controls (object-array): Array of control objects. Each control contains ID, name, type, parent page info, and other metadata.
- NextPageToken (string): Opaque token for fetching the next page of results. If empty, there are no more results. Pass this as PageToken parameter to get the next page.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Get a Control
Get detailed info of a specific control in a Coda document. Controls are interactive elements (sliders, buttons, checkboxes, date pickers, etc.) used in docs. Returns control metadata: id, type, href, name, parent (page info), controlType (slider/button/checkbox/etc), value (current control value). Control IDs recommended over names (URI encoding required for names). Essential for: control state inspection, interactive element discovery, automation input/output, doc component analysis, value retrieval.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- ControlId: Coda control ID or name (ID recommended). Get from Get_Many_Controls. Names are discouraged as they are fragile and prone to being changed by users. If you're using a name, ensure it is URI-encoded.
Output:
- Control (object): Control details: id, type, href, name, parent (page info), controlType (slider/button/checkbox/etc), value (current control value). Controls are interactive elements in docs.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (control/doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Get Many Formulas
Retrieve all named formulas from a Coda document with pagination. Named formulas are reusable calculations defined at the doc level (not column formulas). Returns formula metadata: ID, name, type, parent page info, href. Supports sortBy=name for alphabetical ordering. Cursor-based pagination via pageToken/nextPageToken. Default limit: 25. Essential for: formula discovery, doc analysis, calculation extraction, automation logic mapping, doc structure understanding.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
Options:
- Limit: Optional: Maximum number of results to return in this query. Default: 25.
- PageToken: Optional: Opaque token used to fetch the next page of results. Returned as 'NextPageToken' in previous response. Pass this to get the next page.
- SortBy: Optional: Determines how to sort the results. Default: 'name'. Currently supports 'name' for alphabetical sorting by formula name.
Output:
- Formulas (object-array): Array of named formula objects. Each formula contains ID, name, type, parent page info, and other metadata.
- NextPageToken (string): Opaque token for fetching the next page of results. If empty, there are no more results. Pass this as PageToken parameter to get the next page.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Get a Formula
Get detailed info of a specific named formula in a Coda document. Named formulas are reusable calculations that can be referenced throughout docs. Returns formula metadata: id, type, href, name, parent (page info), value (current computed result). Formula IDs recommended over names (URI encoding required for names). Essential for: formula value retrieval, calculation result inspection, reusable logic discovery, doc computation analysis, dynamic data access, automation integration.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- FormulaId: Coda formula ID or name (ID recommended). Get from Get_Many_Formulas. Names are discouraged as they are fragile and prone to being changed by users. If you're using a name, ensure it is URI-encoded.
Output:
- Formula (object): Named formula details: id, type, href, name, parent (page info), value (current computed result). Named formulas are reusable calculations stored in docs.
- RequestId (string): Request ID from Coda API response header, can be used for debugging
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 200 (success), 400 (bad request), 401 (invalid token), 403 (permission denied), 404 (formula/doc not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check ErrorMessage and OriginalStatusCode), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Contains specific error info from Coda API or local validation messages.
Push a Button
Trigger a button action in a Coda row. Buttons are interactive controls that execute formulas/automations when clicked. This action simulates a button click via API. Operation is asynchronous: returns 202 Accepted when queued, actual execution happens later. Use RequestId with getMutationStatus to track completion. Button column must be type 'button' (not regular column). IDs recommended over names (URI encoding required for names). Essential for: workflow automation, batch button triggering, scheduled actions, integration automation, programmatic control execution.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- TableId: Coda table ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it.
- RowId: Coda row ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it. Get from Get_All_Rows or Get_a_Row.
- ButtonColumnId: Coda button column ID or name. This column must be of type 'button'. ID is strongly recommended over name. If using a name, be sure to URI-encode it. Get from Get_All_Columns.
Output:
- Success (bool): Boolean flag: True if button push queued (202 Accepted), False if failed. Note: True means request accepted for async processing, NOT that button action completed. Use RequestId to track execution status.
- RequestId (string): Request ID from Coda API response header. Use with getMutationStatus endpoint to track async button action execution status and completion.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 202 (button push queued successfully), 400 (bad request/invalid button), 401 (invalid token), 403 (permission denied), 404 (doc/table/row/button not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check Success flag and ErrorMessage), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Common issues: button column not of type 'button', missing write permissions, invalid IDs, or token lacks access.
Push a View Button
Trigger a button action in a Coda view row. Views use the same /tables endpoint as base tables for button operations. Buttons are interactive controls that execute formulas/automations when clicked. This action simulates a button click via API. Operation is asynchronous: returns 202 Accepted when queued, actual execution happens later. Use RequestId with getMutationStatus to track completion. Button column must be type 'button'. IDs recommended over names (URI encoding required for names). Essential for: view-based workflow automation, filtered data actions, batch operations, integration automation.
Input Parameters:
- DocId: Coda document ID. Get from Get_All_Docs or document URL: https://coda.io/d/{DocId}/...
- ViewId: Coda view ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it. Get from Get_Many_Views.
- RowId: Coda row ID or name. ID is strongly recommended over name as names can be changed by users. If using a name, be sure to URI-encode it. Get from Get_All_Rows or Get_a_View_Row.
- ButtonColumnId: Coda button column ID or name. This column must be of type 'button'. ID is strongly recommended over name. If using a name, be sure to URI-encode it. Get from Get_All_View_Columns.
Output:
- Success (bool): Boolean flag: True if button push queued (202 Accepted), False if failed. Note: True means request accepted for async processing, NOT that button action completed. Use RequestId to track execution status.
- RequestId (string): Request ID from Coda API response header. Use with getMutationStatus endpoint to track async button action execution status and completion.
- OriginalStatusCode (number): Original HTTP status code from Coda API: 0 (not reached upstream/local error), 202 (button push queued successfully), 400 (bad request/invalid button), 401 (invalid token), 403 (permission denied), 404 (doc/view/row/button not found), 429 (rate limited), 5xx (server error). Use with StatusCode for precise error handling.
- StatusCode (number): Execution status: -1 (local validation failed, check parameters), 200 (success or business error, check Success flag and ErrorMessage), 500 (network/system error, retryable). For business errors, OriginalStatusCode shows actual API status (400/401/403/404/429).
- ErrorMessage (string): Error details when operation fails. Empty on success. Common issues: button column not of type 'button', missing write permissions, invalid view/row/button IDs, or token lacks access.
Leave a Reply.