Guides

Limits and quotas

The free plan's numbers, how each response tells you where you stand, and what to do when you hit one.

The limits

Requests per month500Per account, across all its keys. Resets at 00:00 UTC on the 1st.
Requests per minute30Per key.
File size50 MBThe upload itself.
Unpacked size250 MBEverything inside the file's ZIP, uncompressed.

Your dashboard shows this month's use. GET /v1/usage returns it from code, and does not count as a request.

What counts

Every call to /v1/check or /v1/repair whose upload we accept counts as one request, whatever the verdict — including a file we answer with a 4xx such as encrypted_package, because it was processed. Requests refused before the upload is read (a bad key, a missing Content-Length, a file over 50 MB, a rate limit) don't count, and neither does any request that fails on our side with a 5xx.

Headers

Responses from the counted endpoints carry where you stand:

X-Quota-Limitinteger
Your monthly quota.
X-Quota-Remaininginteger
Requests left this month after this one.
X-Request-Idstring
The request's id, on every response.
Retry-Afterseconds
On 429 and 503: when to try again.

When you hit one

All three are 429; the code says which. rate_limited clears within a minute — wait for Retry-After and retry. quota_exceeded lasts until the month resets, and its Retry-After says when. daily_limit means the service as a whole reached its daily ceiling; try again tomorrow.