SMS API Documentation


Ez Texting provides API access via HTTP.

API calls can be made from nearly all popular programming languages. Through our API you can access many different features of the Ez Texting platform. Browse them below and check out the list of available APIs and their parameters. FYI: You must first open an Ez Texting account to use our APIs. To activate API access for your account, please send a request using our contact form with the username of your account.

Sending SMS Messages

Description

Sends individual SMS text messages via the short code 313131 (393939 in Canada) or SMTP gateway. Accepts GET or POST requests.
Note: Our servers impose a limit on the number of simultaneous connections that you may make from your server to ours per second.  To avoid having your IP blocked, please do not attempt to make more than 2 simultaneous HTTP connections per second to our servers.  Please also make sure that you close each connection after opening one when making your HTTP request.  If you are running a multithreaded application please also be aware of the limit that is imposed.

When sending multiple request we strongly suggest using the following logic in order to avoid this limitation:
1) Open Connection
2) Begin Loop
3) Make Request
4) Close Loop
5) Close Connection
Want to see a sample implementation of it? View a code sample.

URL

https://app.eztexting.com/api/sending/

Parameters

User
(Required) Your Ez Texting username
Pass
(Required) Your Ez Texting password
PhoneNumber (Required) 10 digit phone number to send message to
Subject
(Required) The subject of your message (leave empty if no subject)
Message
(Required) The body of your message
Express (Optional) Use Express delivery method when sending message value = 1. To send Standard Devliery set the value = 0. If you leave this parameter out your message will default to Express Delivery. 
Note: Values must be properly URL encoded
Note: Messages sent via Standard delivery cannot exceed 130 characters, via Express delivery - 160 characters (136 characters in Canada).
Note: The difference between Standard & Express delivery

Return Values

1
Message sent
-1
Invalid user and/or password or API is not allowed for your account
-2
Credit limit reached
-5
Local opt out (the recipient/number is on your opt-out list.)
-7
Invalid message or subject (exceeds maximum number of characters and/or contains invalid characters - see a list of valid characters below)
-104
Globally opted out phone number (the phone number has been opted out from all messages sent from our short code)
-106
Incorrectly formatted phone number (number must be 10 digits)
-10
Unknown error (please contact our support dept.)
Note: The list of allowed characters for messages and subjects is: a-z, A-Z, 0-9 and these special characters: .,:;!?()~=+-_\/@$#&%
Note: The following characters count as two characters when used: ~, @, #, %, +, =, /, \, \r\n
Note: To opt back in a globally opted out number (return value -104) please text EZ or Your Keyword to 313131 using that phone.


Check Credit Balance

Description

Checks credit balances on your account. Accepts GET or POST requests.
Want to see a sample implementation of it? View a code sample.

URL

https://app.eztexting.com/api/credits/check/

Parameters

User
(Required) Your Ez Texting username
Pass
(Required) Your Ez Texting password

Return Values

Any non-negative number
The amount of plan and additional credits available
-1
Invalid user and/or password or API is not allowed for your account
-10
Unknown error (please contact our support dept.)


Check Keyword Availability

Description

Checks if a Keyword is available to rent on our shared short code 313131 (393939 for Canadian accounts). Accepts GET or POST requests.
Want to see a sample implementation of it? View a code sample.

URL

https://app.eztexting.com/api/keyword/check/

Parameters

User
(Required) Your Ez Texting username
Pass
(Required) Your Ez Texting password
Keyword (Required) The keyword to be checked

Return Values

1
The keyword is available
0
The keyword is not available
-1
Invalid user and/or password or API is not allowed for your account
-10
Unknown error (please contact our support dept.)


Buy More Credits

Description

Buys more credits for your account. Accepts POST requests only.
Want to see a sample implementation of it? View a code sample.

URL

https://app.eztexting.com/api/credits/buy/

Parameters

