Skip to content

Error states

This page describes the most important HTTP statuses and error codes.

Error response structure

All error responses follow a consistent format:

json
{
  "Code": "INVALID_API_KEY",
  "Message": "Error description"
}

For error 429, there is an additional RetryAfterSeconds field:

json
{
  "Code": "RATE_LIMIT_EXCEEDED",
  "Message": "Too many requests. Please try again later.",
  "RetryAfterSeconds": 10
}

Error state overview

400 Bad Request

CodeDescription
MISSING_API_KEYThe X-Api-Key header is missing

401 Unauthorized

CodeDescription
INVALID_API_KEYThe key does not exist or is invalid
SECRET_REQUIREDThe secret part is missing (expected KeyId.Secret)
INVALID_SECRETThe secret part is invalid
COMPANY_API_DISABLEDAPI access is disabled for your company
API_KEY_DISABLEDThis specific key is disabled

403 Forbidden

CodeDescription
IP_NOT_AUTHORIZEDAccess blocked due to IP authorization

409 Conflict

CodeDescription
EXPORT_DUPLICATEDuplicate export – a request with the same parameters already exists

429 Too Many Requests

CodeDescription
RATE_LIMIT_EXCEEDEDRate limit exceeded – see Rate limits

5xx Server Error

Server-side error. Try the request again later.
If the problem persists, contact us at enterprise@xdent.cz

Logging for diagnostics

When troubleshooting errors, always record:

  • HTTP status and error code (Code),
  • X-Request-Id from the response header,
  • Endpoint and time of the call.