PodPDF for Zapier
Connect PodPDF to 7,000+ apps with Zapier. Turn a new spreadsheet row, form response, payment or webhook into a PDF, then email it, save it to cloud storage or post the link in chat. No code needed.
What you can doβ
| Step | Type | What it does |
|---|---|---|
| Generate PDF | Action | Converts HTML, Markdown or a public web page into a PDF. Up to 25 pages and about 30 seconds. |
| Render Template | Action | Fills one of your saved templates with data from earlier steps and returns the PDF. |
| Start Long Job | Action | Queues a large HTML or Markdown document (up to 100 pages) for background conversion. |
| Find Job | Search | Gets the status and details of a job by its ID. |
| Find Download Link | Search | Gets a fresh download link, and the PDF file, for a finished job. |
Generate PDF and Render Template return the PDF as a file, so you can attach it to an email or upload it to Google Drive, Dropbox or OneDrive directly. They also return a Download URL that stays valid for one hour.
Before you startβ
- A PodPDF account on a paid plan or with a credit pack. There is no free plan: each PDF costs one credit. See Billing.
- A Zapier account. The free Zapier plan runs two-step Zaps, such as a trigger plus PodPDF. To send the PDF somewhere afterwards you need a paid Zapier plan.
Connect your accountβ
- In the PodPDF dashboard, open Settings β API Keys and create a key. Copy it; it is shown once.
- In the Zap editor, add a step, search for PodPDF and choose an action.
- Click Sign in, paste the API key and click Yes, Continue.
The connection is labelled with your PodPDF account email. To use a different account later, add a new connection with that account's key.
Example: PDF invoices from Google Sheetsβ
- Trigger: Google Sheets β New Spreadsheet Row.
- Action: PodPDF β Render Template.
- Template ID: copy it from the template's card in Templates, in the dashboard.
- Data: add one row per template field, and map a spreadsheet column into each value.
- Filename (optional): for example
invoice-followed by the invoice number column.
- Action: Gmail β Send Email. In Attachments, choose PDF File from the PodPDF step.
Test each step, then turn the Zap on.
Filling a templateβ
Your template's fields are the names inside {{ }}, such as {{customer.name}} or {{invoice_number}}. There are two ways to pass values; you can use both, and Data (JSON) wins where they overlap.
Data (one row per field). Use the field name on the left and map a value on the right. For a nested field, type the dotted name:
| Key | Value |
|---|---|
invoice_number | (Invoice No. column) |
customer.name | (Name column) |
customer.email | (Email column) |
PodPDF turns dotted keys into nested data, so customer.name fills {{customer.name}}.
Data (JSON) for lists, such as invoice line items, which the Data rows can't express:
{
"invoice_number": "INV-1042",
"customer": { "name": "Jane Doe", "email": "jane@example.com" },
"items": [
{ "description": "Widget", "quantity": 2, "unit_price": 19.5 },
{ "description": "Gadget", "quantity": 1, "unit_price": 42 }
]
}
Open the template in the dashboard and click Copy JSON (also on each template card). It copies sample data with every field the template uses, ready to paste into Data (JSON) and replace with mapped values.
Example: HTML or a web page to PDFβ
Use Generate PDF when you have the content itself rather than a template:
- Input Type: HTML, Markdown or URL.
- Content: the HTML or Markdown, or the page URL. Map it from an earlier step, such as a webhook, an email body or a CMS post.
- Page options (all optional): Page Format (A4, Letterβ¦), Landscape, Margin, Print Background, Scale and Page Ranges. Anything left blank uses PodPDF's defaults.
URLs must be publicly reachable; pages behind a login can't be converted.
Long documents (over 25 pages)β
Zapier stops a step after about 30 seconds, so big documents run in the background:
- PodPDF β Start Long Job, with the HTML or Markdown. It returns a Job ID.
- Delay by Zapier β Delay For 3 to 5 minutes.
- PodPDF β Find Download Link, with the Job ID from step 1. It returns the PDF file and a fresh link.
If the job hasn't finished when step 3 runs, the step fails with JOB_NOT_READY; make the delay longer. Find Job tells you a job's status and page count if you want to check first.
Find Download Link also works for PDFs made by Generate PDF and Render Template: map their Job ID to get a new link after the first one expires. Generated files are kept for 30 days; see Limits.
Troubleshootingβ
| Message or symptom | What to do |
|---|---|
UNAUTHORIZED or the connection test fails | The API key was deleted or mistyped. Create a new key and reconnect. |
INSUFFICIENT_CREDITS or a payment-required error | Buy a credit pack or pick a plan in the dashboard's Billing page. |
TEMPLATE_NOT_FOUND | Check the Template ID. It must belong to the same PodPDF account as the API key. |
| A field is blank in the PDF | The key doesn't match the template's field name. Names are case-sensitive; use Copy JSON to see the exact names. |
Data (JSON) is not valid JSON | Check quotes and commas. Keys and text values need double quotes. |
PAGE_LIMIT_EXCEEDED, QUICKJOB_TIMEOUT or the step times out | The document is too big for Generate PDF. Use Start Long Job. |
| The download link doesn't open | Links expire after one hour. Use Find Download Link with the Job ID, or attach the PDF File instead of the link. |
RATE_LIMIT_EXCEEDED | Zapier retries automatically. Frequent throttling means your Zaps run faster than your plan's rate limit. |
For the full list of error codes, see Error handling.
Getting helpβ
- Problems with a Zap (it didn't trigger, a step was skipped, Zapier errors): contact Zapier support. They can see your Zap's history and will pass PodPDF-side issues to us.
- Problems with PDFs, templates, credits or your account: contact PodPDF.