Rate Limits
How we rate limit API requests to the Whippy API.
Rate limiting is a technique for limiting network traffic. It sets a limit on how many requests a client can make to the API within a certain time period. The Whippy Public Open API uses rate limiting to ensure fair usage and protect the service from abuse.
Rate Limit Tiers
The rate limits in the Whippy Public Open API are defined based on the type of API and the type of request (read or write). The limits are categorized into three types:
Standard APIs
These are the default rate limits for most API endpoints.
| Scope | Read | Write |
|---|---|---|
| Per API key / OAuth client ID | 150/s | 75/s |
| Per Organization | 300/s | 150/s |
Time-Consuming APIs
These are APIs that typically take longer to process, such as requests to v1/campaigns, v1/contacts/lists, v1/contacts/filter, and agent-test endpoints (v1/agent_tests, v1/agent_test_runs).
| Scope | Read | Write |
|---|---|---|
| Per API key / OAuth client ID | 50/s | 1/s |
| Per Organization | 100/s | 2/s |
High Limit APIs
These are APIs that have higher limits, such as v1/organization and v1/custom_events.
| Scope | Read | Write |
|---|---|---|
| Per API key / OAuth client ID | 300/s | 100/s |
| Per Organization | 600/s | 150/s |
Handling Rate Limits
Caller limits (API key or OAuth client ID) and organization limits are separate buckets. Exceeding either the caller bucket or the organization bucket returns a 429 Too Many Requests status code.
Please note that these limits are subject to change, and it's recommended to design your application to handle rate limit errors gracefully. This can include strategies like exponential backoff, where the client progressively lengthens the wait time between requests to reduce the load on the server.
Updated 6 days ago
