Skip to content
AtheronDEVELOPERS
← ATON Kestrel API

Kestrel API errors and limits

Every error code, what caused it and what to do; rate limits by seat.

Sign in to see your own test client ID in the samples.

Errors have the shape { "error": "...", "error_description": "..." }, the same as the rest of the developer API.

CodeStatusCauseWhat to do
invalid_key401No key, not ours, expired or revoked.Send a key with the kestrel right.
missing_right403The key has no kestrel right.Make a key with it.
no_seat402A live key that is not on an active seat.Put the key on a seat on the Kestrel API page.
tier_too_low403The endpoint needs a higher seat. It was not counted.Upgrade the seat.
allowance_used429A free seat used its month's calls.Wait for next month, or buy a paid seat.
invalid_version400Kestrel-Version is not v<major>.<minor>.<patch>.Send a version from /versions.
unknown_version404Not published, or retired.Pin a published version.
not_published503No version is published yet.Join the waitlist.
rate_limited429Over your app's per-minute quota.Wait the Retry-After seconds.
user_token_needed401A trading call without the person's token.Send Atheron-User-Token.
live_trading_closed403Live orders before live trading opens.Use the paper endpoints.
not_connected503Trading through the API is not connected yet.Try again later.
too_many_backtests429Five already waiting or running.Wait for one to finish.

Rate limits

Requests per minute: Builder 60, Pro 300, Studio 1,200, Enterprise agreed. Over the limit, requests are refused with Retry-After and still count against your quota, so a retry loop keeps you over it.

Ask Atlas

AI assistant

Ask anything about Sign in with Atheron, the API or the portal. You get an answer from our docs, with links to the pages it used.