Skip to content

Error reference

Dockt returns errors as Problem Details with Content-Type: application/problem+json.

{
"type": "https://docs.dockt.com/errors/invalid-request",
"title": "Bad request",
"status": 400,
"detail": "The supplied cursor is invalid.",
"instance": "req_example1042",
"errors": {
"issues": [
{
"path": ["body", "worker", "nationality"],
"message": "Expected a two-letter country code."
}
]
}
}

Use type as the stable machine-readable error code. Use detail and optional errors.issues to explain the specific request failure. instance is the Dockt request ID when available.

Don’t branch application logic on title or detail; those fields are written for people and can become more specific.

A 401 response includes WWW-Authenticate. A 429 response includes Retry-After in seconds. Every API response includes x-request-id; log it and include it when contacting hello@dockt.com.

Error typeTypical statusAction
Account user conflict409Preserve an active owner or resolve membership state.
Conflict409Resolve the duplicate or incompatible resource state.
Forbidden403Use a compatible scope and permission.
Forbidden scope403Select a scope available to the session.
Idempotency conflict409Retry the same operation unchanged or use a new key for new work.
Internal error500Retry safely and retain the request ID.
Authentication state error500Retry authentication and retain the request ID.
Invalid account user400Correct the account user or invitation input.
Invalid API credential400 or 401Correct credential input or authentication.
Invalid Assessment context400Correct context codes and value types.
Invalid document upload400Send one supported non-empty file within the size limit.
Invalid Features400Use supported package codes and values.
Invalid reference422Use a referenced resource valid in the current scope.
Invalid request400Correct the request syntax or cursor.
Invalid session scope409Select a valid session scope again.
Missing authentication401Send a valid bearer token or browser session.
Not found404Check the ID and authenticated scope.
Operation unavailableVariesUse a documented public operation.
Rate limit exceeded429Wait for Retry-After before retrying.
Processing temporarily unavailable409Retry the idempotent request later.
Scope context required409Select an Account or Workspace in the session.
Validation failed422Correct every structured validation issue.
Webhook inactive409Activate the endpoint before sending a test.
Workspace Features required409Configure Features before creating Assessments.