Skip to main content
The asobeast API is the same API the dashboard uses. Every endpoint on it requires authentication, and the endpoint pages in this tab are generated from the API’s own OpenAPI document.

Base URL

There are two, and which one you use depends on where your code runs. The proxy path is not a convenience wrapper. In the Compose stack the API stays on a private network and is never published, so the web origin is the only way in from outside the host. The proxy forwards your Authorization header unchanged.

Authentication

Send a personal API token as a bearer header on every request. See Authenticate API requests.

Content type

JSON in, JSON out. Send Content-Type: application/json on any request with a body. Errors are JSON too, in a consistent envelope. See Error responses.

The OpenAPI document

Your own instance serves it at /docs-json, with human readable documentation at /docs. Both are gated by API_DOCS, which defaults to owner. An unauthenticated request answers 404 rather than 401, because the surface does not confirm it exists. See The queue dashboard and the OpenAPI surface. The copy powering the endpoint pages in this tab is committed in the repository, so this documentation site never needs a running instance to build.

Generate a client

Any OpenAPI generator works against the document.
If you write TypeScript, consider using @asobeast/shared directly instead. It holds the same contract types the API and the dashboard are built from, which is what the MCP server does.

API conventions

UTC dates, 1 based positions, 202 for queued work.

Personal API tokens

Mint and revoke the credential.
Last modified on July 31, 2026