Limits
Limits apply to the whole business, across all its keys. More keys don't add capacity.
| Budget | Limit |
|---|---|
| Requests | 300 a minute |
| Writes (part of the requests) | 60 a minute |
| Availability lookups (part of the requests) | 60 a minute |
| Requests running at once | 5 |
| Requests | 50,000 a UTC day |
| Bookings created through the API | 30 a minute, 500 a UTC day |
| Customer erasures | 100 a UTC day |
| Other actions that email a guest, such as quick invites and booking changes | 200 in any 24 hours |
| Webhook delivery attempts | 20,000 a UTC day |
Every response carries the minute budget it used:
X-RateLimit-Limit: 300
X-RateLimit-Remaining: 287
X-RateLimit-Reset: 41
X-RateLimit-Reset is in seconds.
When you hit a limit
| Status | Code | What to do |
|---|---|---|
| 429 | rate_limited | Wait for Retry-After seconds |
| 429 | concurrency_limited | Wait for a running request to finish |
| 429 | daily_quota_exceeded | Wait for Retry-After seconds: until midnight UTC for daily budgets |
| 503 | service_busy | Wait for Retry-After seconds |
Back off with jitter rather than retrying in a tight loop. If your integration needs more, contact Clearslot support: limits can be raised for a while.
Emails to the business
The business's owners get an email:
- once a UTC day, when its integrations reach 80% of the daily request limit
- once, when the API pauses because the business no longer has Pro or a complimentary grant
A paused business answers every request with 402 plan_required. Its keys and connected apps are kept, and they work again as soon as the business is back on Pro or has a complimentary grant.
Its webhook endpoints pause and resume the same way.