News & Announcements User Community Developer Community

Welcome to the RingCentral Community

Please note the community is currently under maintenance and is read-only.

Search
Make sure to review our Terms of Use and Community Guidelines.
  Please note the community is currently under maintenance and is read-only.
Home » Developers
throttling
Tags: rest api
Aug 22, 2017 at 11:25am   •   6 replies  •  0 likes
gaash-granot

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

6 Answers
answered on Aug 28, 2017 at 8:52am  
We would need to change the access level to 'Advanced' for you to access our Beta API's. I have just changed the access level of your Organization. 


Kindly login to Developer Portal and you should be able to look up this endpoint under the API Reference.

 1
answered on Aug 28, 2017 at 8:16am  
a kind reminder regarding my questions above and about my request.

thank you :)


 0
answered on Aug 25, 2017 at 11:47am  
i looked for such api a few times (and more bulk api calls) and didn't find it (including now). where can i find the full documentation for that api? is there a bulk api to get many calls recordings in one api call? thanks

 0
answered on Aug 25, 2017 at 9:36am  
Hi Gaash,

Why don't you try to read call logs for all extensions in 1 API call (at the account level /account/~/call-log) then loop thru the records array to group call logs for each extension?

hope this helps,
Phong

 0
answered on Aug 24, 2017 at 1:49am  
hi,

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 :)



 0
answered on Aug 22, 2017 at 12:09pm  

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

API Usage Plan FAQ 

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
For more information, please have a look at our Call Log API Reference

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

 1



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

PRODUCTS
RingEX
Message
Video
Phone
OPEN ECOSYSTEM
Developer Platform
APIs
Integrated Apps
App Gallery
Developer support
Games and rewards

RESOURCES
Resource center
Blog
Product Releases
Accessibility
QUICK LINKS
App Download
RingCentral App login
Admin Portal Login
Contact Sales
© 1999-2024 RingCentral, Inc. All rights reserved. Legal Privacy Notice Site Map Contact Us