Every document, on the record.
PDFRelay renders your HTML to archival-quality PDF with one authenticated POST. Chromium-exact, quota-metered, cached for identical payloads. Filed, stamped, returned.
Render proof
Paste HTML, render a watermarked proof, no signup. The same Chromium engine the API uses.
CTRL/⌘+ENTER TO RENDER · FREE · NO SIGNUP
First render in five lines
curl -X POST https://www.pdf-relay.com/api/v1/pdf \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"html": "<h1>Invoice #1042</h1>", "options": {"format": "A4"}}' \
--output invoice.pdfFull request schema, options, and error codes in the API docs.
The register
| Ref | Entry | Specification |
|---|---|---|
| R-01 | Playwright rendering | Real headless Chromium via Playwright. Your CSS, fonts and page breaks come out exactly as the browser draws them. |
| R-02 | Per-key quotas | Every API key carries its own monthly ledger and rate line. Usage is countable, auditable, and visible in the dashboard at any hour. |
| R-03 | Short-TTL render cache | Identical payloads within a short cache window return the cached document instantly. No double billing, no redundant renders. |
| R-04 | SSRF-hardened fetching | Outbound asset fetches are resolved, filtered, and confined to public addresses. Internal networks stay off the record. |
What teams render
Invoices
Per-order PDFs generated on checkout, styled from the same HTML template every time.
Reports
Scheduled or on-demand exports (usage summaries, dashboards, statements) rendered straight from your app's markup.
Contracts
Signable agreements built from a merge-field template, ready to send the moment terms are confirmed.
Tickets
Event or boarding passes with barcodes and dynamic seat data, rendered per attendee at purchase time.
Live pages
Any public URL rendered as-is, fetched through an SSRF-guarded request with no separate template to maintain.
Schedule of fees
Compare the engines
Honest, feature-by-feature comparisons: PDFRelay vs PDFShift · PDFRelay vs DocRaptor · PDFRelay vs DIY Puppeteer