Skip to main content

Errors

Partner APIs share a flat error body:

{
"code": "VALIDATION_ERROR",
"message": "uid must match ^CHE\\d{9}$"
}

Branch on code. Log both code and message.

401 and 403 have no JSON body. Refresh the token on 401; do not parse the response.

HTTP status codes​

StatusMeaning
200OK
201Created
202Accepted (async job started)
400Bad request — body present
401Unauthorized — empty body
403Forbidden — empty body
404Not found
409Conflict
413Payload too large
415Unsupported media type
429Rate limited — honour Retry-After when present
500Internal error
503Service unavailable

Platform code values​

CodeTypical statusRetry
VALIDATION_ERROR400No
NOT_FOUND404No
PAYLOAD_TOO_LARGE413No
CONFLICT409No
RATE_LIMITED429Yes, after Retry-After
SERVICE_UNAVAILABLE503Yes, exponential backoff
INTERNAL_ERROR500Yes, exponential backoff

Product codes​

Docmind also uses domain codes such as INVALID_FILE. Docbooks adds:

CodeTypical statusWhere
BATCH_TOO_LARGE400Onboarding / offboarding, over 100 items
DUPLICATE_IN_BATCH400extRef or uid repeated inside one batch
INVALID_SUBMISSION400Booking submit, not exactly one of file/extraction
MISSING_CHART_OF_ACCOUNTS400Booking submit, no effective chart of accounts
WORKSPACE_NOT_LINKED409Booking submit, workspace not provisioned
FILE_TOO_LARGE413Booking submit, over the 200 MB upload limit

See Docmind OpenAPI and Docbooks OpenAPI.