Rate Limiting
Default Limits
- 12,000 requests per hour (200 per minute average)
- Calculated on a rolling window basis
- Limits apply per API key
Rate Limit Headers
Each response includes headers:
X-RateLimit-Limit: 12000
X-RateLimit-Remaining: 11945
X-RateLimit-Reset: 1695850800
Handling Rate Limits
When you receive a 429 (Too Many Requests) response:
- Respect the reset time - Wait until X-RateLimit-Reset
- Implement exponential backoff: ```python import time
def make_request_with_backoff(url, headers, data, max_retries=3): for attempt in range(max_retries): response = requests.post(url, headers=headers, data=data) if response.status_code == 429: wait_time = 2 ** attempt time.sleep(wait_time) continue return response
### Optimization Strategies
- **Batch requests** - Fetch multiple properties in one call
- **Cache results** - Store data locally to reduce API calls
- **Pagination** - Use limit and page parameters efficiently
- **Schedule requests** - Distribute API calls throughout the hour