Skip to content

Rate limits ​

LimitValue
Sending (POST /v1/messages, POST /v1/contacts)50 requests a second per key, 200 a second per account
Reading (GET endpoints)20 requests a second per key
Requests with an invalid key20 a minute per address, then every request from it is refused until the minute ends
Request body64 KiB
Messages a daythe daily limit of the account; test keys: 1000 a day

Over a rate limit the answer is 429 too_many_requests with a Retry-After header in seconds. Wait that long, then retry with the same Idempotency-Key.

Daily limit ​

Every account has a daily limit of accepted messages; a new account starts with a modest one. Over it, POST /v1/messages answers 429 daily_limit_reached:

json
{
  "type": "about:blank",
  "status": 429,
  "code": "daily_limit_reached",
  "title": "The daily message limit is reached",
  "retry_after": "2026-11-03T03:00:00+00:00"
}

The day starts at midnight in the time zone of the account (Settings → Account in the console); retry_after and the Retry-After header tell when. Messages the provider later refuses still count. To raise the limit, ask your manager.

Test keys have their own limit of 1000 messages a day, apart from the live one.

ACE SEND API v1