Product
Jentic OSThe workplace. An in-house AI platform for every employeeJentic OneSafe access. Agents reach your systems without holding keysJentic AIRThe foundation. Gets your existing platforms ready for AI
Pricing
Developers

GET STARTED

API DirectoryBrowse 10,000+ APIs Ready For AI Agent IntegrationDocumentationGuides and API reference

TOOLS

API ScoringCheck your AI Readiness using our scorecardArazzo UIVisualize Arazzo Workflows As Interactive DocumentationArazzo EditorBuild And Edit Multi-Step API Workflows Visually

COMMUNITY

GitHubOpen source projects and examplesOpen StandardsBuilt on open specs. Never locked in.
Resources
Company
About UsOur mission and teamCareersJoin our teamContactGet in touch
Try it now
Jentic OSJentic OneJentic AIR
Pricing
API DirectoryDocumentationAPI ScoringArazzo UIArazzo EditorGitHubOpen Standards
Resources
About UsCareersContact
Try it now
JenticJentic
Products
  • Jentic OS
  • Jentic One
  • Jentic AIR
For Developers
  • API Directory
  • Documentation
  • GitHub
Company
  • About Jentic
  • Careers
  • Contact Us
  • Trust Centre
ISO/IEC 27001:2022 certification badge issued by Prescient SecurityISO/IEC 27001:2022 certification badge issued by Prescient Security

Information Security Management System

Certified to ISO/IEC 27001:2022 by Prescient Security

Terms & Conditions•Privacy Policy•
© 2026 Jentic Technology Ltd. All rights reserved.
Switch to light modeSwitch to dark mode
APIs / Productivity / Coda API
Coda API logo

Coda API

Official vendor OpenAPI document · agent-readyProductivityCollaborationbearer124 EndpointsREST

For Agents

Read and write Coda doc rows, manage pages and tables, share and publish docs, and inspect formulas, controls and automations across 124 endpoints.

Use for: List all Coda docs in my workspace, Insert a new row into a Coda table, Upsert a row keyed by an external id in Coda, Read all rows from the 'Tasks' table in my Coda doc

Not supported: Does not run Coda Pack code, send Coda automation triggers from outside the doc, or replace the doc editor - use for reading and writing Coda doc rows, pages, and ACLs only.

The Coda API lets developers and AI agents interact with Coda docs the same way the editor does - listing and creating docs, sharing and publishing them, walking the page tree, and reading or writing rows in tables. It also exposes formulas, controls, automations, packs, analytics, account whoami, and ACL management for fine-grained sharing. Coda publishes the spec at coda.io/apis/v1/openapi.json and authenticates with Bearer API tokens that can optionally be restricted to specific docs, tables, or read/write scopes.

Jentic One on GithubView OpenAPI Document

Install Jentic One Beta

Connect the Coda API to your agent

Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Coda API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.

Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.

1

Step 1: Jentic One Host machine

# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fcoda.io%2Fcoda" | sh
2

Step 2: Agent machine

# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fcoda.io%2Fcoda" | sh
jentic register       # connects your agent to your Jentic One instance

Jentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.

Capabilities

What an agent can do with Coda API.

List, search, create, copy, and delete Coda docs via the /docs endpoints

Read, insert, upsert, update, and delete table rows via /docs/{docId}/tables/{tableIdOrName}/rows

Walk the page tree, fetch page content, and export pages via /docs/{docId}/pages and /export

Manage doc sharing and permissions through /docs/{docId}/acl/permissions and /acl/settings

Publish or unpublish a doc with PUT and DELETE /docs/{docId}/publish

Inspect formulas, controls, and column definitions across a doc to power agentic workflows

Use Cases

Patterns agents use Coda API for, with concrete tasks.

★ Two-Way Sync Between Coda and a Backend

