Rate limits

Per key, enforced at the edge — exact, not a per-worker approximation.

The four limit fields

  • 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. Open reservations count immediately, so concurrent requests cannot bypass token or spend caps. Full per-key control set: authentication.

The 429 names the knob

Every 429 names the limit you hit and the place that raises it:

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",
 "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. Token and spend caps use usage_limit_exceeded.

Size limits

Request bodies over 10 MB are refused with 413 payload_too_large before being read in full. A prompt over the model’s context window returns 400 context_too_long, naming the token counts.