Skip to main content

Overview

SmartLead applies rate limits to protect the platform and ensure fair access for all users. This guide explains the rate limit structure, how to detect when you’re being throttled, and strategies for building efficient integrations.

Rate Limit Structure

SmartLead enforces rate limits on a per-API-key basis:
Rate limits apply to your API key across all endpoints combined. A mix of campaign, lead, and analytics requests all count toward the same limit.

Detecting Rate Limits

When you exceed the limit, the API returns a 429 Too Many Requests response:

Rate Limit Headers

Check response headers to monitor your usage:
Python

Backoff Strategies

Exponential Backoff with Jitter

The recommended approach for handling rate limits:
Python

Proactive Rate Limiting

Instead of waiting for 429s, track your usage and throttle proactively:
Python
Set your client-side limit to 80% of the actual limit (e.g., 50 requests/minute when the limit is 60). This buffer accounts for timing differences and prevents edge-case throttling.

Optimizing Request Patterns

Batch Operations

Instead of making individual requests per lead, use batch endpoints:
Python

Cache Responses

Cache data that doesn’t change often to reduce API calls:
Python

Use Webhooks Instead of Polling

Instead of polling for new replies every few seconds:
Python
Set up a webhook to receive events in real time with zero API calls:
Python
See the Webhook Integration Guide for full details.

Parallelize with Rate Awareness

When you need to make many requests, use controlled concurrency:
Python

Troubleshooting

Check if another integration or script is using the same API key. Rate limits are per-key, not per-client. Consider using separate API keys for different integrations.
Review your request patterns — are you polling when you could use webhooks? Are you making individual requests when batch endpoints are available? If you genuinely need higher limits, contact SmartLead support about Enterprise plans.
Default to exponential backoff starting at 1 second. Most rate limit windows reset within 60 seconds.

What’s Next?

Error Handling Guide

Handle all API errors gracefully

Best Practices

Build production-grade SmartLead integrations