Back to website Open portal

Available

Errors

Exact public API error messages, status codes, and the IP allowlist response shape.

Updated 2026-07-28

The public API uses standard HTTP status codes. The messages below match the current authentication and document routes; template placeholders show the request-specific value inserted by the API.

Field Type Status Description
HTTP error Missing x-client-id or x-client-secret headers. 401 Credential failure.
HTTP error Invalid client_id or client_secret. 401 Credential failure.
ip_not_allowed Request blocked: this API key is restricted to specific IP addresses and {ip} is not one of them. If this request is legitimate, ask your workspace admin to add this IP to the key's allowlist in the Docparser portal (Developer → {apiKeyName} → Allowed IPs). 403 Valid credentials used from an address outside the configured allowlist.
HTTP error webhookUrl must be a relative path, not an absolute URL — it is joined onto this API key's registered base URL. 400 Submission or server failure.
HTTP error Unknown document type_id {typeId}. 400 Submission or server failure.
HTTP error Document type_id {typeId} is not available — it is an internal or archived type. 400 Submission or server failure.
HTTP error Document job not found. 404 No organization-scoped job matched the supplied reference.
HTTP error Failed to create document job. 500 Submission or server failure.

IP allowlist denial

The allowlist check runs only after credential verification succeeds. A denied request has this source-verifiable 403 shape; {ip} is the rejected client address and {apiKeyName} is the key’s display name.

json
{
  "error": "ip_not_allowed",
  "message": "Request blocked: this API key is restricted to specific IP addresses and {ip} is not one of them. If this request is legitimate, ask your workspace admin to add this IP to the key's allowlist in the Docparser portal (Developer → {apiKeyName} → Allowed IPs)."
}

Invalid credentials continue to use the same 401 response whether or not the matching key has an allowlist, so the restriction is not disclosed before authentication.

Asynchronous extraction errors

A successfully accepted job can later enter status: "error". Its webhook uses the fixed public payload documented under Webhooks, while the authenticated retrieve endpoint exposes error, errorStage, errorCode, and errorDetail from the persisted job.