Rate Limits

API requests are rate-limited based on your subscription plan.

Limits by plan

PlanPriceRequests
Free$0/mo1,000/month
Plus$39/mo10,000/month
Pro$99/mo100,000/month
Ultra$299/mo500,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 time
import requests
def 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)
continue
return response
raise 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.