Skip to main content
Documents is the archive of PDFs in your hosted account. API renders are saved there automatically, and you can work on saved documents in the Dashboard’s Document Editor (redact, certify, merge).

How documents are created

Save options on sync renders

  • save: false — do not save.
  • saveName: "Q1 Report" — the document name. Default: {slug}-YYYY-MM-DD for templates, html-YYYY-MM-DD for /v1/render/html.
  • metadata — your own key-value pairs (paid plans). See Metadata.
The save happens after the response is sent. A render response does not include the document ID. Find the document with GET /v1/documents, for example by a metadata value you set.

Metadata

Each saved render has system metadata: renderTimeMs, plus templateSlug (template renders) or input: "html" (/v1/render/html). Your metadata keys are merged into the same object.
Filter by your keys with metadata.<key> query parameters on GET /v1/documents.

Retention

When a document is saved, it gets an expiry date (expiresAt) from the account’s plan at that time: After expiresAt, the document and its PDF are permanently deleted. The deletion can happen some time after expiresAt, so do not rely on a document being gone at an exact time. Changing plans does not change the expiry of documents that are already saved. See the Billing page in the Dashboard for current plan details.
To keep PDFs beyond the retention period, store them yourself: use the response bytes, the s3 option, or download them with downloadUrl.

Download URLs

GET /v1/documents/:id returns a downloadUrl. It is a signed URL that expires 1 hour after the request. Ask again for a new URL. The storage location of the PDF itself is never returned.

Audit trail

Actions on a document are logged: who did what, when, and from where (Dashboard or API key). See Audit Trail.
Documents are a hosted API feature. The self-hosted server has no storage: it returns the PDF and keeps nothing.