Turn any PDF form into an API
Upload a form, get a JSON schema and one endpoint that returns the finished document. Or embed the real form so your users fill and sign it themselves. Try it now — real endpoint, real API key, no account.
Drop a PDF here to start building — you'll land in the editor
No account needed · images & text convert automatically
Trial work is watermarked & kept for 24h · sign up to save it and remove the watermark
How it works
Any form, start to finish — an invoice, a contract, an intake sheet. Here, a dental claim: draw named boxes on it, fill them from your own data, and POST to one endpoint for the completed PDF.
Dental claim form
POST /api/v1/templates/…/fill
{
"fore_name": "SARAH",
"surname": "WHITFIELD",
"nhs_number": "485 777 3456",
"signature_date": "2026-08-06",
"exemption_claimed": true,
"id_photo": "data:image/jpeg…",
"patient_signature": "data:image/png…"
}
200 — completed PDF returned
Upload a form, or design one
Drop in any PDF — an invoice, a contract, a claim form, an intake sheet — and we read its fields. Or start from a blank page and build the document yourself, with tables and repeating sections.
Get the schema
A JSON schema of every input, plus an example payload to drop into your app.
POST values, get the PDF
Send field values to your endpoint. The completed document comes back in the response.
Everything you need to ship PDF paperwork
Automatic field extraction
Text boxes, checkboxes, radios, dropdowns and lists come back as typed, named fields. You never map them by hand.
Embed the real form
A JavaScript SDK renders the actual PDF on your site with inputs positioned exactly on the page.
Signatures built in
Add draw-to-sign fields; signatures are stamped into the PDF and returned in the submission JSON.
Restrict fields by audience
Give patients one view and staff another — hide, lock, require, or preset fields per profile, enforced server-side.
Signed webhooks with retries
Deliver every completed PDF and its values to your server, HMAC-signed so you can verify it, and retried when your endpoint is down.
Frequently asked questions
How do I turn a PDF form into an API?
Upload a fillable PDF to Doc2api. It extracts every form field, generates a JSON schema, and gives you an authenticated endpoint. POST your field values to that endpoint and it returns the completed PDF.
Can I fill a PDF that has no form fields?
Yes. For flat or scanned PDFs, use the visual overlay editor to draw named boxes directly on the page. Values are printed at those exact positions.
Can users sign the PDF?
Yes. Mark fields as signatures and the embedded form shows a draw-to-sign pad. The drawn signature is stamped into the PDF and included in the returned data as an image.
Can different people fill different parts of the form?
Yes. Form profiles let you define audiences — for example patient and doctor — and restrict, require, hide, or preset fields per audience. The API enforces the rules on every submission.
How are completed documents delivered to my system?
You can receive the completed PDF in the API response, or set a webhook endpoint on the document — one per document, so deliveries never double up. Each delivery is signed with that endpoint's secret, carries a short-lived link to the PDF, and is retried if your server is down.
Ready to ship your first form API?
Create a free account and get a live endpoint, an embeddable form, signatures, and webhooks in minutes.