Errors, quotas and limits
The error envelope, status codes and quota/billing outage behavior.
1 min read 3 sections
Error envelope#
Error responses contain the error, message, statusCode and requestId fields.
Error response
{
"error": "ForbiddenError",
"message": "Required permissions: links:write",
"statusCode": 403,
"requestId": "…"
}Status codes#
| Code | Meaning |
|---|---|
400 | Invalid body or cursor |
401 | Key missing, invalid, revoked or expired |
403 | Required scope missing |
409 | Idempotency conflict (same key, different payload) |
429 | Quota exceeded; wait for Retry-After |
503 | Mutation during a billing outage; retry with the same idempotency key |
Quotas#
Every developer API call is recorded against your monthly monthlyApiCalls usage; link, tree, board, route and event operations additionally consume plan resource quotas. Idempotent retries do not increment counters twice. You can see your current usage on the Usage tab of the console.
During a billing read/check outage, read-only requests continue in a controlled way; only mutations stop with 503.
Is something missing or wrong? Write to the support team; including the X-Request-Id value from the response speeds up the fix.