Docs
Docs
API reference

Errors

Every error has the same envelope, and every code has a page that explains it and how to fix it.

The envelope

The body of every 4xx and 5xx response.

{
  "error": {
    "code": "invalid_hostname",
    "message": "That is not a valid hostname.",
    "fix": "Send a hostname like careers.acme.com: no scheme, path, port, wildcard or IP address.",
    "docs": "https://apexly.dev/docs/errors/invalid_hostname"
  }
}
FieldTypeDescription
error.codestringStable, machine-readable; branch on this.
error.messagestringWhat went wrong, in plain words.
error.fixstringWhat to do about it, in one sentence.
error.docsstringThe page for this code, e.g. https://apexly.dev/docs/errors/invalid_hostname.
error.request_idstringinternal_error only: quote it when you contact support.

Codes

Each code links to its page: what it means, why it happens and what to do.

CodeHTTPMessage
invalid_request400The request could not be read.
unauthorized401The API key is missing, invalid or revoked.
forbidden403This credential is not allowed to do that.
card_required402Live keys need a card on file.
live_keys_need_plan402Live keys need a plan: this account is on Free.
card_declined402The card was declined.
account_suspended403The account is suspended, so changes are paused. Existing domains keep serving.
plan_required403This feature is not included in the current plan.
not_found404Nothing exists at this path, or it belongs to another app.
idempotency_key_in_use409A request with this Idempotency-Key is still being processed.
payload_too_large413The request body is larger than 100 KB.
validation_failed422The request did not pass validation.
idempotency_key_reused422This Idempotency-Key was already used with a different request.
invalid_hostname422That is not a valid hostname.
hostname_is_apexly422Hostnames under Apexly zones cannot be added.
hostname_is_public_suffix422That hostname is a public suffix, so nobody can prove control of it.
hostname_held422This hostname is held for review.
domain_limit_reached422The plan does not allow more domains.
origin_not_allowed422That origin cannot be used.
rate_limited429Too many requests.
billing_unavailable503The billing provider did not answer.
internal_error500Something went wrong on our side.
Was this helpful?
Edit this page