PDF Form Filler: Fill PDF Forms from JSON & Extract Fields
Pricing
from $6.40 / 1,000 pdf filleds
PDF Form Filler: Fill PDF Forms from JSON & Extract Fields
PDF form filler: fill AcroForm PDF fields from JSON in bulk (one template, many records), flatten the result, or list all PDF form fields with types, options and pages. Direct download links.
Pricing
from $6.40 / 1,000 pdf filleds
Rating
0.0
(0)
Developer
Data Done Right
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Security
Limited permissionsShare
PDF Form Filler: Fill PDF Forms from JSON and Extract PDF Form Fields
This PDF form filler fills AcroForm PDF fields from JSON and can list every PDF form field (name, type, options, current value, page) so you know what to fill. Give it a link to a fillable PDF and a list of records: you get one filled PDF per record with a signed download link, ready for the API, Make, n8n or Zapier. It supports text fields, checkboxes, radio buttons, dropdowns and multi-select lists, optional flattening, and file names built from a pattern.
Password input is for a password you already know. This tool never guesses or cracks passwords. XFA-only (Adobe LiveCycle) forms are not supported, and the tool tells you so.
How to find the field names of a PDF form (extract AcroForm fields)
- Put the PDF link in PDF form URLs.
- Keep Mode on
list_fieldsand run. - The dataset has one row per field:
fieldName,fieldType(text, checkbox, radio, dropdown, listbox, button, signature),page, currentvalue, allowedoptions,required,readOnly,maxLength.
Use fieldName (or the shorter shortName if it is unique in the form) as the key when you fill. A FIELDS record in the key-value store lists the same names as a starter mapping.
How to fill a PDF form from JSON
- Set Mode to
fill. - Add one or more objects to Records; each becomes one PDF. Keys are field names, values are what to write.
- Optionally set Output file name pattern and Flatten.
- Run. Every filled PDF appears in the dataset with a
urlthat downloads without a token.
Value rules:
- Text: any string or number. Values longer than the field's max length are cut (and noted). Line breaks are kept only in multi-line fields.
- Checkbox:
true/false(also yes/no, on/off, 1/0) or the checkbox's on-value. - Radio: one of the field's
options(case-insensitive);"off"clears it. - Dropdown / list: an option value or its visible label; a list of values for multi-select lists. Editable dropdowns accept free text.
nullleaves the field as it is; an empty string clears it.
How to fill many PDFs at once (bulk: one template, many records)
Put hundreds of objects in Records (or pick an Apify dataset in Records from a dataset). Name the files with Output file name pattern: {template}, {index} (001, 002...), {n}, or any record key, for example invoice-{customer}-{index}. Record keys that start with _ are only for naming and are never treated as fields. If you give several templates, each is filled with every record.
How to flatten a PDF form (make fields non-editable)
Turn on Flatten. The values are burned into the page and the form fields are removed, so recipients cannot edit them and every viewer shows the same result.
Input example
{"mode": "fill","pdfUrls": ["https://www.irs.gov/pub/irs-pdf/fw9.pdf"],"records": [{"f1_01[0]": "Ada Lovelace", "f1_02[0]": "Analytical Engines Ltd", "c1_1[0]": true, "_customer": "ada"},{"f1_01[0]": "Grace Hopper", "_customer": "grace"}],"fileNamePattern": "w9-{_customer}-{index}","flatten": false}
Output example
{"sourceUrl": "https://www.irs.gov/pub/irs-pdf/fw9.pdf","templateName": "fw9.pdf","fileName": "w9-ada-001.pdf","url": "https://api.apify.com/v2/key-value-stores/.../records/00-w9-ada-001.pdf?signature=...","mode": "fill","recordIndex": 1,"status": "ok","fieldsSet": 3,"fieldsInForm": 23,"pages": 6,"flattened": false,"warnings": null,"note": "removed the XFA layer so the AcroForm values display in every viewer"}
A list_fields row looks like {"fieldName": "topmostSubform[0].Page1[0].f1_01[0]", "fieldType": "text", "page": 1, "value": null, "options": null, "maxLength": null, ...}.
Unknown field names and invalid values do not stop the run: they appear in warnings and the PDF is still delivered (turn on Strict to reject such records instead). Failed templates or records get a row with status: "error" and are listed in the FAILED record.
Use cases
- Generate filled contracts, applications, onboarding or tax forms from a spreadsheet or CRM export.
- Pre-fill a form for each customer and send the flattened PDF.
- Discover the exact field names of a vendor's PDF form before wiring up an automation.
- Audit forms: which fields exist, which are required, which options a dropdown allows.
How much does it cost
Pay per event: $0.008 per filled PDF (pdf-filled) and $0.004 per PDF whose fields are listed (fields-listed, however many fields it has). No start fee. Errors, PDFs without a form and skipped records are not charged. Use Max output files to cap spend.
Limits
- Works with AcroForm PDFs. XFA-only dynamic forms are not supported. Hybrid forms (AcroForm plus XFA, like many government forms) work: the XFA layer is removed in the output so the values show everywhere.
- Flat or scanned PDFs have no fields, so you get a clear error. This tool does not draw text onto arbitrary pages.
- Appearances are generated with the form's own default font, so text in non-Latin scripts may not render in every viewer. The values are stored correctly and the output sets NeedAppearances so viewers rebuild them. Flatten only after checking your font works.
- Filling invalidates digital signatures.
- Templates up to 30 MB by default (max 100 MB); links must be public and direct.
- Encrypted PDFs need the correct password. PDFs with only owner restrictions that open without a password work as they are. Use only on files you own or may modify.
FAQ
How do I know which field names to use? Run list_fields on the PDF. Use fieldName, or shortName when it is unique.
Why does my checkbox not tick? Use true / false, or the on-value shown in options. Wrong values appear in warnings.
Does it work on XFA forms? Not XFA-only forms. Hybrid forms work because the AcroForm layer is used and the XFA layer is dropped.
Will the values show in Preview, Chrome and Acrobat? Each value gets an appearance stream and NeedAppearances is set. Flatten if you want identical output everywhere.
Can it open a password-protected PDF? Only with the correct password. It never guesses passwords.
Is the password logged? No. It is a secret input and never written to logs or output.
Related tools
- PDF Merger & Splitter
- PDF Watermark & Unlock PDF Tool
- PDF Compressor