The Platform enforces rolling rate limits to restrict the number of API requests a user, application, or service can make within a dynamic timeframe. It helps to prevent any single user or service from consuming disproportionate resources that could degrade the service for others.
The requests are checked against both the 60-second and 1-hour limits. An application can continue to send requests as long as it doesn’t exceed either limit. Once the 1-hour limit is breached, further requests are denied, regardless of whether it complies with the 60-second limit. Once the rate limit is reached, subsequent requests fail with the following error message: “Rate limit for this API has been reached. Please try again after some time.”
API Rate Limit Matrix
Enforcement Level |
Rate Limit |
API List |
bot |
60 per minute
1800 per hour |
Bot Definition APIs (Upload File, Import Bot as a New Bot, Import Bot into an Existing Bot, Import Bot Functions, Install Sample Bot, Bot Export, Enable Channel, Add and Enable a New Language, Enable an existing Language, Disable an existing Language, Update a Language Configuration, Publish Bot, Bot Variables Import, Batch Test Execution, Get Batch Test Suites, Export Batch Test Suite, Import Batch Test Suite, Delete Batch Test Suite, Delete Batch Test Suite Execution, Create (Import) a Conversation Test Suite, Conversation Test Suite Execution, and Delete Conversation Test Suite)
NLP Training APIs (ML Utterances Import, ML Utterance Train, ML Utterances Export, FAQ Training, Extraction from file or URL, Get Extractions History, Get Extraction Question, Get KnowledgeTasks, Add Questions from Extraction, Get FAQs, and Update NLP Configurations)
Analytics APIs (Find Intent, Conversation History, Conversation Summary, Feedback Analytics, Debug Logs, Get ChangeLogs, Sessions History, Get Dashboard Widget Data, Get Analytics, User Engagement Trend, and Conversation Details and Summary) |
request_id |
60 per minute
1800 per hour |
Bot Definition Status APIs (Bot Import Status, Bot Export – Status, Bot Publish Status, Batch Test Execution Status, Conversation Test Suite Creation Status, and Conversation Test Suite Execution Status)
NLP Training Status APIs (ML Utterances Import Status, ML Utterance Train Status, ML Utterances Export Status, and FAQ Training Status) |
account |
60 per minute
1800 per hour |
Admin APIs (Get Bots, Import Roles, Get Roles, Get User Roles Details, Get Groups, Export Roles, Assign BT Roles, Assign Admin Roles, Update User Access, Create Users, Get Users Information, Update User, Remove Users from Account, Delete Customer Data, Delete Customer Data Status API, and Get Admin Console Audit Logs) |
bot |
600 per minute
18000 per hour |
Bot Definition Notification APIs (Proactive Notification, Proactive Notification Status) |
account+table |
600 per minute
18000 per hour |
Data access APIs (Insert Data, Insert Bulk Data, Update Data, Delete Data, Get Table Data, and Get View Data) |
Best Practices
- Spread out calls evenly to avoid traffic spikes.
- Use filters to limit the data response size and avoid calls that request overlapping data.
- When the limit has been reached, stop making API calls. Wait for the specific time period to pass. Alternatively, implement a backoff strategy where your application automatically reduces its request frequency and retries failed requests after a calculated delay.
Need a higher or custom rolling Rate Limit? Contact support.