Developer API
Generate, sign, and fax documents programmatically — /api/v1
Authentication
Create an API key under Account → API keys, then send it as a bearer token:
curl -H "Authorization: Bearer ufax_YOUR_KEY" \
https://unlimitedfaxing.com/api/v1/documents
Templates
Templates use {{Placeholder}} tokens and a simple markup subset (# headings, - bullets, | pipe | tables, **bold**).
# Create a template
curl -X POST -H "Authorization: Bearer ufax_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Invoice","body":"# Invoice\n\nBill to: {{Client}}\n\n**Total: {{Total}}**"}' \
https://unlimitedfaxing.com/api/v1/templates
# List templates
curl -H "Authorization: Bearer ufax_YOUR_KEY" \
https://unlimitedfaxing.com/api/v1/templates
Documents
Generate a PDF from a template plus data. Consumes 1 document from your monthly quota.
# Generate a PDF
curl -X POST -H "Authorization: Bearer ufax_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"templateId":1,"data":{"Client":"Acme Corp","Total":"$500.00"}}' \
https://unlimitedfaxing.com/api/v1/documents
# → {"id":"…","fileName":"Invoice-20260907-120000.pdf","pages":1,"downloadUrl":"/api/v1/documents/…/file"}
# Download it
curl -H "Authorization: Bearer ufax_YOUR_KEY" \
https://unlimitedfaxing.com/api/v1/documents/{id}/file -o invoice.pdf
Fax
Send a PDF or TIFF. Consumes fax pages from your quota ($0.03/page overage on paid plans).
# Send a fax
curl -X POST -H "Authorization: Bearer ufax_YOUR_KEY" \
-F "file=@contract.pdf" -F "destination=+14155551212" \
https://unlimitedfaxing.com/api/v1/fax
# → {"id":"…","status":"Sending","pages":3}
# Check status
curl -H "Authorization: Bearer ufax_YOUR_KEY" \
https://unlimitedfaxing.com/api/v1/fax/{id}
Sign
Request e-signatures. Signers get a link (no account needed). When everyone signs, the final PDF includes an audit certificate. Consumes 1 signature per signer.
# Create a signature request (upload a PDF…)
curl -X POST -H "Authorization: Bearer ufax_YOUR_KEY" \
-F "file=@contract.pdf" -F "title=MSA" \
-F 'signers=[{"email":"jane@example.com","name":"Jane Doe"}]' \
https://unlimitedfaxing.com/api/v1/sign
# …or reference a generated document
curl -X POST -H "Authorization: Bearer ufax_YOUR_KEY" \
-F "documentId=GUID" -F "title=MSA" \
-F 'signers=[{"email":"jane@example.com"}]' \
https://unlimitedfaxing.com/api/v1/sign
# Poll status; finalDownloadUrl appears when completed
curl -H "Authorization: Bearer ufax_YOUR_KEY" \
https://unlimitedfaxing.com/api/v1/sign/{id}
Webhooks
Register endpoints under Account → Webhooks. We POST JSON with an X-Ufx-Signature header — HMAC-SHA256 of the raw request body using your endpoint's signing secret:
{
"id": "…",
"type": "fax.status",
"occurredAt": "2026-09-07T12:00:00Z",
"data": { "id": "…", "status": "Delivered", "pages": 3 }
}
| Event | Fired when |
|---|---|
fax.status | An outbound fax changes status |
fax.received | An inbound fax arrives |
sign.completed | All signers have signed a request |
document.generated | A document is generated via the API |
Failed deliveries retry up to 3 times with backoff.
Errors & quotas
Errors return JSON with an error code. Exceeding your plan quota returns HTTP 402 with {"error":"quota_exceeded","remaining":…,"limit":…}. Free tier: 50 documents, 5 signatures, 10 fax pages per month.