Make.com
Prerequisites
- A PolyDoc account and API key — sign up for free, no credit card required. The free plan includes 150 PDF conversions per month.
- A Make.com account — sign up for free, no credit card required.
Use Case 1: Invoice PDFs from a Spreadsheet
Generate one invoice PDF per new row in your sheet and send it by email (or store it in cloud storage).Google Sheets (new row) -> HTTP (PolyDoc API) -> Gmail / Google Drive
Prepare your data source
Create two Google Sheets tabs: invoices and invoice_items. The tables below are examples. You can import your own data via File → Import (CSV/XLSX).
| invoice_number | invoice_date | invoice_due_date | invoice_subtotal | invoice_tax_rate | invoice_tax_amount | invoice_total | customer_name | customer_email | customer_street | customer_city | customer_country |
|---|---|---|---|---|---|---|---|---|---|---|---|
| INV-2026-001 | 2026-01-15 | 2026-02-14 | 1200 | 0.1 | 120 | 1320 | John Doe | john.doe@example.com | 456 Customer Avenue | Beautiful City | UK |
| invoice_number | quantity | name | description | price | original_price |
|---|---|---|---|---|---|
| INV-2026-001 | 1 | Web Design Services | Custom website design and development for company homepage | 800 | |
| INV-2026-001 | 1 | Logo Design | Professional logo design with 3 revision rounds | 300 | |
| INV-2026-001 | 1 | SEO Optimization | Search engine optimization for 10 target keywords | 100 | 150 |
Create a scenario
Click Create a new scenario, then add Google Sheets — Watch New Rows on the invoices tab—that is the scenario trigger.
Connect your Google account, select the spreadsheet and the invoices tab, and under Where to start pick From now on for new rows only, or All rows for a one-time backfill after import.
Next, add modules after the trigger in this order: Watch the invoices sheet, Array aggregator, PolyDoc HTTP request, then Gmail or another output. Each following section covers one module. When the chain is ready, use Run once and activate to test and turn the scenario on.
Watch the invoices sheet
Add Google Sheets → Search Rows directly after Watch New Rows. Use the invoice_items tab and filter so invoice_number equals the value from the trigger. That returns all line items for the current invoice.
Flow control: Array aggregator
Add Array aggregator after Search Rows: in the module picker open Flow control, then choose Array aggregator. Set Source module to Search Rows and map each row to an object with quantity, name, description, price, and optionally original_price. The output is the items array for the next step.
Add the PolyDoc HTTP request
Add HTTP → Make a request after Array aggregator and configure:
- Authentication type: API key
- Credentials
- Key:
Bearer YOUR_API_KEY(get your API key from the Dashboard) - API key placement: In the header
- API Key parameter name: Authorization
- URL:
https://api.polydoc.tech/pdf/convert - Method: POST
- Headers
- Name:
X-Sandbox - Value:
true - Body content type: application/json
- Body input method: JSON string
- Body content: Map the fields from the Google Sheet to the template fields. See screenshot below.
- Parse response: Yes
Send the generated PDF
Add Gmail → Send an email (or another output module) after the HTTP step. Map:
- To:
<client_email> - Subject:
Invoice <invoice_number> - Attachment file name:
invoice-<invoice_number>.pdf - Attachment data: HTTP module Data
Run once and activate
With the full module chain in place, click Run once, add a test row in your sheet, and confirm the PDF. Then turn the scenario ON and set the schedule interval.
Use Case 2: Form Submission Triggers PDF Generation
Generate a PDF as soon as a form is submitted (Tally, Typeform, Jotform, custom form, or any webhook-capable app).Webhook (form submit) -> HTTP (PolyDoc API) -> Email / Storage
Add webhook trigger
Create a new scenario and choose Webhooks -> Custom webhook. Save it and copy the generated webhook URL.
Connect your form to the webhook
Paste the webhook URL into your form platform, then submit one test entry so Make learns the incoming or custom form), then submit one test entry so Make learns the incoming field structure.
Add PolyDoc HTTP request
Add HTTP -> Make a request and configure:
- Authentication type: API key
- Credentials
- Key:
Bearer YOUR_API_KEY(get your API key from the Dashboard) - API key placement: In the header
- API Key parameter name: Authorization
- URL:
https://api.polydoc.tech/pdf/convert - Method: POST
- Headers
- Name:
X-Sandbox - Value:
true - Body content type: application/json
- Body input method: JSON string
- Body content: Map the fields from the custom webhook. See screenshot below.
- Parse response: Yes
Deliver the PDF
Add Gmail → Send an email (or another output module) after the HTTP step.