The OpenAPI spec is loaded from ./openapi.json in docs.json. Use this page as a quick map, then use the spec for exact schemas.
| Method | Path | Purpose |
|---|
GET | /api/v1/projects | List projects. |
POST | /api/v1/projects | Create a project. |
GET | /api/v1/projects/{id} | Get project details. |
PATCH | /api/v1/projects/{id} | Update a project. |
DELETE | /api/v1/projects/{id} | Delete a project. |
POST | /api/v1/projects/{id}/refresh | Refresh all ready demos in a project. |
| Method | Path | Purpose |
|---|
GET | /api/v1/demos | List demos. |
POST | /api/v1/demos | Create and queue a demo. |
GET | /api/v1/demos/{id} | Get demo details and status. |
PATCH | /api/v1/demos/{id} | Update demo metadata. |
DELETE | /api/v1/demos/{id} | Delete a demo. |
POST | /api/v1/demos/{id}/refresh | Re-record a demo. |
POST | /api/v1/demos/{id}/restyle | Re-record with new presentation settings. |
| Method | Path | Purpose |
|---|
GET | /api/v1/demos/{id}/video | Stream video. |
GET | /api/v1/demos/{id}/gif | Fetch GIF preview. |
GET | /api/v1/demos/{id}/thumbnail | Fetch thumbnail. |
GET | /api/v1/demos/{id}/snapshots/{index} | Fetch analysis snapshot. |
GET | /api/v1/demos/{id}/debug-stills/{index} | Fetch recorder still. |
| Method | Path | Purpose |
|---|
GET | /api/v1/api-keys | List API keys. |
POST | /api/v1/api-keys | Create live or publishable key. |
DELETE | /api/v1/api-keys/{id} | Revoke key. |
GET | /api/v1/usage | Read plan and usage. |
GET | /api/v1/credits | Read credit balance and packs. |
POST | /api/v1/credits/purchase | Purchase a credit pack. |
GET | /api/v1/credits/auto-topoff | Read auto top-off settings. |
PUT | /api/v1/credits/auto-topoff | Update auto top-off settings. |
GET | /api/v1/credits/transactions | List credit transactions. |
| Method | Path | Purpose |
|---|
GET | /api/v1/backgrounds | List backgrounds. |
POST | /api/v1/backgrounds/upload | Upload background. |
GET | /api/v1/backgrounds/custom/{key} | Serve uploaded background. |
POST | /api/v1/embed/generate | Generate or reuse a dynamic embed demo. |
GET | /api/v1/embed/runtime | Render a signed runtime iframe for trusted integrations. |
GET | /api/progress/{demoId} | Poll generation progress. |
GET | /api/ws/{demoId} | Subscribe to generation progress over WebSocket. |
POST | /api/v1/webhooks/projects/{id}/refresh | Refresh project demos from CI/CD. |
POST | /api/v1/device/code | Start CLI device authorization. |
POST | /api/v1/device/token | Poll for CLI access token. |
POST | /api/v1/device/authorize | Approve a device code from the browser. |
GET | /api/health | Health check. |