Errors and limits
Status codes, the error body, and rate limits.
Errors share one body:
{ "success": false, "error": { "code": "NOT_FOUND", "message": "Article not found.", "path": "/api/v1/…", "timestamp": "…" }, "meta": { "requestId": "…" }}Branch on error.code, and include meta.requestId when you contact support.
| Status | code | When |
|---|---|---|
401 | UNAUTHORIZED | Missing, unknown, or revoked content key. |
403 | FORBIDDEN | A content key used on another project, for a write, or on any endpoint other than reading articles. |
404 | NOT_FOUND | No published article at that slug or ID. A draft reads as missing. |
429 | RATE_LIMIT_EXCEEDED | More than 300 requests in a minute on one key from one edge location. Wait, then retry. |
Limits
300 requests a minute per content key, counted per edge location (requests from different regions are counted separately).
100 articles per page.
Published articles only.
A static build reads each article once per build, and a revalidating site once per refresh, so a normal site stays far below the limit. If your build reads a large site in parallel, cap the number of parallel requests.