Errors
Errors return a JSON body with a detail message and a standard HTTP status:
{ "detail": "Requires plan: pro or enterprise" }
| Status | Meaning |
|---|---|
400 | Bad request / validation error |
401 | Not authenticated (missing/invalid key or session) |
402 | Plan required — the feature isn't on your plan |
403 | Authenticated but not permitted (scope/role) |
404 | Resource not found |
409 | Conflict (e.g. alias already taken) |
410 | Gone (expired / exhausted link) |
422 | Unprocessable (e.g. destination flagged unsafe) |
429 | Rate limited — see Rate limits |
5xx | Server error — safe to retry with backoff |
Validation errors (400/422) may return a list of field issues; render detail
accordingly.