Skip to main content

ServiceError

statusCodenumberrequired

HTTP status code.

Example: 400
timestampstring<date-time>required

When the error was produced.

Example: 2026-01-15T09:30:00.000Z
pathstringrequired

The request path.

Example: /api/service/products
methodstringrequired

The request method.

Example: GET
message objectrequired

What went wrong. A list when several request fields failed validation.

oneOf
string
errorstring

Short name of the HTTP status.

Example: Bad Request
codestring

Machine-readable code, present on some errors (for example when a key's rate limit is hit).

Example: API_KEY_RATE_LIMITED
operationstring

On an idempotency conflict: the operation the key was used for.

Example: createSalesOrder
idempotencyKeystring

On an idempotency conflict: the Idempotency-Key involved.

Example: 11111111-2222-4333-8444-555555555555
requiredPlanstring

On a plan-limit refusal (402): the plan that lifts the limit, when there is one.

Example: PROFESSIONAL
retryAfterSecondsnumber

On a rate-limit refusal (429): seconds to wait before retrying.

Example: 42
requestIdstring

The request id. It matches the x-request-id response header; quote it when contacting support.

Example: 7f3c1d52-0a9b-4e6f-8d21-3b5a6c7d8e9f
ServiceError
{
"statusCode": 400,
"timestamp": "2026-01-15T09:30:00.000Z",
"path": "/api/service/products",
"method": "GET",
"message": "limit must not be greater than 100",
"error": "Bad Request",
"code": "API_KEY_RATE_LIMITED",
"operation": "createSalesOrder",
"idempotencyKey": "11111111-2222-4333-8444-555555555555",
"requiredPlan": "PROFESSIONAL",
"retryAfterSeconds": 42,
"requestId": "7f3c1d52-0a9b-4e6f-8d21-3b5a6c7d8e9f"
}