Managed PDF generation API
Ship PDFs,
not PDF infrastructure.
Create a reusable template from a production design, an existing PDF, or a plain-English brief. Send JSON through one API and receive a consistent, production-ready PDF in ~2s.
Billed to
Acme Corp
440 Halide Ave, Portland
Issued
2026-08-16
| Design services | 2,400.00 |
| Front-end build | 480.00 |
| Tax (6.875%) | 198.00 |
| Total due | $3,078.00 |
02Production runtime
Same input. Same document.
Rendering follows a fixed production path. Retries stay safe, tests stay stable, and a historical template version keeps producing the document you approved.
- Versioned templates that do not drift
- Idempotent retries and signed delivery
- Every generation logged with timing
03Production-safe documents
Every template is a typed API.
doclinth derives a JSON Schema from every template — generate TypeScript, Zod, or Pydantic, and validate data before it renders. Then it stress-tests the layout with adversarial data, so the break never reaches your customer.
- Contract · tmpl_invoicedraft 2020-12
type InvoiceData = { customer: { name: string }; items: { description: string; amount: number; }[]; currency: string; total: number; };typescript · zod · pydanticvalidated pre-render - baselineInvoice№ 4021Total129.00
sample data
- long_strings
NAKAMURA, OSTERWALD & PARTNERS CONSOLIDATED PROFESSIONAL LEGAL SERVICES OF EAST ROTTERDAM B.V.
Total129.0094-char name wraps, never clips
- many_rowscarried fwd ▸8,340.00p. 1 / 2
60 rows · breaks land clean
- unicode請求書№ 4021
山田電機株式会社 御中
الإجمالي المستحق
Ergänzung — café 🎉
合計¥12,900CJK · RTL · emoji
- broken_imageslogo№ 4021Total129.00
missing logo · layout holds
- empty_arraysInvoice№ 4021— no line items —Total0.00
renders · totals zero
- Passed for press
04The production details
Built for the parts that break.
Pagination, retries, long-running jobs, and audit history are already part of the system — each documented, with its limits stated.
- Deterministic
- AI authors the template; the generation path never calls a model.
- Managed Chromium
- Real headless Chrome on our side. One HTTPS call on yours.
- Render options per request
- Format, landscape, margins, metadata and filename, set on the call.
- Pagination that holds
- Multi-page tables, running headers, breaks that land clean.
- Idempotent
- One header, and retries never double-print.
- Async, with receipts
- Long jobs deliver through signed webhooks.
- The system of record
- Versioned templates, logged generations, revocable keys.
05Agents and automation
One document API for your app — and your agents.
Author once, then render through REST, typed Node and Python SDKs, OpenAPI, or MCP. You keep the keys, the logs, and the kill switch.
An agent session, unattended: over MCP the agent calls create_template with a one-sentence prompt and gets tmpl_receipt back; it then calls generate_pdf with order data and receives a signed PDF URL in under two seconds. Each run prints the same receipt, run after run.
MCP
https://doclinth.com/mcp
Claude Code and any MCP client: four tools behind one URL.
SDK
npm i @doclinth/sdk
Fully typed, zero dependencies. Retries never double-print.
REST
GET /openapi.json
Every other framework, plus llms.txt for agents that read docs.
- keys
- scoped per agent, revocable
- every run
- logged, with the exact payload
- urls
- signed, expiring
06Trust, in public
Run the request. Inspect the evidence.
The API contract, changelog, pricing limits, security practices, and a real request are all inspectable before signup — evaluate the whole integration first.
curl https://doclinth.com/v1/generate \
-H "authorization: Bearer dl_test_your_key" \
-H "content-type: application/json" \
-d '{ "template_id": "tmpl_receipt", "data": { "order_id": "4021" } }'- Set in
- Besley · Archivo · Fragment Mono
- Rendered by
- managed headless Chromium
- The spec
- openapi.json
- The record
- changelog, from day one
- Every run
- logged, with timing
- A person
- support@doclinth.com
07Pricing without traps
Start free. Scale without surprises.
The free plan is enough to build and verify the integration. Paid plans raise the volume and remove the doclinth badge from output — never seats, usage games, or surprise overages.
- 50 documents each month at $0
- Starter from $15 per month
- Hard limits, never automatic overages
| Free | 50 docs | $0 |
| Starter | 500 docs | $15 /mo |
| Pro | 5,000 docs | $49 /mo |
| Scale | 50,000 docs | Custom |
YOUR FIRST DOCUMENT IS WAITING
Bring the document. Keep the design.
Import a PDF or start from a prompt. Your first 50 documents are free, with no credit card and no infrastructure to operate.