Overview
The Partner API enforces per-partner rate limiting using a sliding window algorithm. Each API Key has an independent rate limit counter.Rate limiting is only active when a
rateLimit value has been configured for your API Key. If no limit is configured, requests are not throttled. Contact the CleanLife integration team to confirm your rate limit quota.How It Works
- Every authenticated request counts toward your API Key’s limit within the current window.
- The window is 60 seconds (sliding). When a new window starts, the counter resets.
- If the counter exceeds your configured limit, the request is rejected with
429 Too Many Requests.
Rate Limit Window
| Property | Value |
|---|---|
| Window type | Sliding window |
| Window duration | 60 seconds |
| Counter scope | Per API Key (not per IP, not per endpoint) |
Rate Limit Error
When the limit is exceeded, the API returns: HTTP Status:429 Too Many Requests
The
Retry-After header is not currently included in the 429 response. The window is always 60 seconds, so you can safely wait 60 seconds before retrying.Retry Behavior
When you receive a429, implement the following retry strategy:
- Stop sending requests immediately — do not retry in a tight loop.
- Wait at least 60 seconds — the full sliding window duration.
- Resume with reduced throughput — spread requests evenly rather than bursting.
Recommended Backoff
Best Practices
Spread Your Requests
Avoid sending all requests in a burst at the start of each minute. Spread them evenly across the 60-second window. Bad:Use a Queue
For high-volume operations (e.g. batch booking creation), use an internal queue in your system that dispatches requests at a controlled rate rather than sending them all simultaneously.Handle 429 Gracefully
Always check for the429 status code in your HTTP response handling. Do not treat it as a fatal error — it is recoverable.
Monitor Usage
Log every429 response your integration receives. A sustained rate of 429 errors indicates that your request throughput is too high. Consider requesting a higher limit from the CleanLife team.
Requesting a Higher Limit
If your integration requires a higher throughput, contact the CleanLife integration team with:- Your partner ID
- Your expected peak requests per minute
- A brief description of your use case