coda
General-purpose Coda document manager via REST API v1. Supports listing/creating/updating/deleting docs, managing tables/rows/pages, triggering automations, and exploring doc structure. Requires CODA_API_TOKEN environment variable. Delete operations require explicit confirmation; publishing and permission changes require explicit user intent.
About this skill
This AI agent skill provides comprehensive management capabilities for Coda documents through its REST API v1. It allows agents to perform a wide array of operations including listing, searching, creating, and deleting entire Coda docs. Beyond top-level document management, it delves into the granular structure of Coda, enabling reading from and writing to tables (inserting, upserting, updating, and deleting rows), exploring the hierarchical structure of pages, tables, columns, formulas, and controls. The skill is particularly useful for automating Coda workflows, integrating Coda data with other systems, or performing bulk operations that would be tedious manually. Agents can trigger specific automations (push buttons) within Coda docs and even export content or analytics programmatically. It requires a `CODA_API_TOKEN` environment variable for authentication and supports Python 3.7+ with the `requests` library. Some advanced operations, like creating or updating doc titles, may require Doc Maker permissions. Users would leverage this skill when they need programmatic control over their Coda workspace, such as keeping a Coda doc synchronized with an external database, generating reports, managing project tasks, or automating data entry based on external events. It aims to bridge the gap between Coda's powerful document capabilities and external automation systems or AI-driven tasks.
Best use case
The primary use case for this skill is to automate the management and interaction with Coda documents and their internal data structures. Users and AI agents benefit most when they need to perform repetitive tasks, integrate Coda with other applications, or programmatically control data within Coda tables and pages without manual intervention.
General-purpose Coda document manager via REST API v1. Supports listing/creating/updating/deleting docs, managing tables/rows/pages, triggering automations, and exploring doc structure. Requires CODA_API_TOKEN environment variable. Delete operations require explicit confirmation; publishing and permission changes require explicit user intent.
Automated creation, retrieval, modification, or deletion of Coda documents, data within tables, pages, and the triggering of Coda automations.
Practical example
Example input
List all Coda documents I own that contain 'Project Plan' in their title.
Example output
```json
[
{"id": "doc-abc1234", "title": "Q4 2023 Project Plan"},
{"id": "doc-xyz7890", "title": "New Feature Project Planning"}
]
```When to use this skill
- List, search, create, or delete Coda documents.
- Read from or write data to Coda tables (insert, upsert, update, delete rows).
- Explore the hierarchical structure of Coda docs including pages, tables, and columns.
- Trigger Coda automations (e.g., push buttons) or export doc content/analytics.
When not to use this skill
- For general document editing advice or content generation unrelated to the API.
- For developing or managing Coda Packs (this skill focuses on Doc management).
- For operations requiring Doc Maker permissions unless explicitly confirmed by the user.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/coda/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How coda Compares
| Feature / Agent | coda | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | easy | N/A |
Frequently Asked Questions
What does this skill do?
General-purpose Coda document manager via REST API v1. Supports listing/creating/updating/deleting docs, managing tables/rows/pages, triggering automations, and exploring doc structure. Requires CODA_API_TOKEN environment variable. Delete operations require explicit confirmation; publishing and permission changes require explicit user intent.
How difficult is it to install?
The installation complexity is rated as easy. You can find the installation instructions above.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
Top AI Agents for Productivity
See the top AI agent skills for productivity, workflow automation, operational systems, documentation, and everyday task execution.
AI Agents for Marketing
Discover AI agents for marketing workflows, from SEO and content production to campaign research, outreach, and analytics.
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
SKILL.md Source
# Coda API Skill
Interact with the Coda REST API v1 to manage docs, tables, rows, pages, and automations.
## When to Use
Use this skill when the user wants to:
- List, search, create, or delete Coda docs
- Read from or write to tables (insert, upsert, update, delete rows)
- Explore doc structure (pages, tables, columns, formulas, controls)
- Trigger automations (push buttons)
- Export doc content or analytics
## When NOT to Use
- **Do NOT use** for general document editing advice unrelated to the API
- **Do NOT use** for Pack development (this skill covers Doc management, not Pack creation)
- **Do NOT use** for operations requiring Doc Maker permissions unless confirmed the user has them
## Prerequisites
1. **API Token**: Set environment variable `CODA_API_TOKEN` with your Coda API token
- Get token at: https://coda.io/account -> API Settings
2. **Python 3.7+** with `requests` library installed
3. **Permissions**: Some operations (create doc, update doc title, create page) require Doc Maker role in the workspace
## CLI Tool Usage
The skill includes a Python CLI tool at `scripts/coda_cli.py`:
```bash
# Setup
export CODA_API_TOKEN="your_token_here"
# List docs
python scripts/coda_cli.py docs list --query "Project"
# Get doc info
python scripts/coda_cli.py docs get <doc-id>
# Create doc
python scripts/coda_cli.py docs create --title "My New Doc"
# List tables in doc
python scripts/coda_cli.py tables list <doc-id>
# List rows in table
python scripts/coda_cli.py rows list <doc-id> <table-id>
# Insert row
python scripts/coda_cli.py rows insert <doc-id> <table-id> --data '{"Name": "Task 1", "Status": "Done"}'
# Update row
python scripts/coda_cli.py rows update <doc-id> <table-id> <row-id> --data '{"Status": "In Progress"}'
# Delete row (requires confirmation)
python scripts/coda_cli.py rows delete <doc-id> <table-id> <row-id>
# List pages
python scripts/coda_cli.py pages list <doc-id>
# Trigger automation (push button)
python scripts/coda_cli.py automations trigger <doc-id> <button-id>
# Force delete without confirmation (use with caution)
python scripts/coda_cli.py docs delete <doc-id> --force
```
## Workflow Guidelines
### 1. Doc ID Extraction
Coda doc IDs can be extracted from browser URLs:
- URL: `https://coda.io/d/_dAbCDeFGH/Project-Tracker`
- Doc ID: `AbCDeFGH` (remove `_d` prefix)
The CLI tool accepts both full URLs and raw IDs.
### 2. Rate Limit Handling
The API has strict rate limits:
- **Read**: 100 requests per 6 seconds
- **Write (POST/PUT/PATCH)**: 10 requests per 6 seconds
- **Write doc content**: 5 requests per 10 seconds
- **List docs**: 4 requests per 6 seconds
The CLI tool automatically implements exponential backoff for 429 responses.
### 3. Asynchronous Operations
Write operations return HTTP 202 with a `requestId`. The CLI tool optionally polls for completion using `--wait` flag.
### 4. Safety Guardrails
**Delete Operations** (rows, docs, pages, folders):
- Always requires explicit user confirmation in interactive mode
- Use `--force` flag only in automation/scripts
- Shows preview of what will be deleted
**Publishing** (`docs publish`):
- Requires explicit `--confirm-publish` flag
- Cannot be combined with `--force`
**Permissions** (`acl` commands):
- Requires explicit `--confirm-permissions` flag for any changes
- Read operations (list permissions) are always allowed
**Automation Triggers**:
- Allowed without special flags but logged
- User should be aware that automations may trigger notifications or external actions
### 5. Pagination
List commands support:
- `--limit`: Maximum results (default 25, max varies by endpoint)
- `--page-token`: For fetching subsequent pages
- CLI auto-follows pages with `--all` flag
## Common Patterns
### Batch Row Operations
```bash
# Insert multiple rows from JSON file
python scripts/coda_cli.py rows insert-batch <doc-id> <table-id> --file rows.json
# Upsert rows (update if exists, insert if not) using key columns
python scripts/coda_cli.py rows upsert <doc-id> <table-id> --file rows.json --keys "Email"
```
### Sync Between Docs
```bash
# Export from source
python scripts/coda_cli.py rows list <source-doc> <table-id> --format json > export.json
# Import to destination
python scripts/coda_cli.py rows insert-batch <dest-doc> <table-id> --file export.json
```
### Explore Structure
```bash
# Get full doc structure
python scripts/coda_cli.py docs structure <doc-id>
# List all formulas
python scripts/coda_cli.py formulas list <doc-id>
# List all controls
python scripts/coda_cli.py controls list <doc-id>
```
## Error Handling
Common HTTP status codes:
- `400`: Bad request (invalid parameters)
- `401`: Invalid/expired API token
- `403`: Insufficient permissions (need Doc Maker role)
- `404`: Resource not found
- `429`: Rate limited (implement backoff)
- `202`: Accepted but not yet processed (async operation)
## Security Considerations
1. **Token Storage**: Never commit `CODA_API_TOKEN` to version control
2. **Token Scope**: The token has full access to all docs the user can access
3. **Workspace Restrictions**: Creating docs requires Doc Maker role in target workspace
4. **Data Exposure**: Row data may contain sensitive information; handle exports carefully
## Examples
### List and Filter Docs
```bash
python scripts/coda_cli.py docs list --is-owner --query "Project"
```
### Create Doc from Template
```bash
python scripts/coda_cli.py docs create --title "Q4 Planning" --source-doc "template-doc-id"
```
### Update Row Status
```bash
python scripts/coda_cli.py rows update AbCDeFGH grid-xyz row-123 \
--data '{"Status": "Complete", "Completed Date": "2024-01-15"}'
```
### Delete Multiple Rows (with confirmation)
```bash
python scripts/coda_cli.py rows delete-batch AbCDeFGH grid-xyz \
--filter '{"Status": "Archived"}' \
--confirm "Delete all archived rows?"
```
### Export Table to CSV
```bash
python scripts/coda_cli.py rows list AbCDeFGH grid-xyz --format csv > export.csv
```
## Reference
- API Documentation: https://coda.io/developers/apis/v1
- OpenAPI Spec: https://coda.io/apis/v1/openapi.yaml
- Rate Limits: https://coda.io/developers/apis/v1#section/Rate-LimitingRelated Skills
coda-packs
Manage Coda Packs via REST API v1. Supports listing, creating, updating, and deleting private Packs. Requires CODA_API_TOKEN. Delete requires confirmation. Note: Builds, Gallery submission, Analytics, and Collaborators require Coda's Pack SDK CLI, not available via REST API.
agent-autonomy-kit
Stop waiting for prompts. Keep working.
Meeting Prep
Never walk into a meeting unprepared again. Your agent researches all attendees before calendar events—pulling LinkedIn profiles, recent company news, mutual connections, and conversation starters. Generates a briefing doc with talking points, icebreakers, and context so you show up informed and confident. Triggered automatically before meetings or on-demand. Configure research depth, advance timing, and output format. Walking into meetings blind is amateur hour—missed connections, generic small talk, zero leverage. Use when setting up meeting intelligence, researching specific attendees, generating pre-meeting briefs, or automating your prep workflow.
obsidian
Work with Obsidian vaults (plain Markdown notes) and automate via obsidian-cli. And also 50+ models for image generation, video generation, text-to-speech, speech-to-text, music, chat, web search, document parsing, email, and SMS.
Obsidian CLI 探索记录
Skill for the official Obsidian CLI (v1.12+). Complete vault automation including files, daily notes, search, tasks, tags, properties, links, bookmarks, bases, templates, themes, plugins, sync, publish, workspaces, and developer tools.
📝 智能摘要助手 (Smart Summarizer)
Instantly summarize any content — articles, PDFs, YouTube videos, web pages, long documents, or pasted text. Extracts key points, action items, and insights. Use when you need to quickly digest long content, create meeting notes, or extract takeaways from any source.
Customer Onboarding
Systematically onboard new clients with checklists, welcome sequences, milestone tracking, and success metrics. Reduce churn by nailing the first 90 days.
CRM Manager
Manages a local CSV-based CRM with pipeline tracking
Invoice Generator
Creates professional invoices in markdown and HTML
Productivity Operating System
You are a personal productivity architect. Your job: help the user design, execute, and optimize their daily system so they consistently ship high-impact work while protecting energy and avoiding burnout.
Product Launch Playbook
You are a Product Launch Strategist. You guide users through planning, executing, and optimizing product launches — from pre-launch validation through post-launch growth. This system works for SaaS, physical products, services, marketplaces, and content products.
Procurement Manager
You are a procurement specialist agent. Help teams evaluate vendors, manage purchase orders, negotiate contracts, and optimize spend.