Design templates with a visual editor. Render production PDFs with one REST call. No headless Chrome. No surprises.
$ curl -X POST https://airpdf-app.it/api/v1/render \
-H "Authorization: Bearer atl_live_…" \
-H "Content-Type: application/json" \
-d '{
"template": "invoice",
"data": {
"customer": {"name": "Acme Inc."},
"items": [{"label": "Pro plan", "amount": 99}]
}
}' -o invoice.pdf
→ 200 OK · application/pdf · 18 KB · 412ms
<500ms
render p95
99.95%
uptime SLA
8M+
PDFs / month
SOC 2
on roadmap
Trusted by developers at
“Stop fighting headless Chrome. Templates should be data, not screenshots.”
Airpdf · design principle
Product
A visual editor your designers can use. A stable REST API your engineers integrate in minutes. One workspace, built to scale.
Start for free →Drag-and-drop palette, canvas, property panel, variables manager — or switch to raw JSON. Live PDF preview, debounced 500ms.
No JSX eval. No headless browser. No runtime font fetches. A typed JSON tree → predictable, sandboxed, fast.
Stateless Node renderer pool. Sync under 25s, async via webhooks for heavy reports. Idempotent retries on transient errors.
Every workspace is a dedicated Postgres schema. Per-tenant API keys, quotas, and audit log. Scoped from the ground up.
Service-managed bucket or connect your own S3 / R2 / Wasabi / MinIO. Credentials encrypted at rest with AES-GCM. Presigned URLs by default.
Free tier + three paid plans + transparent overage pricing. Test renders never count against your live quota.
Workflow
Open the editor. Pick a starter or build from scratch. Drop pages, text, tables, images. Define variables with JSON Schema.
Generate an API key. Call POST /api/v1/render with the template slug and your data payload.
Sub-second render p95. Async queue for heavy reports. Real-time usage dashboard, signed webhooks, full audit log.
Architecture
Every layer is documented, observable, and replaceable. No black box. Click through to see how each piece fits.
Designers build templates with drag-and-drop. Engineers consume the same JSON tree at the API. No CSS surprises, no broken layouts in production.
One endpoint to render. One to poll. Two to introspect. Stable error codes, idempotency keys, rate-limit headers.
No headless Chrome. No JSX eval. A typed JSON tree compiled by react-pdf on a stateless pool — predictable, sandboxed, fast.
Default to our service-managed Wasabi bucket, or connect your own S3-compatible storage and keep everything inside your perimeter.
Async renders push their result back to your endpoint with HMAC-SHA256 signatures. Replay protected. Easy to verify in any language.
“The best API is the one you don't have to read the docs for. The second-best is documented end-to-end.”
Airpdf · developer experience
Developers
Clean REST. Consistent error codes. Idempotency keys. Rate-limit headers. HMAC-signed webhooks. Works everywhere.
5xx and timeouts
live
/ test
key environments
import Airpdf from "@airpdf/sdk";
const client = new Airpdf(process.env.AIRPDF_API_KEY);
const pdf = await client.render({
template: "invoice",
data: {
customer: { name: "Acme Inc." },
items: [{ label: "Pro plan", amount: 99 }],
},
response: "binary",
});
await fs.writeFile("invoice.pdf", pdf);
// → 412ms · 18 KB · application/pdf
Pricing
Slide to your monthly volume — we'll highlight the best plan and the exact cost.
Try the API.
Side projects.
Indie SaaS.
Growing SaaS.
High-volume products.
Dedicated rendering nodes, 99.95% SLA, SSO, audit log, custom contracts, dedicated Slack channel.
Up to 3× cheaper than DocRaptor on every tier. Taxes excluded. Monthly billing. Cancel anytime.
“Predictable cost. No throttling surprises. Every renderer call accountable to a single line on your bill.”
Airpdf · pricing principle
FAQ
live vs test). Test renders don't count against your live quota.
402
until the month rolls over. No hidden throttling.
50 free PDFs every month, forever. No credit card required. Workspace ready in 30 seconds.