Rate limits
Every public request is metered against a per-workspace token bucket sized by your plan. All API keys in a workspace share one allowance. Three headers come back on every response, allowed or not:
Read them and self-pace rather than waiting to be rejected. A rejection is
429 with Retry-After; honour it.
The bucket is per workspace, not per subject — a single busy subject can spend the whole allowance, so pace high-volume subjects on your side.
A lapsed subscription falls back to the default plan’s limits rather than keeping its old ceiling.
Credits
Credits are prepaid and spent per run. Two things consume them:- Model usage — input and output tokens, priced by the agent’s model class.
- Priced patches — some workbench products carry a per-call price.
cost_credits, and each turn within a trace reports its own share. That is the fastest way to find out why a conversation cost what it did — usually a long context or many tool round-trips rather than the reply itself.
Starting out
Verifying your email address puts $20 of credit in the workspace. It lands once, on the workspace you own, the moment the address is confirmed — signing in with Google counts, because Google has already confirmed it. That is enough for a few hundred typical runs, so it is room to evaluate rather than a token. An unverified account holds nothing and cannot publish an agent or issue an API key, so verifying is the first thing worth doing. Top-ups are bought in the dashboard, and checkout accepts promotion codes.Running out
A workspace with no balance gets402 on the next billable call:
What is charged
We charge outcomes, not requests: a closed run that was not a platform failure, and anidentified result on Identify. A run that fails on our side is not billed.
Plan prices, monthly allotments, and per-second limits are listed on the pricing page in the dashboard, which is the current source of truth.