Rate limits and usage
Per-key rate limits, the headers that report them, and the limits of each plan.
Rate limits
Each key is limited to its own number of calls a minute, shared by every server that holds the key. The limit is set when the key is made, from 1 to 1,000, and is 60 by default. A call over the limit is answered 429 with the code rate_limited and a Retry-After header in seconds.
| Header | Meaning |
|---|---|
X-RateLimit-Limit | Calls a minute the key is allowed. |
X-RateLimit-Remaining | Calls left in the current minute. |
X-RateLimit-Reset | Seconds until the minute resets. |
Retry-After | On a 429 only: seconds to wait before the next call. |
A call with a key that is wrong, revoked or expired is counted against the network address that sent it, and an address that sends many is slowed down.
Limits of each plan
The rate limit belongs to the key and is the same on every plan that includes the API: 1 to 1,000 calls a minute, 60 by default. What differs by plan is the allowance a call uses. These are the figures the API enforces.
| Plan | API | Tasks | Largest file | Files in one run | AI credits a month | Signature requests a month |
|---|---|---|---|---|---|---|
| Free | Not included | 3 a day | 25 MB | 5 | None | 2 |
| Pro | Not included | 2,000 a month | 100 MB | 25 | 500 | 50 |
| Team | Included | 10,000 a month | 250 MB | 50 | 2,500 | 300 |
| Business | Included | 50,000 a month | 500 MB | 100 | 10,000 | 1,500 |
| Enterprise | Included | 100,000 a month | 1000 MB | 200 | 20,000 | 5,000 |
Enterprise limits are agreed with each customer, and the figures above are where they start. A limit can also be changed for one account by PDF Loft.
Usage and plan limits
API calls are counted in the same shared task pool as the web apps and the mobile and desktop apps. One task is one output file produced by a tool, as everywhere in PDF Loft. A run reserves its tasks when it starts, commits them when it succeeds, and gives them back when it fails or is cancelled. When the pool is used, a run is refused with tasks.exhausted and the details name the reset time. The largest file and the files per run follow the plan of the account.