Standard error format and error codes
All API errors follow a consistent JSON format:
{
"error": "error_code",
"message": "Human-readable description of the error"
}| HTTP Status | Error Code | Description |
|---|---|---|
400 | bad_request | Invalid parameters or missing required fields |
400 | validation_error | Request body failed validation |
401 | unauthorized | Missing or invalid API key |
403 | forbidden | Valid key but insufficient scope |
404 | not_found | Resource does not exist |
409 | conflict | Resource already exists or is in use |
429 | rate_limited | Too many requests |
500 | internal_error | Unexpected server error |
{
"error": "validation_error",
"message": "Missing required field: subject"
}{
"error": "unauthorized",
"message": "Invalid or missing API key"
}