REST API
Erdo’s REST API lets you integrate your data platform into any application. Query datasets, write data, manage conversations, create automations, and more — all via standard HTTP requests. Base URL:https://api.erdo.ai
OpenAPI spec: the API Reference section in the sidebar is generated
from the full machine-readable OpenAPI spec — every /v1 endpoint with its
request and response schemas. Point a code generator or a coding agent at the
spec to build a typed client.
Authentication: All requests require a Bearer token in the Authorization header.
Getting an API Key
Click your profile in the bottom-left corner of Erdo and go to API Keys. Create a new key and copy the token — it’s shown only once. An API key is an account-level credential: it acts as you, and works in any organization you’re a member of. The organization stored on the key is only its default org — the one used when a request doesn’t name one. It is not a hard scope. To act in a specific organization, send theX-Organization-ID header with the org’s id or slug. The backend validates on every request that you’re a member of that org, so a key can never reach an org you don’t belong to:
erdo token create --name ci,
erdo token list, erdo token revoke <id>. Set a command’s org with
erdo --org acme <command> or change the active default with erdo org use acme.
Scoped Tokens
For building apps where your end-users interact with Erdo, use scoped tokens to restrict access to specific datasets and threads.API Surface
API keys and scoped tokens work on the documented API surface: every/v1
endpoint, the /mcp endpoint, and the endpoints used by the published SDKs
(scoped-token minting, thread messaging, agent invocation, dataset reads).
Requests to any other path return 403 permission_denied — other routes are
internal to the Erdo app and not a stable contract to build against. If you
need a capability that isn’t on /v1 yet, tell us rather than coupling to an
internal route.
Datasets
List Datasets
Create Dataset
Upload a File as a Dataset
ready reports whether schema extraction succeeded; when false, the file
stored but is not yet queryable (a warning explains why).
Delete Dataset
Search Datasets
Get Dataset Schema
Query Dataset (SQL)
For file datasets (CSV/Excel), the table name is always
data. For database datasets, use the actual table name from the schema.Query Dataset (Natural Language)
Fetch Dataset Contents
Get Dataset Context
Writing Data
Write data into your datasets from any application. Rows are written to whatever storage backend the dataset uses (Postgres, ClickHouse, or CSV file storage).Write Rows
Append rows (no key column):
Delete Rows
Update Schema
Each operation object:
Ask Questions
Ask a Data Question
Integrations
Connect third-party apps and data sources so Erdo can use them — in agent runs, data questions, and datasets. Credential-based integrations (databases, API keys, service accounts) connect in a single call. OAuth-based integrations return aconnect_url for the user to authorize in a browser; polling the status endpoint completes the connection.
List Integrations
Search Connectable Apps
auth_types field tells you how connection works — database, api_key, service_account, and basic connect directly with credentials, while OAuth-based apps go through a browser authorization step.
Connect an Integration
Connecting a database — created, verified, and activated in one call:
connect_url to open in a browser. Pass return_url when you embed the flow in your own product so the user’s browser lands back on your page (not Erdo’s) after authorizing:
Check Connection Status
connect_url.
Discover Tables
:integration is the app key (e.g. postgres) or, when several instances of the same app are connected, the integration id. Without schema_name it lists the selectable schemas (all SQL databases and warehouses). With schema_name it lists that schema’s tables with columns, types, and row estimates — supported for SQL databases (Postgres, MySQL, and compatible); warehouses (BigQuery, Snowflake, ClickHouse) list schemas but not per-table columns here.
Create a Dataset from an Integration
Threads & Conversations
List Threads
Get Thread Messages
Create Thread
Send Message
Memories & Skills
Memories store reusable knowledge and instructions that Erdo’s AI uses in future conversations.Create Memory
Search Memories
List Memories
Delete Memory
Artifacts
Artifacts are AI-generated outputs from agent runs — insights, metrics, alerts, and tables.List Artifacts
Get Artifact
Screenshots
Capture a public web page to a PNG and get a signed, time-limited download URL. Only works on URLs reachable without login (a marketing site, a published Erdo page athttps://pages.erdo.ai/p/{id}, etc.).
signed_url, bucket_key, media_type, width, height, expires_at.
Pages
Deploy authenticated, data-wired HTML apps to Erdo over HTTP — the same surface as theerdo_deploy_page MCP tools, for CI and scripts. See the Build Apps on Erdo guide for the page runtime, the window.erdo client, and the read/write model.
Deploy Page
Returns the page
id, editor url, optional public_url, and structured validation results. A deploy with validation errors still saves — fix them and iterate.
Update Page
js to fix a script without resending html/css. Omit any field to keep its current value. dataset_slugs replaces the current grants; public toggles visibility. Returns fresh validation results.
Validate Page
window.erdo usage, and dataset-slug references. Accepts html (required), css, js, runtime, and dataset_slugs.

