Every template here is reachable through the API, so you can generate the same document from your own data.
curl -X POST https://pdfgeny.com/api/v1/render \
-H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-d '{"template":"price-list","data":{"company": "Northwind Studio Ltd", "subtitle": "Valid from 1 September 2026", "date": "31 August 2026", "sku1": "WA-100", "item1": "Widget A — SKU WA-100", "price1": "45.00"}}' \
--output price-list.pdf
import requests
pdf = requests.post(
"https://pdfgeny.com/api/v1/render",
headers={"Authorization": f"Bearer {KEY}"},
json={"template": "price-list", "data": {'company': 'Northwind Studio Ltd',
'subtitle': 'Valid from 1 September 2026',
'date': '31 August 2026',
'sku1': 'WA-100',
'item1': 'Widget A — SKU WA-100',
'price1': '45.00'}},
).content
open("price-list.pdf", "wb").write(pdf)
const res = await fetch("https://pdfgeny.com/api/v1/render", {
method: "POST",
headers: { Authorization: `Bearer ${KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({ template: "price-list", data: {"company": "Northwind Studio Ltd", "subtitle": "Valid from 1 September 2026", "date": "31 August 2026", "sku1": "WA-100", "item1": "Widget A — SKU WA-100", "price1": "45.00"} }),
});
await writeFile("price-list.pdf", Buffer.from(await res.arrayBuffer()));