FAQ
Frequently asked questions about PDF-API.
General
What is PDF-API?
PDF-API is a service that lets you generate PDF documents from templates via a REST API. You design your templates using our visual editor or HTML/Twig, then call the API with your data to produce a PDF.
What can I use PDF-API for?
Common use cases include:
- Invoices, quotes, and receipts
- Contracts and agreements
- Reports and dashboards
- Certificates and diplomas
- Shipping labels and packing slips
What is the difference between the WYSIWYG and HTML editors?
The WYSIWYG editor is a visual drag-and-drop editor where you place elements on a canvas. It's the fastest way to create simple templates. The HTML editor lets you write HTML with Twig templating syntax for full control over layout, conditional logic, and multi-page documents.
API
What output formats are supported?
You can receive the generated PDF in three formats:
- base64 — base64-encoded string in a JSON response (default)
- url — a temporary signed URL valid for up to 24 hours
- binary — raw PDF bytes
What are the rate limits?
All API endpoints are limited to 60 requests per minute per authenticated user. See Rate Limits & Quotas for details.
Can I use the API without a subscription?
Yes. The Free plan gives you 100 PDF generations per month and 1 template at no cost. You can upgrade anytime if you need more.
Templates
Can I upload my own PDF as a base?
Yes, on the Pro plan. You can upload an existing PDF and overlay dynamic fields on top of it. This is ideal for pre-printed forms, contracts, and branded documents.
How many templates can I have?
Free: 1 template. Basic: up to 10. Pro: unlimited. See Plans & Billing for the full comparison.
Is there version history?
On the Pro plan, each template keeps up to 10 previous versions. You can view and restore any saved version.
Teams
Do team members need their own subscription?
No. Team members operate under the team owner's subscription. Only the owner needs a Pro plan.
How is the API quota shared?
The monthly PDF quota is shared across the entire team. All generations by any team member count toward the owner's quota.
Billing
What happens if I exceed my monthly quota?
Generation stops until the next billing period, on every plan — the API answers 429. There is no pay-as-you-go overage; upgrade the plan if you need more headroom.
Can I switch plans at any time?
Yes. Upgrades take effect immediately with prorated billing. Downgrades take effect at the end of the current billing period.
Is there a yearly discount?
Yes. Yearly billing saves you the equivalent of 2 months compared to monthly billing on Basic ($200/yr vs. $240/yr) and Pro ($650/yr vs. $780/yr).
Security
How are API tokens secured?
Tokens are hashed before storage and cannot be viewed after creation. You can restrict token permissions and revoke them at any time. We recommend storing tokens as environment variables.
How are webhooks secured?
Every webhook request is signed with an HMAC-SHA256 signature using your webhook's unique secret. You should verify this signature before processing the payload. See Webhooks for implementation examples.
Where are generated PDFs stored?
When using the url output format, PDFs are temporarily stored on secure cloud storage. Temporary URLs expire after the specified duration (default: 60 minutes, max: 24 hours). With base64 or binary output, the PDF is returned directly and is not stored on our servers.
