Skip to content

Errors

Every error response follows a consistent structure (powered by the Huma framework):

{
"status": 400,
"title": "Bad Request",
"detail": "validation failed",
"errors": [
{
"message": "expected required property input to be present",
"location": "body.input",
"value": null
}
]
}
FieldTypeDescription
statusintegerHTTP status code
titlestringHuman-readable status label
detailstringSpecific error description
errorsarrayValidation details — each entry contains message, location, and value. Only present for validation errors.
StatusMeaningCommon causes
400Bad RequestMalformed JSON, missing required field, invalid enum value
401UnauthorizedMissing or invalid API key
413Payload Too LargeRequest body exceeds endpoint size limit
422Unprocessable EntityStructurally valid but semantically wrong (e.g. hmac-sha256 without a key)
429Too Many RequestsRate limit exceeded — wait and retry
503Service UnavailableStorage backend unavailable for binary output

Individual endpoint pages document their specific error cases.