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
Auth Limit is limiting per account and not per user.
Tags: authentication
Apr 21, 2016 at 12:17pm   •   6 replies  •  0 likes
jason-wright

I've been noticing with my app that I've been getting quite a few "Request Rate Exceeded" errors while trying to authenticate. In looking into this, I see that the limit is set to 5 Auth Requests per 60 seconds and then it goes on to say "The above rate limits for your application are set per user (RingCentral extension)."


This limitation is perfectly fine with me if that's how it works...but it doesn't. We have a RingCentral account with 20 users in it. Each user has their own extension and direct number. The app attempts to authenticate as each user to get status updates on faxes. It appears that when the app gets to the 6th user it fails as we've already reached the limit by authenticating with the first 5 users in this account. I really need this fixed so that each user has the ability to authenticate without affecting the limits of other users. I've already e-mailed the developer support team but no one ever seems to respond when I send e-mails there.

6 Answers
answered on Apr 24, 2016 at 6:42pm  
For some additional info on referencing extensions, both integers are described in the documentation and present in the API. One is the "extensionId" and the other is the "extensionNumber". The extensionId is the value that is used in the API URL path while the extensionNumber is the one that is used for login and dialing. You can find both of these properties in the API Developer Guide by searching for "extensionId" and "extensionNumber":

https://developer.ringcentral.com/api-docs/latest/index.html

 1
answered on Apr 23, 2016 at 4:34pm  
You are correct, the EXTENSION_ID is different from the extension. Throughout most of the RingCentral API, you will see extensionId used.

If you are pulling the list of extensions (/restapi/v1.0/account/~/extension) using the request I provided above (which filters for enabled FaxUser extensions in your account), you will have the EXTENSION_ID although the API returns the records with the property named "id" instead of "extension_id", the "extension" is the number (maximum of 5 digits in length) and is visible in the data returned in this same request, but it should be apparent when you look at it how to identify them uniquely.

Does this (and my previous response) help answer your question?

 0
answered on Apr 22, 2016 at 9:15pm  
I've created an app that logs in as each user account and pulls the faxes and then organizes them into the proper location. I tried modifying my application yesterday to login as the master account and then access each by using the extension. We already have all of the extensions cached in our database so that is easy enough. It returned an error stating that it couldn't pull from the extension. Is the EXTENSION_ID different from the extension? If so then how do I get it? I would prefer my app worked that way as it would speed up how long it takes to run.

 0
answered on Apr 22, 2016 at 4:58pm  
When you say "The app attempts to authenticate as each user to get status updates on faxes.", do you mean your application is trying to auto-login for these people and your app has their RingCentral user credentials stored and is trying to authenticate on their behalf? If not, then could you please provide me information on how these twenty-or-so people are authenticating within 60 seconds please?

If yes, there is a better approach to solve this problem. Here are the steps to obtain fax report data for multiple users from a server-side application:

1. Use RingCentral Admin user credentials to authenticate with our API and obtain an access_token (this allows you to fetch data for all users in the account)

POST /restapi/oauth/token
Headers:
  • Accept: application/json
  • Authorization: Basic <YOUR_BASE64_ENCODED_API_KEYS>
  • Content-Type: application/x-www-form-urlencoded
  • Host: platform[.devtest].ringcentral.com
Body: grant_type=password&username=<ADMIN_USERNAME>&password=<ADMIN_PASSWORD>&extension=<ADMIN_EXTENSION || null>

2. Either cache the list of RingCentral extensions/users you know you want to capture this information, or make an API request to fetch the list of extensions in the account which are fax-enabled and enabled user extensions.

GET /restapi/v1.0/account/~/extension?status=Enabled&type=FaxUser
Headers:
  • Accept: application/json
  • Authorization: Bearer <YOUR_ACCESS_TOKEN>
  • Content-Type: application/json
  • Host: platform[.devtest].ringcentral.com
3. For each of the extensions returned from above (and referencing the extension.id property in the following request), make an API request to fetch the messages of type fax, and supply your time range by using the fromDate and toDate parameters.

GET /restapi/v1.0/account/~/extension/EXTENSION_ID/message-store?dateFrom=<ISO_8601_FORMATTED_FROM_DATE>&dateTo=<ISO_8601_FORMATTED_TO_DATE>&messageType=Fax
Headers:
  • Accept: application/json
  • Authorization: Bearer <YOUR_ACCESS_TOKEN>
  • Content-Type: application/json
  • Host: platform[.devtest].ringcentral.com
Using the above approach makes it simple to avoid the Rate Limits for auth, and should make your code easier to maintain. You can then inspect each of the Message records for the criteria you need for reporting or just provide the data to your UI and allow the GUI and user to filter.

 0
answered on Apr 21, 2016 at 4:09pm  
The phone number is the same but the extension is different.

 0
answered on Apr 21, 2016 at 4:07pm  
And you're using different RingCentral user credentials during authentication?

 0



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