User
(Required) Your Ez Texting Username
Pass
(Required) Your Ez Texting Password
FirstName (Required) The first name on the card
LastName (Required) The last name on the card
Address (Required) The billing street address
City (Required) The billing address city
State (Required) The billing address state/province
Zip (Required) The billing address zip code
Country (Required) The billing address country
Type (Required) Card type: 'MC' for MasterCard, 'Visa' for Visa, 'AX' for American Express, 'DS' for Discover
CCNumber (Required) Card number
Expm (Required) Card's expiration month, two digits
Expy (Required) Card's expiration year, two digits
CCCode (Required) Card Security Code (CV2)
Credits (Required) Amount of credits to buy

Return Values

1
The request succeeded
0
The request was declineded
-1
Invalid user and/or password or API is not allowed for your account
-10
Unknown error (please contact our support dept.)


Rent a Keyword

Description

Rents a Keyword on our shared short code 313131 (393939 for Canadian accounts). Accepts POST requests only.
Want to see a sample implementation of it? View a code sample.

URL

https://app.eztexting.com/api/keyword/rent/

Parameters

User
(Required) Your Ez Texting username
Pass
(Required) Your Ez Texting password
FirstName (Required) The first name on the card
LastName (Required) The last name on the card
Address (Required) The billing street address
City (Required) The billing address city
State (Required) The billing address state/province
Zip (Required) The billing address zip code
Country (Required) The billing address country
Type (Required) Card type: 'MC' for MasterCard, 'Visa' for Visa, 'AX' for American Express, 'DS' for Discover
CCNumber (Required) Card number
Expm (Required) Card's expiration month, two digits
Expy (Required) Card's expiration year, two digits
CCCode (Required) Card Security Code (CV2)
Keyword (Required) The keyword to rent

Return Values

2
The request succeeded
1
The keyword is not available
0
The request was declined
-1
Invalid user and/or password or API is not allowed for your account
-10
Unknown error (please contact our support dept.)
Note: After you rent a Keyword, you may want to update the default autoreply, which is 'Thank you for joining our list.'


Configure a Keyword

Description

Configures/Updates settings for a Keyword belonging to your account. Accepts GET or POST requests.
Want to see a sample implementation of it? View a code sample.

URL

https://app.eztexting.com/api/keyword/setup/

Parameters

User
(Required) Your Ez Texting username
Pass
(Required) Your Ez Texting password
Keyword (Required) Keyword that you want to configure
Group (Optional) Customers who text in your keyword will be added to the group you provide
Autoreply (Optional) Customers that text in your keyword to 313131 (393939 in Canada) will receive this message. The autoreply is limited to 160 characters (136 characters in Canada). Each confirmation return text that is sent back requires 2 credits. If you do not update this field, we will send out our default autoreply, 'Thank you for joining our list.'
Email (Optional) We will forward incoming messages to the email address for free
URL (Optional) We will call this URL when keyword is received

Return Values

1
Updated successfully
-1
Invalid user and/or password or API is not allowed for your account
-2
Invalid keyword
-3
Invalid group name
-4
Invalid email
-5
Invalid URL
-10
Unknown error (please contact our support dept)


Voice Broadcast

Description

Sends voice broadcast messages to an array of phone numbers. Accepts GET or POST requests.
Want to see a sample implementation of it? View a code sample.
Requirements For Voice Broadcast Files: WAV, 16 bit, mono, 8 kHz, less than 30 seconds

URL

https://app.eztexting.com/api/voicemessages/

Parameters

User
(Required) Your Ez Texting username
Pass
(Required) Your Ez Texting password
Phonenumbers (Required) Array of 10 digit phone numbers to call to.
Soundfile
(Optional) Name of the .wav file in your Ez Texting account
Soundsource
(Optional) Address to the .wav file on your server
Callerid (Required) 10 digit phone number
Note: You can either provide name of the file you saved in your Ez Texting account (Soundfile) or we can get your .wav file from the URL on your server (Soundsource).
Note: The callerid must be a valid phone number

Return Values

1
Campaign Sent
-1
Invalid user and/or password or API is not allowed for your account
-2
Credit limit reached
-3
Invalid callerid
-4
Invalid array of phone numbers
-5
Invalid soundfile (make sure you provided the correct file name with the extension) 
-6
Invalid soundsource (make sure you provided the correct path to the file with the extension)
-7
Invalid request (make sure you use the correct names of variables)
-10
Unknown error (please contact our support dept)

 




