API routes
All under /api/v1, authenticated with Authorization: Bearer vcn_live_… (or a session cookie). The generated spec is GET /api/v1/openapi; Swagger UI is at /api-docs. How-to: REST API.
| Resource | Routes |
|---|---|
| Workspace | GET /workspace · POST /workspace/pause · POST /workspace/resume |
| Agents | GET /agents · GET /agents/{slug} · GET|PUT /agents/{slug}/voice |
| Workflows | GET /workflows · GET /workflows/{slug} · POST /workflows/{slug} (start a run) |
| Runs | GET /runs (workflow runs) · GET /runs/{id} · POST /runs/{id}/feedback |
| Review | GET /reviews · GET /reviews/{kind}/{id} · POST /reviews/decide · POST /reviews/assign|snooze|signal|propose|rewrite · GET /reviews/auto-executed |
| Asks | GET|POST /asks · GET /asks/{id} · POST /asks/{id}/decide |
| Events | POST /events |
| Automations | GET /automations · GET /automations/runs · POST /automations/{slug}/pause|resume|run · GET /automations/{slug}/runs · GET /automations/{slug}/runs/{runId} |
| Missions | GET /mission-runs · GET /mission-runs/{id} · POST /mission-runs/{id}/cancel · GET /missions/{slug}/runs |
| Worker runs | GET|POST /worker-runs · GET /worker-runs/{id} · POST /worker-runs/{id}/claim|heartbeat|checkpoint|complete|fail|cancel · POST /runner/claim |
| Objects | GET|POST /objects · GET|POST /objects/types · POST /objects/{id}/analyze|external-ref|finding-feedback · GET|POST /objects/{id}/announce · GET /objects/{id}/learning-history|status |
| Sources | GET|POST /sources · POST /sources/{slug}/sync |
| Learnings | GET /learnings · GET|POST /learnings/{step}/rules · POST /learnings/{step}/rules/check · PATCH|DELETE /learnings/{step}/rules/{ruleId} · GET /learning-candidates · GET|PATCH /learning-candidates/{id} · POST /learning-candidates/{id}/decide |
| Evals | GET|POST /evals/{slug}/runs · POST /evals/{slug}/refresh · POST /evals/{slug}/model-upgrade-test |
| Budgets | GET /budgets · GET /budgets/agents |
| Login apps | GET /login-apps · PUT|DELETE /login-apps/{provider} (admin; never returns the secret) |
| Chat | GET|POST /chat-bindings · DELETE /chat-bindings/{id} · POST /chat-announcements · GET /conversations/{id}/records |
| Notifications | GET /notifications · GET|PUT /notifications/preferences · POST /notifications/read · GET /notifications/unread-count · GET /push/config · GET|POST|DELETE /push/devices |
| Live | GET /live (Server-Sent Events) |
| Artifacts and rooms | POST /artifacts · GET|PATCH /rooms/{id} · GET /rooms/{id}/export |
| Feedback | GET|POST /feedback |
Capabilities checked: approve (decide, upsert objects, set voice), manage_sources (sources, budgets), pause_automation, pause_workspace.
Outside /api/v1
| Path | Purpose |
|---|---|
/api/mcp | Hosted MCP (Streamable HTTP) |
/.well-known/oauth-authorization-server, /oauth/register|authorize|token|revoke | OAuth for MCP clients |
/api/connect/{provider}/start|callback | Vendor logins |
/api/webhooks/{github,slack,resend,drive,twilio/sms} | Inbound provider webhooks |
/api/artifacts/{id}/{file} | Artifact files, access-checked |
/api/invites/accept, /api/signup | Invites (sign-up is invite-only) |