Skip to main content

Error catalog

Every error response uses the application/problem+json (RFC 9457) format. The type field points to the catalog page for its code: https://docs.skipo.com/errors/{code}. The code is a stable contract — branch your logic on it.

codeHTTPRetryable?Title
validation_error400noValidation error
unauthorized401noUnauthorized
invalid_signature401noInvalid signature
clock_skew401yesClock skew too large
nonce_reused401yesNonce already used
key_expired401noAPI key expired
key_revoked401noAPI key revoked
insufficient_scope403noInsufficient scope
ip_not_allowed403noIP address not allowed
two_factor_required403noTwo-factor required
permission_denied403noPermission denied
api_access_disabled403noAPI access disabled
not_found404noResource not found
conflict409noConflict
idempotency_conflict409noIdempotency conflict
key_limit_reached409noAPI key limit reached
quotation_expired410yesQuotation expired
unprocessable422noUnprocessable request
rate_limited429yesRate limit exceeded
internal_error500yesInternal server error
downstream_unavailable502yesDownstream service unavailable
maintenance503yesService under maintenance
service_degraded503yesService degraded