Rate Limits
API requests are rate-limited based on your subscription plan.
Limits by plan
| Plan | Price | Requests |
|---|---|---|
| Free | $0/mo | 1,000/month |
| Plus | $39/mo | 10,000/month |
| Pro | $99/mo | 100,000/month |
| Ultra | $299/mo | 500,000/month |
Exceeding the limit
If you exceed your rate limit, you'll receive a 429 Too Many Requests response:
json
{"error": "rate_limit_exceeded","message": "Rate limit exceeded. Please retry later.","retryAfter": 30}
Best practices
1. Implement exponential backoff
When you get a 429, wait before retrying and increase the wait time on repeated failures:
python
import timeimport requestsdef make_request_with_retry(url, headers, max_retries=3):for attempt in range(max_retries):response = requests.get(url, headers=headers)if response.status_code == 429:wait_time = 30 * (2 ** attempt)print(f"Rate limited. Waiting {wait_time}s...")time.sleep(wait_time)continuereturn responseraise Exception("Max retries exceeded")
2. Cache responses
Cache API responses when possible. Filing data doesn't change frequently.
3. Use the limit parameter
Request only the data you need to reduce unnecessary API calls.
Need higher limits?
Upgrade your plan for more requests, or email support@secdaily.io for custom enterprise plans.