Product and API guide

Base address

Base address

Every endpoint sits under this prefix. On a local install the address defaults to the value below.

https://api.pdfgine.com/api/v1

Paging on listing endpoints

Five listing endpoints page: a template's /history, /assets, /marketplace/templates, /templates and /components. Each accepts an optional limit (1-200) and before, and each still answers with a plain array - nothing that reads them today has to change.

Without limit you get at most 200 rows, and when more exist the response carries a Link header with rel="next". Follow that link rather than building the next URL yourself: the cursor is a version number on history, an asset id on assets and an opaque value elsewhere, and only the header knows which. On /marketplace/templates the cursor also carries the filters, so it stops working the moment search, category or locale changes - that is deliberate, because the same cursor would otherwise point into a different list. The remaining listing endpoints return collections that are already bounded. A truncated response also carries X-PDFgine-List-Truncated: true and X-PDFgine-List-Limit; both are absent on the last page.

The machine-readable description

Everything on these pages is also published as an OpenAPI 3.0 document. Point your client generator, Postman or an editor at it and you get the paths, the request bodies and example payloads without copying anything by hand.

OpenAPI 3.0
https://api.pdfgine.com/openapi/v1.json

The document is generated from the running API, so it describes the version you are actually calling rather than the version someone remembered to write down.