Keep a Coda table and an internal database aligned by reading rows on a schedule and writing changes back. POST /docs/{docId}/tables/{tableIdOrName}/rows supports insert and upsert, GET on the same path streams rows with pagination, and the X-Coda-Doc-Version header forces a fresh read when staleness is unacceptable. Most teams stand up a working sync in well under a day.

Upsert a list of order rows into the 'Orders' table via POST /docs/{docId}/tables/Orders/rows with keyColumns set to ['order_id'].

Doc Sharing and Publishing Automation

Programmatically share new docs with the right teams and publish customer-facing docs. POST /docs/{docId}/acl/permissions adds a principal, GET /docs/{docId}/acl/permissions lists the current ACL, and PUT /docs/{docId}/publish takes the doc public with optional discoverability controls. Useful for templated workspace provisioning when a new project starts.

Add the email alex@example.com as an editor on doc id abc123 by POSTing to /docs/abc123/acl/permissions.

Page and Content Export

Pull doc content out of Coda for use in another system - a wiki migration, a static site, or an LLM ingestion pipeline. POST /docs/{docId}/pages/{pageIdOrName}/export starts an export, GET on the matching /export/{requestId} polls until it is ready, and GET /docs/{docId}/pages/{pageIdOrName}/content returns the live page content. Combined this gives a deterministic, version-pinned snapshot.

Begin an export of page 'Roadmap' via POST /docs/{docId}/pages/Roadmap/export, then poll the resulting /export/{requestId} until status is complete.

Doc Templates and Workspace Onboarding

Spin up a new Coda doc from a template each time a project starts. POST /docs creates a doc (optionally cloning from an existing doc id), PATCH /docs/{docId} renames or moves it, and the ACL endpoints share it with the right people in one go. Repeatable in seconds with a single workflow.

Create a new Coda doc from sourceDoc id template-doc-id via POST /docs and rename it to 'Q3 Planning' with PATCH /docs/{docId}.

AI Agent Coda Workflows via Jentic

An AI assistant uses Jentic to read and write Coda rows on behalf of a user without storing the Bearer token. The agent searches for 'insert a row into a Coda table', loads the schema for POST /docs/{docId}/tables/{tableIdOrName}/rows, and executes - Jentic injects the API token from the vault and respects scoped tokens that limit the agent to specific docs or tables.

Use Jentic to search for 'insert a Coda row', load the POST /docs/{docId}/tables/{tableIdOrName}/rows schema, and add a row to the 'Inbox' table.

Key Endpoints

124 endpoints — the coda api lets developers and ai agents interact with coda docs the same way the editor does - listing and creating docs, sharing and publishing them, walking the page tree, and reading or writing rows in tables.

METHOD

PATH

DESCRIPTION

GET

/docs

List available docs

POST

/docs

Create a new doc

GET

/docs/{docId}/tables/{tableIdOrName}/rows

List rows in a table

POST

/docs/{docId}/tables/{tableIdOrName}/rows

Insert or upsert rows

POST

/docs/{docId}/acl/permissions

Share a doc by adding a permission

PUT

/docs/{docId}/publish

Publish a doc to the web

POST

/docs/{docId}/pages/{pageIdOrName}/export

Begin a page content export

GET

/docs

List available docs

POST

/docs

Create a new doc

GET

/docs/{docId}/tables/{tableIdOrName}/rows

List rows in a table

POST

/docs/{docId}/tables/{tableIdOrName}/rows

Insert or upsert rows

POST

/docs/{docId}/acl/permissions

Share a doc by adding a permission

PUT

/docs/{docId}/publish

Publish a doc to the web

POST

/docs/{docId}/pages/{pageIdOrName}/export

Begin a page content export

Why Jentic?

What agents get from Jentic-routed access to this vendor.

Setup

Setup

Wiring Coda by hand means learning its bearer auth, targeting coda.io/apis/v1, and handling paging and retries across a large doc-manipulation surface yourself. Through Jentic you install once, import the Coda API from the API Directory, store the token once, and your agent calls it.

