Recently Ive deployed a new application after approval.
in some of the API call I send to RingCentral, I get 429 (request rate exceeded) as a response.
I read the API docs and found out that the throttling is done per extension.
https://developer.ringcentral.com/api-docs/latest/index.html#!#APIRateLimits.html
I wanted to ask some clarification questions:
1. the rate is per account or per extension in the account? I didnt understand whats the
rate if more than 1 extensions exist under an account.
meaning if under a certain account there are 17 extensions (for example), but only one
user grants access to the application I deployed, allowing me to access data for all extensions,
what is the rate: per granted access (because only one user granted access) or per extension
(because there are 17 extensions in the case I described above)?
I hope that my question is clear.
2. is there a way to increase the throttling rate?
3. when calling Get Extension Calls Log API, it seems that the calls are returned in a descending
order. how can I get them in an ascending order?
4. in case I need to get a large amount of data, how would you suggest to do that? for instance,
if I need to get data about calls that were done in the past 90 days.
5. is there a penalty when exceeding the throttling rate? is yes, what is it and how is it implemented?
thanks
Kindly login to Developer Portal and you should be able to look up this endpoint under the API Reference.
thanks for the quick response. i read your answers carefully and i have additional questions. the question number refers to my initial question number.
1. i executed the following code (pseudo code) -
Extension extension1 = new Extension (SOME_EXTENSION_ID);
Extension extension2 = new Extension (ANOTHER_EXTENSION_ID);
for (i = 0; i < 10; i++)
extension1.getExtensionCallLog ();
for (i = 0; i < 10; i++)
extension2.getExtensionCallLog ();
i used the same access token in both loops.
i got results for the first extension, but when i sent the first request in the second loop, i got 429 as a response status code.
therefore i ask again:
what is the rate - per granted access (per access token) or per extension (it's not the same thing, because i can use 1 access token to query about multiple extensions)?
4. i'll re-phrase my question:
there are cases in which i need to get a large number of calls data and their recording, in a very short time (which means - 2 heavy API calls for each call).
how can i sync 4,000 calls (for instance), which is actually 8,000 heavy API calls (get the call data and the recording for each call)?
thanks again :)
1. API Rate Limits
The Rate Limits for the application are set Per User ( RingCentral Extension ). All API methods are divided into API groups, each group having its own limit.
Learn more about rate limits and API groups
2. is there a way to increase the throttling rate?
We can increase the API Usage Plan on an application provided we review the actual use case associated with the API rate limit increase request. You would need to fill the Google Docs page below :
API Rate Limit increase request
3. when calling Get Extension Calls Log API, it seems that the calls are returned in a descending order. how can I get them in an ascending order?
The API response would list out the call log records in descending order but you can save them to a file and filter them in the ascending order.
4. in case I need to get a large amount of data, how would you suggest to do that? for instance,
if I need to get data about calls that were done in the past 90 days.
You can pass in the below query parameters to the GET Call Log API as below:
- dateFrom
- dateTo
5. is there a penalty when exceeding the throttling rate? is yes, what is it and how is it implemented?
Kindly refer to the article by one of our Dev Admins on understanding
How to avoid HTTP 429 throttling
A new Community is coming to RingCentral!
Posts are currently read-only as we transition into our new platform.We thank you for your patience
during this downtime.
Try Workflow Builder
Did you know you can easily automate tasks like responding to SMS, team messages, and more? Plus it's included with RingCentral Video and RingEX plans!Try RingCentral Workflow Builder