GET-STARTED
Rate limits & errors
Request quotas, error codes, and retry policy.
Current limits
| Tier | Rate limit | File upload |
|---|---|---|
| Anonymous (no key) | 60 req/min | β |
| API key | 600 req/min | 25 MB |
| EatLy AI scan Β· Free | 2 / day | β |
| EatLy AI scan Β· Premium | 10 / day | β |
429 response
When you hit the limit, the server returns 429 Too Many Requests with a Retry-After header indicating seconds to wait.
HTTP/1.1 429
HTTP/1.1 429 Too Many Requests
Retry-After: 15
Content-Type: application/json
{ "ok": false, "error": "rate_limited", "retry_after": 15 }Best practices
- Reuse HTTP connections (keep-alive) on the server side
- Retry with exponential backoff + jitter
- Cache immutable responses (ETag / Cache-Control)