Status: Draft v1. The spec currently covers authentication and the read-only catalog endpoints (plans, models, runtimes, tools, team templates). More endpoints are being added over time. Documented endpoints are stable — we only add fields, never rename or remove them, without a version bump.
Base URL
/api/v1/.
The OpenAPI spec
The full machine-readable spec is served straight from the backend and always matches the live API (it’s generated from the server code, so it never drifts):Authentication
All API calls authenticate with an API key passed as a Bearer token:Creating an API key
- Sign in at clawup.org.
- Go to Account → API Keys.
- Click Create key. The new key appears in the list.
- Click Reveal to show the key, then Copy it.
Keys are prefixedcu_. Older keys with aneb_prefix continue to work.
Quick example
Verify your key by fetching your own account:Available endpoints (v1)
| Method | Path | Description |
|---|---|---|
| GET | /api/v1/auth/me | The currently authenticated user |
| GET | /api/v1/plans | Subscription plans and their limits |
| GET | /api/v1/models | Provider × model catalog |
| GET | /api/v1/runtime/images | Available runtime types and images |
| GET | /api/v1/tools | MCP tool catalog |
| GET | /api/v1/teams/templates | Built-in team templates |
https://api.clawup.org/openapi.json for the authoritative, always-current list, request/response schemas, and which endpoints require authentication.
Errors
Errors use a consistent JSON shape:error field is a stable string code (e.g. AUTH_401); message is human-readable and may change. A 401 means the key is missing, invalid, expired, or revoked.
Versioning
Every route is under/api/v1/. Breaking changes ship as a new version (/api/v2/) and the old version keeps working during a deprecation window. Within a version, we only add optional request fields and additive response fields.