John Mason avatar image
John Mason asked Phong Vu commented

Why are the rate limits so very low? O_o

We're a software company, currently converting our decades-old app (a full-office medical office management package; known today as an ERP [and CRM] package) (began development in the late 1980s..) to Java/CUBA platform. The new version of our app will need 2FA via SMS for user login, and as our phone service is RingCentral... it seems easy enough to implement this via the RC Java API.

I have it all working; it's very easy to work with (kudos to RC for that), except...the rate limits are exceedingly low! 40 texts per minute? Really?

We have clients in all 50 US states, and we will be self-hosting this new app via Docker containers with each client in their own Docker'ed world, for safety and HIPPA act compliance. Early in the morning, when people are getting into their offices, there's going to be dozens/hundreds of 2FA requests.

Surely mere hundreds of SMS sends wouldn't kill RC's infrastructure. Why are the limits so LOW?

rest api
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

1 Answer

Phong Vu avatar image
Phong Vu answered Phong Vu commented

There are a few things I want to mention here.

1. API rate limit is per user and per API.

2. Normal phone number with SMS capability is designed for P2P SMS. It is not likely every user would send 40 messages per minute. Though, based on special request with business justification, case by case we can increase the API rate limit for an app.

3. Using a normal phone number to send A2P SMS is against carriers’ rules and as a result, the number would be blocked by a mobile carrier once they detected.

4. The right way to send A2P SMS is to use a Toll-Free SMS number. More info about TF SMS

5. We are introducing a High Volume SMS API to be used with Toll-Free SMS numbers which is dedicated for A2P SMS and is capable of sending more than 3 messages per second with super high API rate limit. This API is still in beta stage and can be accessed via early access program. Fill out this form if you would like to have access.

1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

John Mason avatar image John Mason commented ·

What does "A2P" mean? Like I said, we are a RC customer, and we plan to use this in our application (we are a software company; our application is a medical office management package) to send 2FA codes for user's logins, via our own RC account.

0 Likes 0 ·
Phong Vu avatar image Phong Vu ♦♦ John Mason commented ·

I thought that you are familiar with SMS messaging. A2P or Application-to-Person is when a text message is sent from an application to a person automatically without a person to type the message. SMS 2FA is considered as A2P SMS.

If this 2FA is just for internal usages for your company employees, you may want to check if you can use internal messaging "Pager" to send a passcode. You can also try to request for higher API rate limit by submitting a support ticket. But this won't solve the potential problem if a carrier blocks your number.

0 Likes 0 ·
John Mason avatar image John Mason Phong Vu ♦♦ commented ·

It is for users of our software, who will need to log in to said software, and to secure said logins we want to use 2FA. We will self-host this application via Docker containers. This is all covered in the original post.

So it is kind of internal, kind of not. Only our clients (users of our software package) will be receiving these texts, when they need to login.

0 Likes 0 ·
Show more comments

Developer sandbox tools

Using the RingCentral Phone for Desktop, you can dial or receive test calls, send and receive test SMS or Fax messages in your sandbox environment.

Download RingCentral Phone for Desktop:

Tip: switch to the "sandbox mode" before logging in the app:

  • On MacOS: press "fn + command + f2" keys
  • On Windows: press "Ctrl + F2" keys