Skip to main content

Error reference

JSON shapes

Many domain errors use:

{
"error": "service_not_found",
"message": "Service not found."
}

Validation problems from the framework use:

{
"error": "validation_error",
"detail": []
}

where detail is an array of field-level issues (location, message, type).

Error codes

CodeHTTPDescription
invalid_api_key401API key missing or invalid
service_not_found404Catalog slug does not exist
domain_not_found404Domain has no matching brand
query_too_short422Search query must be at least 2 characters
invalid_svg400SVG failed sanitization
duplicate_email409Email already registered
invalid_credentials401Wrong email or password
invalid_token401JWT missing, malformed, or expired
weak_password422Password does not meet requirements
billing_error400Billing provider error
maintenance503API temporarily unavailable
internal_error500Unexpected server error

Maintenance mode

When maintenance is active, non-health routes may respond with 503:

{
"error": "maintenance",
"message": "The API is temporarily unavailable for maintenance.",
"retry_after": "Please try again in a few minutes."
}