API
Rate limits
Simple, per key, and the same for everyone.
Current limits
| Limit | Value | Scope |
|---|---|---|
| Requests | 60 per 60 s, sliding window | Per API key |
| Request body | 1,000,000 bytes | Per request |
| max_tokens | Model's max_output_tokens (131,072 for GLM 5.3 Flash), minus the room the prompt takes | Per request, clamped |
| Concurrent streams | Not limited separately; each counts as one request | Per API key |
| Tokens per minute | Not limited | — |
The request limit is enforced at the edge before the model server sees anything, so throttled requests cost nothing and don't appear in your usage logs. Limits are per key, not per account: two keys get two allowances.
Hitting the limit
HTTP/2 429
retry-after: 10
content-type: application/json
{"error":{"message":"Rate limit exceeded for this API key. Slow down and retry.","type":"rate_limit_error","code":null}}- Sleep for
retry-afterseconds before the next attempt. The OpenAI SDKs do this automatically with their built-in retries. - Spread bursts out: a queue that releases one request per second never trips the limit.
Scaling past it
Need more than 60 requests a minute on one key? Issue several keys from the dashboard and shard traffic across them; they share the same credit balance. If you have a sustained workload well above that, get in touch and we'll raise the per-key limit.
Rate limits are separate from credits. A
429 means "too fast"; a 402 means "not enough balance". See Errors.