Overview
AhaSend API implements rate limiting to ensure fair usage and maintain optimal performance for all users. Rate limits are applied per account and vary depending on the endpoint category.Rate Limit Tiers
Standard API Endpoints
Most API endpoints are subject to the following rate limits:Request Rate
100 requests per secondMaximum sustained request rate
Burst Capacity
200 requestsShort-term burst allowance
/v2/ping, account members, sub-accounts and sub-account usage.
/v2/accounts/*- Account management/v2/accounts/{account_id}/api-keys/*- API key management/v2/accounts/{account_id}/domains/*- Domain management/v2/accounts/{account_id}/messages/*- Message operations/v2/accounts/{account_id}/suppressions/*- Suppression management/v2/accounts/{account_id}/routes/*- Route management/v2/accounts/{account_id}/webhooks/*- Webhook management/v2/accounts/{account_id}/smtp-credentials/*- SMTP credential management
Statistics, Stream and Trigger Endpoints
Statistics, webhook and route stream, and test-trigger endpoints have a separate limit of 1 request per second:Request Rate
1 request per secondSustained request rate
Burst Capacity
1 requestNo burst allowance
/v2/accounts/{account_id}/statistics/transactional/deliverability/v2/accounts/{account_id}/statistics/transactional/bounce/v2/accounts/{account_id}/statistics/transactional/delivery-time
Rate Limit Exceeded Response
When you exceed the rate limit, the API returns a429 Too Many Requests status code:
Requests share the account limit. Spread requests over time; a new second does not reset a fixed request counter. Do not depend on
Retry-After or X-RateLimit-* headers for rate-limit responses.Best Practices
1. Implement Exponential Backoff
When you receive a 429 response, implement exponential backoff with jitter:2. Batch Operations When Possible
For operations that support batching, group multiple items into single requests:3. Cache Frequently Accessed Data
Cache static or slowly-changing data like account information and domain lists to reduce unnecessary API calls.4. Use Webhooks for Real-time Updates
Instead of polling endpoints repeatedly, configure webhooks to receive real-time notifications about message status changes and other events.Statistics API Considerations
Sending Limits
Hourly sending limits start low for new accounts and grow with account age, plan and sending reputation; support can raise them. These are separate from API request rates and the Free plan’s 1,000 included emails per month. See plans and limits.Contact Support
If your application requires higher rate limits due to legitimate high-volume usage patterns, please contact our support team to discuss custom rate limit arrangements.Need Higher Limits?
Reach out to our support team if you need increased rate limits for your production application.

