PlanDocket

Rate Limiting

Information about request limits and how to handle them.

Request Limits

The request limit is set individually for each API key by your administrator in the admin area under Settings > API. It does not depend on your subscription package.

Default per API key 1,000 requests per hour
Configurable range 100 to 10,000 requests per hour (there is no unlimited option)
Time window Rolling 60 minutes: all requests of the past hour are counted, including rejected ones
Counting Each API key is counted separately

Your subscription package only decides whether API access is included at all. Without API access, every request returns 403 with the message that API access is not included in your package.

Rate Limit Headers

The X-RateLimit-* headers below are planned for a future release and are not sent yet. Currently, a request over the limit returns status 429 with a Retry-After header (in seconds).

Header Description
X-RateLimit-Limit Maximum number of requests per hour
X-RateLimit-Remaining Remaining requests in current window
X-RateLimit-Reset Unix timestamp when the limit resets

Limit Exceeded

When the limit is exceeded, you will receive a 429 response:

HTTP/1.1 429 Too Many Requests
Retry-After: 60
Content-Type: application/json

{
  "error": "Rate limit exceeded"
}

The error message is localized, so check the HTTP status code 429 rather than the text. Wait at least the number of seconds given in Retry-After before retrying; requests are accepted again as soon as older requests drop out of the 60-minute window.