Rate limits
Stay within 120 requests per minute per API key and handle refusals explicitly.
Per-key request limit
Each key allows 120 requests per minute across the authenticated v1 endpoints. A batch counts as one request. Test keys are rate-limited too.
This request limit is independent of the recipient allowance, which is shared by the organization. Batching reduces requests, not recipient usage.
A rate-limited answer
The server responds with HTTP 429 and Retry-After: 60. Email and activity endpoints return ErrorCode 429; account endpoints return error.code: "rate_limited".
HTTP/1.1 429 Too Many Requests
Content-Type: application/json
Retry-After: 60
{"ErrorCode":429,"Message":"Over 120 requests a minute for this key."} Retry advice
Queue work in your application instead of starting unlimited requests concurrently. Honor Retry-After in seconds, add a small random delay when many workers share a key, and cap the number of attempts.
An explicit rate-limit refusal happens before the endpoint runs, so that request did not send mail. A network timeout is different: a message may have been queued before the connection ended. Inspect activity rather than blindly repeating a send.
Do not retry validation, authentication, scope, suppression or allowance errors in a tight loop. Fix the input, key or account state, or wait for the documented reset.