Errors
The statuses the API returns, and the body each one carries.
| Status | Meaning | Body |
|---|---|---|
| 401 | Missing, malformed, expired or revoked key | {"message": "Unauthenticated."} |
| 403 | The key lacks the ability, or the action is not allowed for the team or plan | {"message": "...", "required_ability": "monitors:write"} (required_ability only on an ability refusal) |
| 404 | Not found, or it belongs to another team | {"message": "..."} |
| 409 | Conflict, such as an analysis already running | {"message": "..."} |
| 422 | Validation failed | {"message": "...", "errors": {"field": ["..."]}} |
| 429 | Rate limited | {"message": "..."} with a Retry-After header |
Fix the request on a 4xx other than 429; retrying unchanged gives the same answer.