Skip to content

Rate limits

Limits keep one integration from harming another. They are counted per key in fixed one-minute windows, plus a daily cap on live sends per workspace.

These examples use a placeholder address. Your console shows the exact address of the API for your workspace.

The limits#

Rate limits
BucketApplies toDefault
requestsEvery authenticated request, per key.60 per minute
sendsPOST /messages, per key.30 per minute
templatesGET /connections/{id}/templates, per key.10 per minute

A request counts against requests and, where it applies, against its own bucket as well. Sandbox keys have the same per-minute limits and no daily cap.

The headers#

Every authenticated response has RateLimit-Limit, RateLimit-Remaining and RateLimit-Reset (seconds until the window resets) for the bucket the call used. A refused call also has Retry-After.

HTTP
HTTP/1.1 429 Too Many Requests
X-Request-Id: req_4f1c2b9a0d7e6f5a4b3c2d1e
RateLimit-Limit: 60
RateLimit-Remaining: 0
RateLimit-Reset: 23
Retry-After: 23
429 Too Many Requests
{
  "error": {
    "code": "rate_limited",
    "message": "Too many requests.",
    "request_id": "req_4f1c2b9a0d7e6f5a4b3c2d1e",
    "details": {
      "bucket": "requests"
    }
  }
}

Daily send cap#

A live workspace can send up to 1,000 messages through the API per UTC day. Beyond that POST /messages returns 429 daily_send_limit_reached until the next day.

The console shows your usage and your limits on the Usage page of each application.