429 until the current window resets.
Per-tier limits
Free tier has no API key access — the table is shown for completeness only. Pro+ unlocks key creation.
Rate limits are tracked independently per route. Calls to
POST /api/workflows/:slug/run and POST /api/models/:internalName/run each maintain their own bucket — calls to one do not consume quota on the other.Rate limit headers
Every successful response from a rate-limited endpoint includes three headers that reflect the state of your current bucket:
You can inspect these headers with
curl -i:
429 responses
When you exceed the limit, the API returns HTTP429 with the RATE_LIMIT_EXCEEDED code:
Retry-After header (in seconds) indicating exactly how long to wait before retrying:
Recommended back-off pattern
CheckX-RateLimit-Remaining before dispatching batch calls. If the value falls below 5, pause and wait until X-RateLimit-Reset before sending more requests. When you receive a 429, read the Retry-After value and sleep for that many seconds before retrying.