Operate

Rate limits

Control request rate, token usage and spending for each key. Auto Free quotas apply across your account.

Auto Free quotas

Auto Free quotas are shared across every key on your account. Creating another key, adding credits, or raising a key limit does not increase the free allowance. Daily quotas reset at 00:00 UTC.

See the Auto Free API guide for setup, account limits, and the separate chat trial.

The four limit fields

FieldLimits
rpmLimitrequests per minute
tpmLimitestimated input and output tokens per minute
dailyLimitNanodaily spend cap in nano-USD
monthlyLimitNanomonthly spend cap in nano-USD

Each is set per key in the dashboard. Defaults are lower for accountless keys. In-progress requests count toward token and spend limits. The full per-key control set is on the authentication page.

When you receive a 429

For configurable key limits, the 429 names the limit and where to change it. Auto Free quotas are fixed: wait for their reset instead.

What a 429 looks like
HTTP/1.1 429 Too Many Requests
Retry-After: 12

{"error":{"message":"Rate limited: this key allows 60 requests/minute.
 Raise it at https://minirouter.sh/dashboard/keys.
 Limits: https://minirouter.sh/docs/rate-limits",
 "type":"invalid_request_error","code":"rate_limited"}}

Retry-After is always present. Back off that many seconds and retry the identical request. Full entry: rate_limited. Request, token and concurrency limits use usage_limit_exceeded, also 429 with Retry-After.

When you receive a 403

A spend cap returns 403 spend_limit_exceeded when the request is refused before the first byte, naming the cap, where to raise it and when the window resets. Retrying before the reset repeats the same error. A cap crossed mid-stream ends the stream with the existing usage_limit_exceeded event, because bytes have already been sent.

Size limits

Request bodies over 32 MB are refused with 413 payload_too_large . A prompt over the model’s context window returns 400 context_too_long, naming the token counts.

Esc