Macaaw API
Send, sign and process PDFs from your own code
A REST API with JSON responses, API-key authentication, a free sandbox, signed webhooks and embedded signing. Everything you can do with agreements and server tools on the website, you can do through the API.
What you can build#
DocumentsUpload a PDF, add recipients and fields, send it for signature and download the signed copy with its certificate.Embedded signingOpen a signing session in an iframe so your customers sign without leaving your app.PDF toolsCompress, convert, merge, split and OCR files with the same server tools as the website.WebhooksGet a signed POST when a document is viewed, completed or declined, or when a task finishes.AuthenticationOne header:
Authorization: API-Key …. Live and sandbox keys per workspace.SandboxFree test keys on every plan. Output is stamped and deleted after 7 days.Base URL#
All endpoints live under one base URL. Requests and responses are JSON with snake_case keys; timestamps are ISO 8601 in UTC.
https://macaaw.com/public/v1
Your first request#
Create a sandbox key under Account → Developer, then list your documents:
curl https://macaaw.com/public/v1/documents \
-H "Authorization: API-Key $MACAAW_API_KEY"Conventions#
| Topic | Rule |
|---|---|
| Format | JSON in and out; uploads are multipart/form-data with a file part and a data part holding JSON. |
| Ids | Opaque strings. Do not parse them. |
| Pagination | ?page=1&count=50 (max 100). Lists return { "results": [...] } and a Link header for the next page. |
| Errors | An HTTP status plus { "type", "code", "detail" }. See Errors. |
| Idempotency | Send an Idempotency-Key header on create and send calls; repeats within 24 hours replay the first response. |
| Rate limits | Per user, per endpoint group, over a 60-second window. See Rate limits. |