Skip to main content

Rate Limits

PDFBolt enforces separate rate limits for PDF rendering and Template API management operations. The applicable limits and retry strategy depend on the endpoint.

Conversion API and Rendering Limits

The Conversion API endpoints (/v1/direct, /v1/sync, and /v1/async) use limits determined by your plan. These limits are shared by the current team across all of its API keys. Template API preview and diff requests perform real PDF renders and count toward the same limits.

Rate Limits per Plan

PlanPer minuteConcurrent
Free201
Basic1005
Growth25020
Enterprise50050

Need higher limits? Contact us for a custom plan.

How Conversion Rate Limits Work

PDFBolt uses a sliding window algorithm. Your usage is tracked in real time across the per-minute, per-hour, and per-day windows. When you reach any limit, further requests are temporarily blocked with HTTP 429 Too Many Requests until your usage drops below the limit.

The concurrent request limit restricts how many requests can be processed at the same time. Requests that exceed this limit are rejected immediately with HTTP 429.

Asynchronous Endpoint

For /v1/async, the concurrent limit applies only while the request is being accepted. After acceptance, the conversion runs in the background and no longer counts toward the concurrent request limit.

Limits in Response Headers

Responses to requests that pass the conversion rate limiter include usage headers so you can monitor your limits in real time:

HeaderDescription
x-pdfbolt-limit-dayTotal allowed requests per rolling 24-hour window.
x-pdfbolt-limit-hourTotal allowed requests per rolling 1-hour window.
x-pdfbolt-limit-minuteTotal allowed requests per rolling 1-minute window.
x-pdfbolt-remaining-dayRemaining requests in the rolling 24-hour window.
x-pdfbolt-remaining-hourRemaining requests in the rolling 1-hour window.
x-pdfbolt-remaining-minuteRemaining requests in the rolling 1-minute window.

Exceeding Conversion Rate Limits

When a request exceeds one of these limits, the API returns HTTP 429 Too Many Requests without a Retry-After header. Retry using exponential backoff with jitter.

Template API Management Limits

Authenticated Template API management requests are subject to per-user limits measured over rolling windows. These limits apply to listing, retrieving, validating, saving, and publishing templates.

Rolling windowRequests per userRetry-After on 429
1 minute36060 seconds
1 hour6,0003,600 seconds

The following Template API requests use different rate-limit rules:

  • GET /v1/templates/contract is public and is not rate limited.
  • POST /v1/templates/preview and POST /v1/templates/{templateId}/diff are not subject to Template API management limits. Because they render PDFs, they use the plan-based Conversion API limits described above.

Successful management responses do not include the x-pdfbolt-limit-* or x-pdfbolt-remaining-* usage headers. When a management limit is exceeded, the API returns HTTP 429 Too Many Requests with a Retry-After header. The header contains the full duration of the limiting window, not the exact time until an individual request leaves the rolling window.

Wait at least the number of seconds specified by Retry-After, add a small random jitter, and then retry. If the retry is rejected, wait for the new Retry-After value before trying again.

For details on this and other errors, see the Error Handling documentation.

Need Higher Limits?

If your application requires higher throughput or custom limits, contact us. We offer tailored plans with higher rate limits and more concurrent requests.