Skip to main content
These pages do not send requests. Run requests from your own machine, with the key in your program’s environment:
Every error has the same body. See Errors and limits.

Versions and request ids

Send Abstract-Version to pin the API version your client was written for. 2026-10-27 is the only version. A request without the header is answered under the newest version. A version the API does not answer is refused with 400 unsupported_api_version before anything runs, so nothing is billed. Every answer names the version it was made under in its own Abstract-Version header.
Every answer from a /v1/ route carries a Request-Id header: req_ and 32 hex characters, new for each HTTP attempt, a retry included. An error repeats it in its body as error.request_id, and a robot route’s error also as status.request_id. Quote it when you report a problem. A robot answer also carries X-Trace-Id, which names the reply rather than the attempt: a replayed answer keeps its trace. See Robot action API.

Chat completions

The LLM models.

Robot actions

End-effector and native joint action models.

Catalog

The LLM model ids.

Chat completions

The model in the body names an LLM model: family-version, with an optional variant (glm-5.3, glm-5.3-flash). A robot model id (origin/model) is refused with use_get_action.

Robot actions

Use GET /v1/environments/models for the available robot IDs. YAM models and Xiaomi’s native ARX X5 checkpoint return end-effector chunks. FLUX’s DROID checkpoint takes native Franka joint state and returns actions.joint_chunk with action_space: "joint_position". Their camera roles, gripper conventions and cadences differ; follow the selected model’s request contract.

CLI credentials

abstract login signs in through WorkOS and creates a key directly through the API. abstract logout refreshes the saved sign-in and revokes that key. API keys and browser cookies do not authenticate these credential endpoints. Creation requires a payment method or available account credit and returns api_key, key_id and base_url. The secret is returned only once. Revocation returns revoked: true, or false if the account has no key with that id. All credential responses disable caching. Use the CLI to manage sign-in tokens rather than copying them by hand.