Download the signed PDF
Once an envelope reaches completed, two PDFs will be available via the API:
- The signed envelope — your original PDF with signatures and field input rendered in place.
- The audit certificate — a generated PDF listing every signer action with timestamp, IP, and user agent.
Both are served directly by the API and stream application/pdf:
| Resource | Endpoint |
|---|---|
| Signed envelope PDF | GET /v1/envelopes/{id}/documents/signed |
| Audit certificate PDF | GET /v1/envelopes/{id}/certificate |
curl https://api.permissio.us/v1/envelopes/env_abc123/documents/signed \
-H "Authorization: Bearer sk_live_your_key_here" \
--output signed.pdf
The signed document is integrity-checked against its stored SHA-256 before it's served.
Only available once completed
These artifacts exist only after the envelope reaches completed. Requesting
them for a draft or in-progress envelope returns HTTP 409 with a clear error
code — poll GET /v1/envelopes/{id} for status: "completed", or wait for the
envelope.completed webhook, before downloading.
The envelope.completed webhook payload includes signed_document_url,
audit_certificate_url, and signed_document_sha256, so you can fetch and
verify the PDF as soon as the event arrives without constructing the path
yourself.