Rate Limits
To ensure fair usage and system stability, we enforce limits on both our API and Dashboard.
API Rate Limits (Consumes Credits)
Rate limits are only enforced on the Free Plan. Paid plans have unlimited API requests:
| Plan | Limit |
|---|---|
| Free | 1 req / 5 seconds |
| Pay As You Go | Unlimited |
| Pro | Unlimited |
| Enterprise | Unlimited |
If you exceed these limits, the API will respond with 429 Too Many Requests.
Global API Limits
To protect against Denial of Service (DoS) attacks, we enforce a global rate limit per IP address across all endpoints:
- Global Limit: 300 requests / minute per IP.
Dashboard Fair Usage Policy (Free)
Validation performed inside the Dashboard and Bulk Validation page does not consume credits. However, to prevent abuse, we apply a fair usage limit:
- Limit: 300 emails per 10 minutes.
- Scope: Per user account.
If you exceed this limit, you will see a message: "Too many validations. Please try again after some time. Fair usage limits apply."
Handling Rate Limits
When you exceed the rate limit, you'll receive a 429 response with details:
{
"error": "Rate limit exceeded, try again after 5 seconds, your plan is \"free\"",
"retryAfter": 5,
"plan": "free"
}
The error message includes:
- retryAfter: Number of seconds to wait before retrying
- plan: Your current subscription plan
Best Practices
- Handle 429s: Implement a retry logic with exponential backoff in your code.
- Use Batching: If you have a large list, use the Async API (consumes credits) or split your workload.