PDFCraft
Error reference

unsupported_file

HTTP 415 · not billed

{ "error": {
    "code": "unsupported_file",
    "message": "…",
    "docs_url": "https://pdfcraft.dev/errors#unsupported_file"
} }

When you get it

The file is not a PDF, is password-protected, or is corrupt beyond parsing.

The bytes are not a PDF, are encrypted, or are damaged past parsing. Encrypted and corrupt are distinguished in the message, because the fixes are nothing alike.

How to fix it

Is it billed?

No. A request is billed only when Chromium actually ran. Not billed. Nothing was parsed.

Reproducing it

curl -i -X POST https://api.pdfcraft.dev/v1/render \
  -H "Authorization: Bearer $PDFCRAFT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"html":"<h1>hi</h1>"}'

The -i matters: Retry-After and X-Renders-Remaining are headers, and a client that only reads the body throws away the two numbers that tell it what to do next.

Every code

HTTPCodeBilled?
400invalid_requestfree
401invalid_api_keyfree
402payment_requiredfree
404not_foundfree
408render_timeoutfree
422render_failedbilled
429rate_limitedfree
429quota_exceededfree
429demo_busyfree
415unsupported_filefree
422extraction_failedfree
500internal_errorfree