Rate Limits
The SMS API limits the number of requests that can be made from a single IP address.
Limit
The current limit is:
| Limit | Value |
|---|---|
| Requests | 300 |
| Period | 1 second |
| Applied per | IP address |
This means an IP address can make up to 300 requests per second.
Rate limit exceeded
When the rate limit is exceeded, the API returns HTTP 429.
{
"success": false,
"message": "Too many requests.",
"error": "RATE_LIMIT_EXCEEDED",
"data": null
}
The response also includes a Retry-After header.
HTTP/1.1 429 Too Many Requests
Retry-After: 1
The Retry-After value indicates how long your application should wait before making another request.
Handling rate limits
When you receive a 429 response:
- Stop sending requests temporarily.
- Read the
Retry-Afterheader. - Wait for the specified period.
- Retry the request.
If the request is a retry of the same SMS operation, use the same Idempotency-Key.
Example
Request
↓
HTTP 429
↓
Read Retry-After
↓
Wait
↓
Retry using the same Idempotency-Key
Recommended approach
Applications sending large numbers of SMS messages should avoid sending requests continuously at the maximum rate.
Use a queue or controlled worker process to manage outgoing requests and automatically handle 429 responses.