https://api.abstract.inc/v1.
One API key works for every model.
You send the key as a Bearer token.
Quickstart
Choose a checkpoint, send an observation, and get robot actions.
API reference
Every endpoint of
api.abstract.inc, with its request and answer.Robot action models
A robot model turns one observation into one chunk of actions. An observation is the task as text, recent JPEG camera frames, and the state fields required by the selected model. A chunk contains end-effector poses or joint targets, identified by the answer’saction_space.
Your controller checks the rows before executing them in order at the model’s control rate.
Call a robot model with POST /v1/get_action, one observation per request. A session_id ties the requests of one episode together.
MolmoAct2
allenai/molmoact2Ai2’s MolmoAct2. One frame per camera, no state between requests.Rho
microsoft/rhoMicrosoft’s Rho-YAM-Box. Trained on end-effector poses.Isaac 0.5
perceptron/isaac-0.5Perceptron’s Isaac 0.5. One frame per camera, no state between requests.π0.5
physical-intelligence/pi0.5A community fine-tune of π0.5. One frame per camera, no state between requests.Verne V0.5
verne/v0.5Verne’s pretrained base checkpoint, not tuned to any robot. Keeps a memory of the episode.Praxis-1
runway/praxis-1Runway’s video-action policy for the bimanual YAM. Reads the frames of the chunk just run.Xiaomi Robotics 1
xiaomi/xiaomi-robotics-1The RoboDojo fine-tune for two ARX X5 arms. Takes measured joints and world-frame poses;
returns world-frame end-effector targets.FLUX 3 Action
black-forest-labs/flux-3-actionThe native Franka DROID checkpoint. Takes seven joint angles and one gripper state;
returns joint targets and gripper predictions.origin/model.
origin names who made the weights.
model names the weights.
The YAM checkpoints take and answer end-effector poses: where each gripper is, and where it should go next.
Your controller turns each pose into joint angles with inverse kinematics.
These checkpoints were trained on two YAM arms, with one overhead camera and one camera on each wrist, and are untested on other arms.
Xiaomi and FLUX use their own native robots and camera layouts.
GET /v1/environments/models lists the robot models you can call. Each has its own
state, camera and action contract.
LLMs
The LLMs speak the OpenAI Chat Completions API atPOST /v1/chat/completions.
Each LLM returns its answer in the HTTP response, or as server-sent events with stream: true.
Accounts and spend
Every account has a hard monthly spend limit. Each request reserves its maximum cost against that limit before it runs. The request then settles from the usage its answer reports. A request that would cross the limit is refused withspend_limit_exceeded.
Inference also requires enough available API credit to cover the reservation.
A saved payment method alone does not fund usage. Buy credit in
Platform Billing.
Accounts granted a credit exemption still have a hard monthly spend limit.
Do not send sensitive data until retention controls and their defaults are documented.
Explore
Robot models
Cameras, state, and action shapes for each model.
Robot episodes
Send observations and run an episode with a
session_id.Robot action API
get_action and end_session, with each model’s state and action contract.LLM chat completions
Call the LLM models with the OpenAI SDK.
Errors and limits
Every error code and what to do about it.