Docs / Rate limits

Rate limits

Requests per minute, concurrency, key limits and per-request caps.

LimitValueWhen exceeded
Requests per minute120 per key, and 120 per wallet across all its keys429 rate_limit_exceeded
Requests at once10 per key, and 10 per wallet429 rate_limit_exceeded
Hold per request25 credits400 request_too_expensive
Held at once per wallet50 credits, or your own lower hold limit429 too_many_in_flight
Daily limit per keyOptional, set by you429 key_limit_exceeded
Active keys20 per walletCreate fails

429 responses carry retry-after in seconds. Wallet limits are the sum over all of a wallet's keys, so more keys don't mean more throughput.

Hold limit

The program caps how much of one wallet's balance running requests can hold at once. You can set a lower cap for your wallet on /app/balance. The program enforces it, so it also limits how much a leaked key can hold at a time. A leaked key can still spend over time: revoke it on /app/keys.

Daily limit

A key's daily limit counts the credits it spent since 00:00 UTC plus what its running requests hold. Set it when you create the key on /app/keys.

Provider limits

When the model provider rate-limits a request, its 429 comes back unchanged with its retry headers, and nothing is charged.