Errors
Error response shapes, status codes, validation issues, and rate limits.
Errors
RogerIQ APIs return JSON errors with a short message and, for validation failures, structured issues.
Error Shape
json{ "error": "Validation failed", "issues": [ { "path": "email", "message": "Invalid email" } ]}
Some endpoints return:
json{ "message": "Project not found"}
Clients should read message, then error, then HTTP status text.
Common Status Codes
| Status | Meaning |
|---|---|
200 | Request succeeded. |
201 | Resource created. |
303 | HTML form submission redirect. |
400 | Invalid input or no updates provided. |
401 | Missing, invalid, or expired API key. |
403 | Scope, organization, or origin check failed. |
404 | Resource not found. |
410 | Public form or beacon archived. |
429 | Rate limit exceeded. |
500 | Server or provider error. |
Validation Errors
Validation issues use field paths when available.
json{ "error": "Validation failed", "issues": [ { "path": "fields.0.label", "message": "Required" } ]}
Retry Guidance
| Status | Retry? |
|---|---|
400 | No. Fix the request. |
401 | No. Refresh or rotate credentials. |
403 | No. Fix scopes, org access, or origin. |
404 | No, unless the resource is created asynchronously. |
429 | Yes, after the reset time. |
500 | Yes, with backoff. |