Errors
Every error type, what causes it, and how to fix it.
Errors use standard HTTP status codes and a consistent JSON body:
{
"error": {
"type": "quota_exceeded",
"code": "plan_limit_reached",
"message": "You've used your 25 included pages this period. Upgrade to continue.",
"docs_url": "https://createafillablepdf.com/docs/errors"
}
}
| Status | type | Cause | Fix |
|---|---|---|---|
| 400 | invalid_request | Malformed request or missing field. | Check the request shape. |
| 401 | authentication_error | Missing/invalid/revoked key. | Send a valid Authorization: Bearer key. |
| 402 | quota_exceeded | Free plan out of included pages. | Upgrade or wait for the next period. |
| 404 | not_found | Conversion not found or not yours. | Check the ID. |
| 415 | unsupported_file | Not a PDF, too large, or over your per-file page limit. | Send a valid PDF within limits. |
| 429 | rate_limit_error | Over your per-minute rate limit. | Back off; see Retry-After and X-RateLimit-* headers. |
| 502 | engine_error | The document couldn't be processed. | Try another file; contact support if it persists. |
| 500 | server_error | Unexpected error on our side. | Retry; contact support if it persists. |
We never return raw stack traces or internal details. If something looks wrong, email
support@createafillablepdf.com with the conversion_id if you have one.