Understanding The Difference Between The Keyword Submission And Inbox Replies APIs

Ez Texting allows you to implement your own APIs to receive and/or forward incoming messages to your server. Please check out the list of parameters which Ez Texting sends to your server, which your APIs must accept.

When someone sends in your keyword [space] message or just replies without a keyword within 3 hours of you sending a message to them, the Inbox Reply API is used where the variable is called from. If someone sends in only your keyword then the Keyword API is invoked and that variable is called Phone Number.

**Please note that if you are testing your API implementation with the same phone number again and again, when you send in your keyword submission and you get a reply back then the keyword reply is considered as an outgoing message. Consequently, if you send in keyword [space] message again through the same phone number, The Inbox Reply API will be invoked and NOT the Keyword API.

Many of our API clients use different scripts to process forwarded messages (messages that are replies or keyword [space] message) vs just keywords. This is the cause of the difference between the name of the variables.

If you have Send Unique Requests Checked then your Keyword URL will only be called once and not your Forwarding URL in cases when a message is considered to be a keyword submission and not a reply to an outbound message from your account.

If you have Wait for Response From My Server Checked then the system will wait for output to send back to the person who texted in. We suggest that you have both these Checked as it would work for most applications.

Receiving Keyword Submissions

Description

Ez Texting allows SMS messages to be received using HTTP through the means of keywords on our short code 313131 (393939 in Canada). The Ez Texting SMS Server pushes received SMS messages by making an HTTP GET request to the provided URL to indicate the receipt of an SMS message.  You can input your URL on the Keywords section (or on the API section) of your Ez Texting account.
Want to see a sample implementation of it? View a code sample.

Example URL

http://www.yourdomain.com/receivesms.php
On receipt of an SMS we will send an HTTP GET request to your server, using the parameters included in the table below:

Parameters

PhoneNumber 10 digit phone number message originated from.
Message The body of your message that was texted in by the originating phone number prefaced by your keyword.
Example Request Sent:
http://www.yourdomain.com/receivesms.php?PhoneNumber=5554443333&
Message=Hello%20my%20friend
Response To The Server: When the GET post is made to your server, your script must output your SMS response in plain text format (max 160 characters for US accounts, and 136 characters for Canadian accouts) that will be sent back to the originating phone number through our 313131 (393939 in Canada) shared short code. This response must be given in a timely manner (sub 60 seconds) or it will be abandoned. No additional calls to our servers are necessary.

Return Values

When the GET post is made to your server, your script MUST output your SMS response in plain text format (max 160 characters for US accounts, and 136 characters for Canadian accouts) that will be sent back to the originating phone number through our 313131 (393939 in Canada) shared short code. No additional calls to our servers are necessary.
Note: The response must be given in a timely manner (sub 60 seconds) or it will be abandoned.
Note: The list of allowed characters for messages and subjects is: a-z, A-Z, 0-9 and these special characters: .,:;!?()~=+-_\/@$#&%
Note: The following characters count as two characters when used: ~, @, #, %, +, =, /, \, \r\n


Receiving Inbox Message Replies

Description

All replies to your inbox are forwarded to the URL you specify. The Ez Texting SMS Server pushes received SMS messages by making an HTTP GET request to the provided URL.
Want to see a sample implementation of it? View a code sample.

Example URL

http://www.yourdomain.com/receivesms.php
On receipt of an SMS we will send an HTTP GET request to your server, using the parameters included in the table below:

Parameters

from
10 digit phone number message originated from.
message
The body of receiving message that was texted in by the originating phone number.

Options

Send unique request
Check this if you have both keyword URL and forwarding URLs setup and you do not wish to receive duplicate message forwards.
Wait for response from my server
If you require an incoming reply to have an auto-reply, select this option. We will send this response as an auto-reply to the message.
Note: The list of allowed characters for messages and subjects is: a-z, A-Z, 0-9 and these special characters: .,:;!?()~=+-_\/@$#&%
Note: The following characters count as two characters when used: ~, @, #, %, +, =, /, \, \r\n


