Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.sendmux.ai/llms.txt

Use this file to discover all available pages before exploring further.

The Mailbox API uses standard HTTP status codes and the same error envelope as the Management API.

Error response format

{
  "ok": false,
  "error": {
    "code": "invalid_parameter",
    "message": "A human-readable description of the error.",
    "param": "cursor",
    "doc_url": "https://docs.sendmux.ai/api-reference/errors#invalid_parameter",
    "retryable": false
  },
  "meta": {
    "request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
  }
}
FieldDescription
codeStable machine-readable code. Branch client logic on this value.
messageHuman-readable description. Wording may change.
paramPresent when the error maps to a specific request field.
doc_urlLink to the error reference.
retryabletrue when the same request may succeed later without changes.
errorsPresent on accumulated validation failures.

Common codes

HTTP statusError codeRetryableMeaning
400invalid_parameterfalseBad query parameter or malformed request body.
400missing_parameterfalseRequired parameter missing.
401authentication_requiredfalseMissing, invalid, expired, or revoked API key.
403insufficient_permissionsfalseThe key is valid but cannot call this endpoint.
404not_foundfalseThe mailbox or requested resource is absent or inaccessible.
409conflictfalseThe resource state prevents the operation.
409idempotency_conflictfalseAn Idempotency-Key was reused with a different request.
413payload_too_largefalseThe request body is too large.
422validation_errorfalseThe request parsed correctly but violates a semantic rule.
429rate_limit_exceededtrueRate limit hit. Honour Retry-After.
500internal_errortrueUnexpected server error.
503service_unavailabletrueA required service is temporarily unavailable. Honour Retry-After when present.

Retry handling

Retry only when retryable is true. For 429 and 503, use the Retry-After header before retrying.
HTTP/1.1 429 Too Many Requests
Retry-After: 30
Content-Type: application/json
For POST requests that support Idempotency-Key, send a unique key so a retry cannot perform the same operation twice.