The n8n node

Errors

Every failure path returns a named code, a plain-language message, and a requestId — no bare 500s, nothing swallowed. Here is every code and its fix.

CodeHTTPMeaningHow to fix
UNAUTHORIZED401The API key is missing or invalid (also when the engine has no keys configured — it fails closed).Check the pdfmill credential’s API Key and Base URL.
QUOTA_EXCEEDED402The monthly document cap for your plan is reached.Upgrade the plan to raise the cap, or wait for the next period. Never a silent overage.
INVALID_REQUEST400Malformed request: bad JSON, a schema violation, both template and html (or neither), or raw HTML that fails to compile as Handlebars when sent with data.Check the Data and the template/HTML. Send exactly one of template or html.
TEMPLATE_NOT_FOUND404No template with that id exists for your key.Pick a template from the dropdown, or fix the id.
PAYLOAD_TOO_LARGE413The request body is over the payload limit (2 MB).Reduce the data you send.
OUTPUT_TOO_LARGE422The rendered document is over the output limit (20 MB) or exceeds the page cap (50 pages).Simplify the template or data, or split the document.
RENDER_TIMEOUT504The render exceeded the wall-clock limit (30 s) and was killed; the engine’s Chrome instance is replaced automatically.Simplify the template, reduce the data, or shrink large images.
RENDER_FAILED500A named catch-all for an engine-side failure — the message is preserved, never swallowed.Check the template/HTML and data; quote the requestId to support.
BUSY429Rate-limited (per-key limit) or the render queue is at capacity.Retry with backoff.
CodeMeaningHow to fix
MISSING_CREDENTIALNo API key or Base URL is configured on the credential.Complete the pdfmill credential (API Key + Base URL).
ENGINE_UNREACHABLEThe node could not reach the engine at the Base URL (network/DNS/TLS).Check the Base URL and that the engine is reachable from n8n.
error response
{
  "error": {
    "code": "TEMPLATE_NOT_FOUND",
    "message": "no such template: invioce",
    "requestId": "7f3c1e0a-9b2d-4c6a-8e11-2a4d6f8b0c31"
  }
}