Carrier Lookup

Description

The Carrier Lookup API allows you to automatically determine the carrier of any mobile number.
Please Note: The Carrier Lookup API requires you to set up a second account solely for performing carrier lookups. If you would like to use the carrier lookup API, please create a second account, and then submit a ticket requesting enabling of the Carrier Lookup API.

You will not be able to send text messages from this second account.
Want to see a sample implementation of it? View a code sample.

URL

https://app.eztexting.com/api/lookup

Parameters

User
(Required) Username of the account to send through
Pass
(Required) Your Ez Texting password
phonenumber
(Required) MSISDN of the message recipient (eg 2345678901). No leading "+" or “1” is required

SUCCESSFUL Return Values

<network>
Carrier that the mobile number belongs to. See Carrier Codes below for possible values.
UNKNOWN
Unrecognized carrier. Please contact us about extending coverage.
FAILURE
The lookup failed due to an inaccurate mobile phone number.
Note: Provider name is returned if the lookup is successful. The response is plain text. If the lookup is not successful, a negative number is returned as explained in the table below.

FAILURE Return Values

-1
Invalid user and/or password or API is not allowed for your account
-2
Invalid Phone Number Format
-3
Insufficient Credits
-4
Lookup Error. The customer should wait a few seconds and reattempt their lookup.

Carrier Codes (United States)

ACS Wireless ACSUS
Alltel ALLTELUS
RINA/All West Wireless ALLWESTUS
EKN/Appalachian Wireless APPALACHIANUS
Arch Wireless ARCHWIRELESSUS
AT&T Wireless ATTUS
Bluegrass Cellular BLUEGRASSUS
Boost USA BOOSTUS
Cellcom CELLCOMUS
Cellular South CELLULARSOUTHUS
Centennial CENTENNIALUS
Central Wireless CENTRALUS
Amerilink CHOICEUS
Cincinnati Bell CINBELLUS
Cingular Wireless CINGULARUS
Cox Communications COXUS
Cricket Communications CRICKETUS
RINA/CTC Telecom-Cambridge CTCUS
Dobson DOBSONUS
RINA/Snake River PCS EAGLEUS
ECIT - Cell One of East Central IL ECITUS
Edge Wireless EDGEUS
RINA/FMTC-Farmers Mutual Telephone Co. FARMERSMUTUALUS
GCI Communications GENERALCOMUS
RINA/Silverstar GOLDSTARUS
Immix Wireless/PC Management IMMIXUS
Inland Cellular INLANDUS
Iowa Wireless IOWAWIRELESSUS
Illinois Valley Cellular IVCUS
Metrocall Wireless METROCALLUS
Metro PCS METROPCSUS
Midwest Wireless MIDWESTUS
Nex-Tech Wireless NEXTECHUS
Nextel Communications NEXTELUS
North Coast PCS NORTHCOASTUS
nTelos NTELOSUS
RINA/Nucla-Naturita Telephone Co. NUCLANATURITAUS
Pacific Bell     PACBELLUS
Revol REVOLUS
RCC/Unicel RURALCELUS
RINA/South Central SOUTHCENTRALUTAHUS
Southern Bell SOUTHWESTBELLUS
Sprint PCS SPRINTUS
Suncom SUNCOMUS
RINA/Syringa Wireless SYRINGAUS
Thumb Cellular THUMBUS
T-Mobile USA TMOBILEUS
Triton PCS TRITONPCSUS
RINA/UBET UNITAHBASINUS
United Wireless UNITEDWIRELESSUS
US Cellular USCELLULARUS
Verizon Wireless VERIZONUS
Virgin USA VIRGINUS
West Central Wireless WCENTRALUS
Western Wireless WESTERNWUS

Carrier Codes (Canada)

Fido
FIDOCA
Bell Mobility
BELLCA
Telus  
TELUSCA
SaskTel
SASKTELCA
Virgin Canada
VIRGINCA
MTS Canada
MTSCA
Rogers
ROGERSCA