Resources
The Catentio control plane exposes its routes under /v1/*, organised by the noun they manage: a workspace, an agent, a run, a project, a tool. This index lists the user-facing ones and links to each reference page.
Pages here cover the wire protocol — object shape, endpoint paths, query params, error bodies. For idiomatic SDK usage see SDK overview. For the dashboard equivalents see Portal.
These are the INTERNAL control-plane paths, not the public API. They are not reachable with an API key. From a signed-in browser, a control-plane path is reached through the portal proxy:
/api/v1/cp/<path>.If you are building against Catentio from your own code, you want the public API — nine endpoints at
https://catent.io/v1/, authenticated withAuthorization: Bearer cat_pk_.... Its paths resemble some of the ones below and are not the same surface.
Core
| Resource | Path | What |
|---|---|---|
| Workspaces | /v1/workspaces |
Tenant deployments + state machine. |
| Agents | /v1/agents |
Roster, detail, CRUD. (invoke is broken.) |
| Runs | /v1/runs |
Start a run, list history, events, cancel, retry. |
| Projects | /v1/projects |
Pipeline-driven multi-step workflows: lifecycle, gates, backtrack. |
| Workflows | /v1/workflows |
Versioned workflows — full CRUD. |
Knowledge + capability
| Resource | Path | What |
|---|---|---|
| Tools | /v1/tools |
The capability registry. |
| Skills | /v1/skills |
Versioned agent playbooks. |
| Memory | /v1/memory |
RAG entries (OTP-gated mutations). |
Account + integrations
| Resource | Path | What |
|---|---|---|
| API keys | /v1/api-keys |
Static cat_pk_* credentials — verified by the runtime, not the control plane. |
| Billing | /v1/billing |
Tier catalog, subscribe, wallet, top-up, period summary. |
| Integrations | /v1/integrations |
BYO credentials. |
| Scheduled jobs | /v1/scheduled-jobs |
Runtime cron triggers. |
Eventing
| Resource | Path | What |
|---|---|---|
| Events | /v1/events |
Queryable archive of runtime state changes. Poll it. |
| Webhook gates | /v1/webhooks |
Inbound gates: a pipeline step blocks until an external system calls back. List only. |
| Webhooks (outbound) | /v1/webhooks (public API) |
Outbound: Catentio POSTs to a URL you register when a run or project finishes. |
Conventions across resources
- Auth. Almost every route accepts the
x-catentio-sessionheader and nothing else. A Huudis Bearer JWT works only on billing, most of chat, and workspaces list/get/create/delete. API keys (cat_pk_*) are a runtime credential — the control plane never checks them. See Authentication. - No envelope. Responses are plain FastAPI JSON. Lists return
{ data, meta }wheremetavaries by route; detail routes return the object directly. There is noerrorkey, norequestId, notimestamp. - Pagination is
limit/offset. There are no cursors. - Errors are
{"detail": …}. Validation failures are422. Runtime failures are re-raised with the runtime's status and its payload nested underdetail. - No idempotency keys.
POST/PATCH/DELETEdo not honour anIdempotency-Keyheader; a retried POST fires again. - Identifiers. Workspaces use the Huudis-issued id (the control plane calls it
huudis_workspace_id). API keys are minted ascat_pk_…and referenced by an integer id. Projects use<title-slug>-<8 hex chars>(title-derived). Runs use a 26-char lowercase base32 id with no prefix. Event rows use integer ids. - Scope. Every route is scoped to the caller's
customer_idserver-side; acustomer_idin a request body is ignored. - Limits. No HTTP rate limiting. Tier plan caps (e.g. runs/day) reject with
403 plan_limit_exceeded.
Not on this list
Operational namespaces without a dedicated reference page:
/v1/system— health, info, reload./healthzand/v1/preflightalso exist./v1/discord,/v1/heartbeats,/v1/output-destinations,/v1/files,/v1/feature-flags,/v1/run-artifacts,/v1/runners,/v1/benchmarks,/v1/resources,/v1/miniapps— portal-facing surfaces./v1/gojo— internal tenant only./v1/chat— the chat-bubble backend./v1/crm-admin,/v1/customers— admin-only.
For wire-level detail on these, the FastAPI route definitions are the source of truth: control_plane/app/routes/ in saas-catentio, and app/runtime/ in catentio. There is no published OpenAPI file.
Next
- Authentication — what each credential actually opens.
- Runs — the resource everything else orbits.
- SDK overview — what the Node / Python / Go bindings can reach today.