Skip to content

Rate limits & quotas

Live numbers, read from the server rather than transcribed.

Two buckets

BucketKeyed onWhat it protects
EdgeYour IP, on a normalised pathAn anonymous flood. Deliberately looser than your per-credential bucket, so it is a ceiling over it and never a surprise floor under it.
Per credentialYour key or OAuth grantYour own allowance. This is the one the X-RateLimit-* headers describe.

Both fail closed. If our rate-limit store is unreachable we refuse rather than wave traffic through — the limiter is the only thing between a retry storm and the credit ledger, and a store outage is exactly when a storm is most likely.

Body size

Only the materials upload path carries the large-body cap. Every other path inherits a small default and will answer 413 for a file the materials path would accept. If you are getting a 413 on a size the docs call fine, you are almost certainly posting to the wrong path.

Is there a sandbox key?

No. There is no test mode and no free tier of the API. Clerk issues keys with ak_test_ and ak_live_ prefixes and AskDeck treats them identically — both spend real credits. Silence on this question reads as a bait-and-switch, so: there is no sandbox.