Rate limits and errors
Throughput limits, error codes and how to handle rejections
Rate limits
Throughput is limited per organization: 25 requests per second on Free, 200 on Growth and 500 on Pro. Requests over the limit receive HTTP 429. Requests under it are unaffected. Two related limits can also stop traffic:
An optional per app RPS cap, set in the app's security settings, rejects that app's excess requests with 429 before they touch the organization budget.
On Free, reaching the monthly CU cap blocks all requests with HTTP 402 until the next cycle. Growth and Pro bill overage instead of blocking.
Each sub call in a batch counts toward the rate limit individually.
Handling 429 responses
Treat 429 as a signal to slow down, not an outage. Retry with exponential backoff and jitter, smooth bursts on your side rather than sending spikes, and prefer batch requests over rapid sequential calls when fetching related data. If you hit the limit routinely, an upgrade raises it. Sustained 429s are visible as throttled requests on the Statistics page.
Error codes
Platform level rejections use HTTP status codes with a machine readable code in the response body:
plan_upgrade_required
402
The method, alert type or feature needs a higher plan
quota_exceeded
402
The monthly CU cap is reached on a hard capped plan
app_limit_exceeded
402
Endpoints are suspended because active apps exceed the plan limit
org_locked
403
The organization is locked for non payment
forbidden
403
Your role does not permit this action
app_limit_reached
409
Creating or enabling an app is blocked at the active app limit
team_not_empty
409
A team cannot be deleted while it still has members
owner_required
409
The sole Owner cannot be removed or demoted
rate_limited
429
The requests per second limit is exceeded
app_daily_cap_exceeded
429
The daily CU cap is reached on the app
For 402 codes, the fix is a plan action: upgrade, reduce active apps, or wait for the cycle. For org_locked, settle the outstanding invoice on the Billing page. See plan changes and overage.
JSON-RPC errors
Errors inside a method call, such as invalid parameters or an unknown method, come back with HTTP 200 and a JSON-RPC error object:
Check both the HTTP status and the response body: platform rejections live in the status code, method problems live in the error object.
Last updated