SMS API FAQ
Find answers to the most frequent questions that developers ask when they use our SMS API.
We've designed our API to be as easy to use as our text messaging service. Still, you might run into difficulties integrating text messaging with your own application. We've provided some answers and solutions to the questions and issues that we've helped our clients with in the past.
I keep receiving a -1 / 401 response and my username and password are correct.
API Access is probably not activated for your account. Please contact support.
Can you schedule a text message with the API?
Yes, using the REST API. The StampToSend parameter allows you to schedule messages for future delivery. See documentation here.
Can you send a message to many numbers using the API?
Yes, using the REST API. You have two options. You can 1) submit an array of phone numbers to send a single mass text message to, or 2) send your message to a Group of Contacts stored in your EZ Texting account.
Can you add/edit/remove/retrieve contacts using the API?
Yes, using the REST API. See the documentation for Contacts here (and Groups too!)
What programming languages do you support?
Our API is language independent and can be accessed in the programming language of your choice.
What characters are permitted in my text messages?
To ensure maximum handset compatibility we support a subset of UTF-8 characters: a-z, A-Z, 0-9 and these special characters: .,:;!?()~=+-_\/@$#&%'"
Can you receive text messages via the API?
What is the maximum rate at which I can send text messages via the API?
If you need to send a lot of text messages, we strongly encourage you to either pass us an array of phone numbers or use the ability to send to a Group of Contacts stored in your account. If neither of these solutions work for you (if you need to send many different messages to a lot of people) you are limited to 2 HTTP connections per second/per IP address.
Can I upload a voice file via the Voice Broadcast Function?
No, you must either provide name of the file you saved in your EZ Texting account (Soundfile) or we can pull your .wav file from a provided URL on your server (Soundsource).
I keep receiving an error message on my phone instead of my Keyword auto-reply when using Keyword Forwarding URL Function.
The URL that you supplied for your script is creating an error message. We take that error message and send that back to the user who texted in, as we expect the output of your script to be what you want your auto-reply to be.
Please make sure that your script is functioning properly and not generating any types of errors on your own server.
How do I handle global opt outs, error code -104, when using the Send SMS Function?
A global opt out means that someone has requested to no longer receive messages from any EZ Texting client. We require that your flag this number as an opt out in your own system and refrain from sending it any further messages.
When I use the Check Keyword Availability function, which short code does it check availability on?
Our system will check if the Keyword you submit is available on the shared short code to which your account is assigned.
In your API Documentation it says that the posted variables for receiving text messages are PhoneNumber and Message, but your server actually sends the data as the variables "from" and "message".
Please note the differences between Forwarding API and Keyword API.
When someone sends in your keyword [space] message or just replies without a keyword within 12 hours of you sending a message to them, the message forwarding API is used (at the bottom of the page) where the variable is called from.
Whereas if someone just sends in your keyword then Keyword API is invoked and that variable is called Phone Number. This is under Receiving Keyword Submissions.
If you have Send Unique Requests Checked then your FORWARDING URL will only be called once and not your Keyword URL.
However many people use different scripts to process forwarded messages (messages that are replies or keyword [space] message) vs just keywords.
That is why there is a difference between the names of the variables.