Back to Blog
Tutorial

Generate PDFs from Airtable Automatically

Connect an Airtable base to GJSDocs and generate per-record PDFs — invoices, contracts, certificates, reports — without copying values into a Word doc ever again. Setup takes about ten minutes.

May 2026·6 min read

Why Airtable + PDF generation is a common bottleneck

Airtable is where a lot of teams already track the data that ends up in business documents. Client lists. Project records. Order pipelines. Renewal schedules. The records exist, the schema is right, the team knows how to update them.

The bottleneck is the next step: turning a row in Airtable into a finished PDF that goes to the customer. Without automation, someone copies the values from Airtable into a Word doc, exports to PDF, renames the file, and emails it. For a team doing this 30 times a week, that's an entire workday lost to clipboard work.

GJSDocs's Airtable integration replaces the whole sequence with a one-click flow: pick a record, pick a template, get a PDF.

What you'll need

  • A GJSDocs account (free trial available, no credit card required)
  • An Airtable base with the records you want to turn into documents
  • An Airtable Personal Access Token — the integration will guide you through generating one
  • A GJSDocs template, or a DOCX/PDF/image file you can import and convert into one

Step 1 — Connect Airtable to GJSDocs

Open the GJSDocs sidebar and go to Workspace > Integrations. Find Airtable in the list and click Connect.

Paste your Airtable Personal Access Token. If you don't have one yet, the integration screen links straight to airtable.com/create/tokens; create a token with read access to the base you want to use, scoped to the relevant workspace, and paste it back into GJSDocs.

Once the token is verified, you'll see your bases listed. Pick the base, then pick the table inside it. GJSDocs reads your column schema and shows it back to you so you can confirm you've selected the right one.

Step 2 — Map columns to template variables

Open the template you want to use (or import an existing PDF and let GJSDocs convert it for you). In the variable panel on the left of the editor, every variable in your template is listed.

Click each variable and choose the matching Airtable column from the dropdown. For an invoice template that might look like:

{client.name} ← Airtable column "Client"

{client.email} ← "Email"

{invoice.number} ← "Invoice #"

{invoice.date} ← "Issue Date"

{invoice.due} ← "Due Date"

{invoice.total} ← "Amount"

Linked-record fields and rollups work the same as text fields — pick them from the dropdown. Attachments map to image variables, so you can pull a logo or a photo from Airtable straight into the document.

Step 3 — Generate

Go to Generate in the sidebar. Pick the template, pick Airtable as the source, then choose the record (or records) you want to generate from. Click Generate.

GJSDocs pulls the live values from Airtable, fills the template, renders the PDF, and gives you a download link. The whole step takes a few seconds per document. Completed PDFs are stored in your GJSDocs document history, where you can re-download, send, or hand them off to a downstream workflow.

Bulk generation: hundreds of records at once

The same flow scales. Instead of picking a single record, select a view in your Airtable table — for example, a view filtered to "Status = Renewal due" — and GJSDocs generates one PDF per record in that view, in parallel.

Output options when running a batch:

  • Download all PDFs as a ZIP archive
  • Save each generated PDF back to the originating Airtable record as an attachment
  • Send the PDFs by email using GJSDocs's send-on-generate option
  • Trigger a webhook on completion so a downstream tool can pick them up

Make it fully automatic

Once the manual flow works, the next step is to remove the click. Two patterns work well:

  • Airtable Automations → Zapier → GJSDocs. When a record matches a condition (e.g. "Status changes to Approved"), Airtable fires an automation, Zapier picks it up, and Zapier calls the GJSDocs API to generate the PDF and write the result back. No human in the loop.
  • Direct API calls from your backend. If you already have a service that listens to Airtable webhooks, call POST /api/generate with the record ID and template ID. The API returns a PDF URL.
  • Scheduled batch runs. For monthly invoicing or quarterly reports, schedule a batch generation in GJSDocs to run on a calendar trigger and email the PDFs out automatically.

Common Airtable + PDF use cases

Teams use this integration for:

  • Client invoicing — one Airtable row per invoice, GJSDocs generates and emails the PDF on a schedule
  • Contract generation — sales reps add a deal to Airtable, GJSDocs produces the matching MSA or order form for signature
  • Event certificates — registration list in Airtable, personalized PDF certificates generated in bulk
  • Quote and proposal automation — pipeline data in Airtable becomes a branded proposal PDF in seconds
  • Onboarding packs — new-hire records in Airtable produce welcome letters, NDAs, and policy documents

Tips before you go live

  • Test with a real record, not a sample. Edge cases — empty fields, very long names, multi-line addresses — show up immediately and let you adjust the template before bulk-running.
  • Use linked-record fields for repeating data. Instead of duplicating client info across rows, link to a Clients table and let GJSDocs follow the link.
  • Name variables to mirror Airtable columns. {client.email} → "Client Email" makes the mapping obvious and stable when columns get renamed.
  • Watch your usage quota. Bulk generation counts each generated PDF; check your plan limit before processing thousands of records in one run.

Generate your first PDF from Airtable

Connect a base, map a few variables, and watch GJSDocs turn rows into ready-to-send PDFs. Free trial, no credit card.

Start free