Errors
Every failure returns the same envelope, so one handler covers all of them.
{ "error": { "code": "invalid_argument", "message": "Some parameters are missing or the wrong type.", "issues": [{ "field": "limit", "message": "expected number, received string" }] }}| Status | Code | Meaning |
|---|---|---|
400 | invalid_argument | A parameter is missing or the wrong type. issues names the field. |
401 | — | Missing or invalid API key. |
403 | forbidden | The key lacks the scope, named in required_scope. |
404 | not_found | No such endpoint, or the resource is not in this workspace. |
405 | method_not_allowed | The path exists under a different verb; see Allow. |
429 | rate_limited | Slow down; see retry_after_ms. |
500 | internal_error | Our fault. The message is deliberately generic. |
A 404 does not distinguish “deleted” from “belongs to another workspace” — telling those apart would confirm which ids exist.