Permission scoping

Permission scoping

Coda puts the doc id in the URL path (/docs/{docId}/...), so a rule can pin your agent to one doc for reading and writing its rows. You choose the operations it may call, so ones that change sharing or visibility like editing ACL permissions or publishing are not included unless you add them.

Credential management

Credential isolation

Your Coda token is stored once, encrypted, by your own Jentic One instance and added to the Authorization header at execution time. It never enters the agent's prompt, logs, or context.

Intent-based discovery

Intent-based discovery

Agents search Jentic by intent such as 'insert a Coda row' or 'share a Coda doc', and Jentic returns the matching Coda operation with its parameter schema so the agent builds a row payload without reading the full reference.

Related APIs

Alternatives and complements available in the Jentic catalogue.

Alternative

Notion

→

Notion is a competing block-based docs and database platform with a similar API surface.

Choose Notion when the workspace is already on Notion; choose Coda for doc-as-app workflows with formulas and controls.

Alternative

Airtable

→

Airtable is a database-first competitor with strong relational and view tooling.

Choose Airtable for relational base management; choose Coda for tables embedded inside doc-style narratives.

Complementary

ClickUp

→

ClickUp handles task and project management for teams using Coda for narrative docs.

Use ClickUp for sprint and ticketing workflows and Coda for the surrounding planning docs.

Complementary

monday.com

→

monday.com is a work-management platform that often pairs with Coda for documentation.

Use monday.com for board-driven work tracking and Coda for table-driven documentation linked to it.

FAQs

Specific to using Coda API through Jentic.

What authentication does the Coda API use?

The Coda API uses HTTP Bearer authentication with a UUID-format API token created at https://coda.io/account. Tokens can be restricted by object (specific docs or tables) and by operation (read, write, or both). Through Jentic the token is stored encrypted in the vault and added to the Authorization header at execution time.

Can I insert and upsert rows into a Coda table?

Yes. POST /docs/{docId}/tables/{tableIdOrName}/rows accepts a list of rows for insert, and the same endpoint supports upsert via the keyColumns parameter. Writes are asynchronous - the response returns 202 with a requestId you can pass to /mutationStatus to confirm the edit was applied.

What are the rate limits for the Coda API?

Coda enforces per-user rate limits that vary by category (read, write, write-doc-content, list-docs, analytics) and returns 429 when exceeded. The exact numeric limits are not published in the spec and may change, so callers should treat 429 responses as the source of truth and back off with exponential retry.

How do I share a Coda doc with someone through Jentic?

Search Jentic for 'share a Coda doc', load the POST /docs/{docId}/acl/permissions schema, and execute with the principal email and access level (reader, writer, etc.). Install the SDK with pip install jentic and call it via the async client.

Can I export a Coda page as Markdown?

Yes. POST /docs/{docId}/pages/{pageIdOrName}/export starts an export job with the desired output format, and GET /docs/{docId}/pages/{pageIdOrName}/export/{requestId} polls for completion and returns the download link. Use this for wiki migrations or LLM ingestion.

Why do my row writes return 202 instead of 200?

Coda processes mutations asynchronously to keep edits consistent with collaborator changes. The 202 response includes a requestId; pass it to the mutation status endpoint to find out whether the edit succeeded, failed, or is still pending. Plan around a few seconds of write latency.

Can I limit what my agent is allowed to do with the Coda API?

Yes. Because you run Jentic One yourself, your own rules decide which Coda operations and credentials the agent may use. Since Coda puts the doc id in the URL path (/docs/{docId}/...), a rule can pin the agent to a single doc and restrict it to reading and writing that doc's rows. Operations that change sharing or visibility, such as editing ACL permissions via /docs/{docId}/acl/permissions or publishing a doc, stay excluded unless you add them.

GET STARTED

Start building with Coda API

Explore with Jentic One
View OpenAPI Document