Overview
The Kaiten REST API reference, generated from the OpenAPI specification.
Every page in this section is generated from an OpenAPI specification, so it never drifts from the running API. Each operation and each domain event gets its own page with the full request and response schemas, plus a Try it panel.
The two specifications
REST API
The main API: customers, instances, licenses, entitlements, feature flags, releases and the outgoing domain events. Authenticated with a service account token.
Platform API
Platform-wide operations — organizations, users and token minting.
Authenticated with a platform token (ksm_...), which carries no organization
execution context.
Base URL
On the REST API pages, the Try it panel and the request samples default to Kaiten Cloud; switch the server to point them at your own installation:
| Server | Base URL |
|---|---|
| Kaiten Cloud | https://app.kaiten.sh/api |
| Self-hosted (Docker Compose) | http://localhost:6060/api |
| Cloud, custom domain Coming soon | Your own domain, e.g. https://your-domain.com/api |
The Platform API pages offer one server, the Platform listener of a self-hosted
stack — http://localhost:6001/api — because that API is not reachable on Kaiten
Cloud.
Before you start
Both APIs expect a bearer token. See Authentication for how to create one, which scopes it needs, and how to rotate it.
Never ship a token to the browser
Service account tokens are long-lived and carry every scope you granted them. Call the API from your backend, and hand your frontend a short-lived credential instead.