# Automate PDFs in Zapier and Make without code

Create PDFs automatically in Zapier or Make. Compare both tools, then follow simple steps to turn HTML or any web page into a PDF link.

**Quick answer.** In Zapier, add a **Webhooks by Zapier** Custom Request step. In Make, add the **HTTP** Make a request module. Both send a POST to `https://html-pdf.com/v1/pdf` with your API key and a JSON body like `{"html": "...", "response": "url"}`. You get back a PDF link that you can email, save or attach in the next step.

## Zapier or Make, which one fits?

Both tools can call our API, and both work well. The choice usually comes down to how you like to build.

| | Zapier | Make |
|---|---|---|
| Style | Linear steps, very easy to start | Visual canvas with branches and loops |
| Step for PDFs | Webhooks by Zapier, Custom Request | HTTP, Make a request |
| Plan needed | Webhooks need a paid Zapier plan | Works on the free plan |
| Many PDFs in one run | Looping needs extra steps | Iterators handle lists well |
| Best for | Simple flows like form to PDF to email | Bigger flows with lists, filters and routers |

If you already use one of them, stay with it. The API call is the same in both.

## Why ask for a link

Adding `"response": "url"` to the body tells the API to return JSON instead of a raw file. It looks like this.

```json
{
  "url": "https://html-pdf.com/f/abc123.pdf",
  "pages": 1,
  "credits_remaining": 99,
  "expires_at": "2026-10-11T09:00:00Z"
}
```

A link is the easiest thing to map in a no-code tool. Gmail, Google Drive, Slack and Dropbox steps can all take a file URL, and you avoid binary data. The link works for 24 hours, so save the file somewhere if you need it longer.

## Get your API key

Sign up at [https://html-pdf.com/login](https://html-pdf.com/login) with your email. You get 100 free credits once, with no card. One credit is one PDF page.

## Step by step in Zapier

This example turns a new form entry into a PDF and emails it.

1. Create a Zap and pick your trigger, for example a new Typeform, Google Forms or Shopify event.
2. Add an action step and choose **Webhooks by Zapier**, then **Custom Request**.
3. Set **Method** to POST and **URL** to `https://html-pdf.com/v1/pdf`.
4. In **Data**, paste a JSON body and map fields from the trigger into it.

```json
{
  "html": "<h1>Thanks, NAME</h1><p>Your order total is TOTAL.</p>",
  "format": "A4",
  "response": "url"
}
```

5. Under **Headers**, add `Authorization` with the value `Bearer hp_live_...`, and `Content-Type` with the value `application/json`.
6. Test the step. You should see `url`, `pages` and `credits_remaining` in the output.
7. Add a Gmail, Google Drive or Slack step and map the `url` field as the attachment or file.

Replace NAME and TOTAL by inserting fields from your trigger with Zapier's field picker. Keep the quotes around them so the JSON stays valid. The full guide is at [HTML to PDF in Zapier](https://html-pdf.com/guides/zapier).

## Step by step in Make

This example creates a PDF for each new row in a Google Sheet and saves it to Drive.

1. Create a scenario and add your trigger, for example **Google Sheets** Watch New Rows.
2. Add the **HTTP** app and choose **Make a request**.
3. Set **URL** to `https://html-pdf.com/v1/pdf` and **Method** to POST.
4. Add a header named `Authorization` with the value `Bearer hp_live_...`.
5. Set **Body content type** to `application/json`, choose the JSON string input, and paste a body like this one.

```json
{
  "html": "<h1>Invoice {{1.number}}</h1><p>Total {{1.total}}</p>",
  "format": "A4",
  "margin": "15mm",
  "response": "url"
}
```

6. Turn **Parse response** on. The module now outputs `url`, `pages`, `credits_remaining` and `expires_at`.
7. Add **HTTP** Download a file with the `url`, then **Google Drive** Upload a file to store it.

The `{{1.number}}` parts are Make's mapped fields from module 1. Pick them from the mapping panel. The full guide is at [HTML to PDF in Make](https://html-pdf.com/guides/make).

## Ideas you can build

These are the most common PDF automations we see.

- Paid Shopify or WooCommerce orders to invoice PDFs. See [Shopify order PDFs](https://html-pdf.com/shopify-order-pdf).
- Form answers from Typeform or Google Forms to a signed copy for the customer.
- Google Sheets rows to certificates, quotes or reports. See [Google Sheets to PDF](https://html-pdf.com/google-sheets-to-pdf).
- A weekly report page saved as a PDF by sending `{"url": "https://..."}` instead of `html`.

You can start from a free design in the [HTML template gallery](https://html-pdf.com/templates). Prefer n8n? Try the ready [n8n workflow templates](https://html-pdf.com/n8n-html-to-pdf-workflow-template).

## Tips that save time

- Keep your HTML in one line inside the JSON, or build it in a Formatter or Text step first. Line breaks and stray quotes are the most common cause of invalid JSON.
- Use absolute `https://` links for images and fonts.
- Add `"filename": "invoice-123.pdf"` so downloaded files have a clear name.
- If you get a 402 error, you are out of credits. Packs start at $10 for 1,000 credits, and purchased credits never expire.

## FAQ

### Do I need to know how to code?

No. You paste a short JSON body into one step and map your fields into it. Everything else is point and click.

### Can I get the PDF as a file instead of a link?

Yes. Leave out `"response": "url"` and the API returns the PDF itself. In Make, turn Parse response off and map the Data output as the file. In Zapier, a link is usually easier.

### How long does the PDF link last?

The link works for 24 hours. Save the file to Google Drive, Dropbox or an email attachment if you need it longer.

### How much does it cost?

One credit is one PDF page. You get 100 free credits once with no card, then packs start at $10 for 1,000 credits that never expire.
