Default Rate Limits for SMS and Voice
|Toll Free Numbers||3 messages per second||1 call per second|
|Long Code (10 Digit Local Numbers)||1 message per second||1 call per second|
|Short Code||10 messages per second||1 call per second|
Rate limits refer to messages per second or MPS, but it is important to remember that 1 message = 1 segment. For example, the rate limit for Toll Free Numbers, 3 messages per second, is 3 segments per second.
Check out our article about Messaging Character Limits for more information about what makes up a message segment!
Queue and Backlog System
The backlog defines how many pending instances of a resource an account can have in the system before SignalWire stops accepting more. Without a backlog to stop them, a fraudulent user could load up millions of outbound calls and just let the system run them to spam users. Limiting the backlog still allows for high throughput and stops spammers from easily abusing the system.
For example, if you are sending calls and messages from long code numbers, they will send out at 1 message/call per second. If you queue up 10 calls/messages per second per number, SignalWire will still queue the excess and send them out at 1 per second. If you have the default call/message backlog of 3600, you can send your messages to SignalWire at any rate you want as long as your queue stays under 3600, and we will continue to send sequentially at 1 per second. However, if your queue hits the backlog of 3600, SignalWire will reject all messages/calls after that point until the queue decreases. This essentially amounts to 3600 messages/calls per hour at 1MPS.
If you would like to raise your call or message backlog, you can do so by requesting an increase to your space limits!
High Throughput Phone Numbers
If you need a higher throughput than the defaults for calling/voice shown above, we do have solutions available! Reach out to email@example.com or check out our article about high throughput messaging.
Overall API Limits
There is an overall API requests limit of 13800 requests over 10 seconds for POST/PUT/PATCH requests. It’s effectively unlimited for GET and DELETE requests. This limit applies to all API requests across the SignalWire system. Every HTTP request made by a user can see their current limit and how many they have left in their X-Header.