Skip to main content
The Spirii Public API uses conventional HTTP status codes. The response body always follows the same error envelope.

Error envelope

{
  "error": {
    "type": "invalid_request",
    "code": "missing_required_field",
    "message": "The field `country_code` is required.",
    "param": "country_code",
    "request_id": "req_01HW8K9ZY8"
  }
}

Status codes

CodeMeaning
400Invalid request — see error.code for details.
401Missing or invalid authentication.
403Authenticated, but not authorized for this resource.
404Resource not found.
409Conflict — e.g., duplicate creation.
422Validation error.
429Rate limit hit. See Rate limits.
5xxSpirii-side error. Safe to retry with backoff.
Always log the request_id. We use it to look up requests in our logs when you contact support.