Skip to content

Rate Limits

Per-key quotas, enforced by a Redis-backed sliding window. Hit the cap and you'll meet a 429.

Defaults

Endpoint Quota
All endpoints (default) 120 requests / minute / key
POST /projects/{id}/automation/cam-planning 30 / hour

Contact support for higher limits.

Headers

Every successful response carries:

X-RateLimit-Limit:     120
X-RateLimit-Remaining: 47
X-RateLimit-Reset:     1715260920

Reset is a Unix epoch seconds timestamp.

Hitting the limit

HTTP/1.1 429 Too Many Requests
Retry-After: 30
Content-Type: application/json

{"detail":{"code":"validation_error","message":"Rate limit exceeded: 120 per minute","details":{"retry_after_seconds":30},"request_id":"..."}}

Wait Retry-After seconds, then retry with exponential backoff and jitter.

Concurrency limits

The CAM-planning automation has a per-user serialisation lock independent of rate limits. Only one automation.cam_planning task runs at a time per user; further requests queue (queued: true with a queue_position). Concurrent requests for the same project are rejected immediately with 409 Conflict, code=automation_slot_busy.

For parallel automation, use separate user accounts (one API key per user).