Catalyte
REST API·intermediate·3 min

Errors & status codes

The error envelope and every code Catalyte can return.


Every error returns the same envelope, regardless of endpoint:

{
  "error": {
    "code": "plan_limit",
    "message": "Free plan allows 100 products. You have 100.",
    "request_id": "req_01HZK..."
  }
}

code is stable across versions and safe to switch on. message is human-readable and may change. request_id ties to the entry in Logs.

Status codes

StatusCodesMeaning
400invalid_request, validation_failedThe body or query is malformed.
401unauthorized, invalid_tokenNo or bad bearer token.
402plan_limitYour plan blocks the action. Upgrade or remove items.
403forbidden, scope_missingToken lacks the scope.
404not_foundNo resource at that id.
409sku_conflictSKU already exists in this workspace.
422validation_failedSpecific field violated a constraint.
429rate_limitedSlow down. Retry-After header included.
500internal_errorOn us. Send us the request_id.

Idempotency

POST endpoints accept an Idempotency-Key header. Repeated requests within 24 hours return the original response — useful for safe retries on network blips.