Upload any PDF, place signature fields, collect legally binding signatures via tokenized links, and receive a PKCS#7-sealed document. Any byte-level change after signing is detectable by any PDF reader — no special software required.
Start free →POST the PDF as multipart/form-data. The API accepts any standard PDF up to 25MB. No pre-processing, conversion, or form flattening required.
Pass field coordinates (page, x, y, width, height) with each field assigned to a signer. Use the drag-drop placer for visual placement or pass coordinates from your PDF generator.
POST to /send. Each signer receives a unique, tokenized link. They verify identity with OTP and sign on a hosted page — no account required.
On completion: fields are flattened into the PDF, an audit certificate page is appended, and a PKCS#7 digital signature is applied. Your webhook fires, the sealed PDF is available for download.
Anyone with the sealed PDF can verify it — no API access, no account, no special software beyond a standard PDF reader.
Open the sealed PDF in Adobe Acrobat or any PDF reader with signature support.
Navigate to the Signatures panel. The service signature appears with the signing certificate details.
The panel shows "Signature is VALID" if the document is unmodified since sealing.
If any byte — including metadata, a pixel, or a character — was changed after sealing, the panel shows "Signature is INVALID."
A PDF signature API is a web service that accepts a PDF file, collects electronic signatures on it via a hosted signing flow, and returns a digitally sealed document that proves the PDF has not been modified since signing. GetSigned's PDF signature API accepts any standard PDF, places fields at coordinates you specify, sends signing links to each signer, and returns a PKCS#7-sealed document with an embedded audit certificate page.
After all signers complete and their signatures are flattened into the PDF, GetSigned applies a CA-issued PKCS#7 digital signature to the entire document. This seal covers every byte of the file. If any byte is changed after sealing — a character, a pixel, metadata — the digital signature becomes invalid. This is verifiable in Adobe Acrobat, Adobe Reader, and any PDF reader that supports digital signature validation. No special software beyond a standard PDF reader is required to verify the document.
Any standard PDF works — including PDFs generated by Word, Google Docs, LaTeX, WeasyPrint, QuestPDF, or any other PDF generator. The API accepts PDFs up to 25MB. PDFs that are already digitally signed, password-protected, or encrypted cannot be processed until the existing signature or protection is removed. Scanned PDFs (image-only PDFs without a text layer) are accepted — the signature fields are placed as overlays and the audit certificate is appended.
Two ways: (1) Pass x, y, width, height, and page coordinates in the API request. Coordinates are in PDF points (72 points per inch), with the origin at the bottom-left of the page — the standard PDF coordinate system. (2) Use the drag-drop field placer UI to visually position fields on an uploaded PDF and save the layout as a reusable template.
Yes. Declare multiple signers and assign each field to a specific signer. Set routing_order to control the sequence: same value means parallel (all sign simultaneously); incrementing values mean sequential (next signer gets their link only after the previous completes). All signers' signatures are flattened into the final document before the service seal is applied.
Make a GET request to /v1/envelopes/{id}/document with your bearer token. The response is the sealed PDF as application/pdf binary. This endpoint is only available when the envelope is in completed status — earlier attempts return a 409 indicating signing is still in progress. The best practice is to download in response to the envelope.completed webhook rather than polling the status endpoint.
Free tier includes 25 envelopes per month. PKCS#7 sealing and audit trails on every document.
Get free API keys →