The new API returns data in JSON only. XML is only supported in the legacy endpoints.
The new API is more asynchronous to keep things speedy.
Keywords are no longer needed to create stores. Additionally, you can choose to add your webhook URLs when creating the store. Stores are no longer username and password required in set-up. Stores are controlled by the account. We will require a compliance email and phone contact when adding a store.
Authentication will be using a JWT Token. The token will tell us the account making the request. However, nearly every POST method to the API requires a store ID. That store ID will tell us which store you wish to administrate.
New Keyword Short Code
345345 is the new keyword short code. However, it's quite different from how 444999 behaves and that distinction is important. 345345 acts as a sticky keyword short code. That means that if a subscriber opts-in to a store on 345345, the first short code they will communicate with for 2-way messaging is 345345.
It should be noted that this sticky code concept is not built for natural 2-way messaging. We suggest using it primarily for outbound recurring messaging. The concern being that if a subscriber responds to a message on 345345, it could potentially be a keyword belonging to another store.
New Communication Short Code
We have added a third communication short code as well. That short code is 55398. The addition of three communication short codes greatly expands our send throttle.
Round Robin Short Code Bind
The new API will round robin and evenly balance (as much as possible) all of your opt-ins on the communication short codes. If we have three communication short codes, that means your opt-ins will be load balanced on all three. This gives us the ability to triple bandwidth.
We will operate two dedicate campaign queues. Those queues are first come first serve. They will operate at 225 messages per second each or thereabouts. That’s roughly 13,500 messages per minute for each queue. For those of you that have urgent campaigns (and we know who you are), we will discuss concurrency limits. We know that some of you are not sending marketing campaigns and need things to go out when you click send. We can accommodate that as well with concurrent connections. However, if you are not one of those clients, we ask that you use the campaign method. There is plenty of bandwidth there to get your traffic out in due time.
You may now make one call to the API to send a campaign. You’ll pass the list, messages and Media in one payload to us. You do not need to spin up multiple connections. This allows the API to spool up the campaign and drop them out of the queues at our maximum throttle.
You may poll the API for one-2-one message delivery status. For campaigns, we have built a separate call where you may request a JSON or CSV delivery report sent to you via email.
Automation of Messages
The new API allows for flexibility to those who wish to respond dynamically to opt-in and responder keywords. You may turn off this automation at the store level. Please stay compliant on opt-in keywords.
Already Opted-In Message
Also, you may turn off the already opt-in message automation if you so choose. You may also edit that template now. This control is also at the store level.
You may now create your callback URLs within the Add Store method or separately. Saves a little time.
You may now add and delete stores and keywords via the API. Obviously, with this being new, make sure you don’t delete the wrong store because we do remove all data associated to the store.
The new API allows developers to select single or double opt-in when making a call to opt-in a subscriber.
Inbound Message Sentiment
We are utilizing IBM Watson to analyze message sentiment of inbound messages. For many of you it will be worthless. But if you are operating a CRM or doing support via text, sentiment scores give you the ability to escalate customer issues. It’s super cool and extremely accurate. There is no additional cost.
Keywords can be registered with spaces and wild carding is supported. Special characters are still not allowed and that will not change due to encoding issues.
REMEMBER, short codes are not global. Our short codes only work in the US. However, you may send outbound opt-in messages via the API to any number in the world and we’ll deliver it on a long code. For now, we are using international capable US long codes and we are using about 100 Canadian codes. British, French, Mexican, Brazilian and Australian long codes are sprinkled in there as well. If you have specific countries you need to send texts too let us know and we can put long codes into the platform to support you. And it is 2-way capable. This is agnostic and you do not need to create a new store specifically for a country you wish to send messages to.
The SMS API will recongnize the number you wish to send messages to and select the most proper long code to fire the message on.
This also changes how you will send us mobile numbers. You will send them to us in E164 Format….with the caveat that you will drop the + sign. For example: (19994448888).
New Intelligence Tools
Four new methods have been added to the API for subscriber intelligence. The first is free. That will allow you to confirm the international format of a phone number in E164. The other three are pay per request. The first of those lets you look up carrier ID and number type of any number in North America and some international numbers. The second allows you to get subscriber data including name, address, known emails, known social media handles, income and demographic information. It’s fantastic for marketers who wish to do secondary marketing and get to know who is texting you. The third let's anyone running eCommerce apps to look up the reputation of a phone number.
Although it will remain unpublished for now, for those of you that need to upload subscriber data, simply request the documentation and we can send it to you. You may load subscribers as either opted-in or opted-out.
A new UI is coming as well. To be honest, it was not our focus. We wanted to get the API out first. We will come back and further update the interface when we get through the onboarding. But, you can do almost anything in the interface that you can do via the API.
A self-service billing portal is available with the update. You will be able to manage payment information and view invoices. However, We will not be triggering it until at least 15 days after the move.