Skip to content

13.4Rate limits

A rate limit is the most calls you can make in a given time. These limits apply to API calls:

WhatLimitAnswer when you pass it
Run a check now (TriggerNow)Once per monitor every 30 secondsresource_exhausted (429), check just ran — try again in 12s
Public status page calls (no key)60 a minute per IP address, by defaultresource_exhausted (429), rate limit exceeded
DiscoverMonitors (no key)10 a minute per IP address, by default429, rate limit exceeded
Confirmation emails for an email channel (ResendEmailVerification)One per address every 10 minutes, 5 per address a day, 50 a day per teamresource_exhausted
Creating monitorsSeveral creates at the same time can be refusedunavailable (503). Send it again.
Send a test alert (TestChannel)5 per channel each minute, 30 per team each hourtoo many test sends to this channel: at most 5 per minute, try again shortly or too many test sends for this team: at most 30 per hour, try again later
Prometheus scrape (GET /result/v1/metrics)30 a minute per team, bursts of 10429, rate limit exceeded
Request body4 MiB413, request body too large

List calls also have a largest page size. See 13.6.

When you get 429, wait and try again. For TriggerNow, wait the number of seconds in the message. Where a 429 has a Retry-After header, it gives the seconds to wait, such as Retry-After: 60. Not every 429 has one.

Last updated