TellMyCell Mass Text Message Marketing

Legacy API Docs

The Developer Center @ TellMyCell

Please note - while we will continue to support our legacy API we strongly encourage you to check out our REST API. Active development has ceased on the legacy API and new features like scheduled and mass message sending will not be ported
back to the legacy API. Check out the REST API docs.


API Documentation

 

Sending SMS Messages

Sends individual SMS text messages via the short code 88202. Accepts GET or POST requests.

URL

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

Example call: https://app.tellmycell.com/api/sending/?user=USERNAME&pass=PASSWORD &phonenumber=PHONENUMBER&subject=SUBJECT&message=MESSAGE

Parameters

User
(Required) Your TellMyCell username
Pass
(Required) Your TellMyCell password
PhoneNumber (Required) 10 digit phone number to send message to
Subject
(Optional) The subject of your message up to 13 characters
Message
(Required) The body of your message
Note: Values must be properly URL encoded

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. If your application exceeds this limit you may receive a rate limiting error, with the HTTP status code 503 in the header and your request will not be processed. If you believe you are being incorrectly rate limited please contact support.

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

If you are sending to a large number of recipients, we strongly urge you to explore our REST APIs which allow easier mass sending. Instead of looping through a message multiple times, to multiple recipients, our REST sending API allows you to pass us an array of phone numbers to deliver the same message to.

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: Messages cannot exceed 160 characters combined subject and message field. Subjects are always limited to 13 characters
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 your Keyword to 88202 using that phone.

API Text Message Sending Language Examples:

PHP

<?php
$ch=curl_init('https://app.tellmycell.com/api/sending');
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,"user=username&pass=userpassword&phonenumber= 2125551234&subject=test&message=test message");
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$data = curl_exec($ch);
print($data); /* result of API call*/
?>

C#

string ret=string.Empty;
WebRequest w=WebRequest.Create("https://app.tellmycell.com/api/sending");
w.Method="POST";
w.ContentType="application/x-www-form-urlencoded";
using(Stream writeStream = w.GetRequestStream())
{
UTF8Encoding encoding = new UTF8Encoding();
byte[] bytes = encoding.GetBytes("user=username&pass=userpassword&
phonenumber=2125551234&subject=test
&message=test message");
writeStream.Write(bytes, 0, bytes.Length);
}
using (HttpWebResponse r = (HttpWebResponse) w.GetResponse())
{
using (Stream responseStream = r.GetResponseStream())
{
using (StreamReader readStream = new StreamReader (responseStream, Encoding.UTF8))
{
ret = readStream.ReadToEnd();
}
}
}
MessageBox.Show(ret); /* result of API call*/

PHP - Send Multiple Messages

<?php

/* The below code snippet is a sample and not functional. Its purpose is to illustrate how to send multiple requests to our service using one connection */

= curl_init('https://app.tellmycell.com/api/sending');

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

foreach ( as ) {

= "user=username&pass=userpassword&phonenumber=" . $message['phone'] . "&subject=" . $message['subject'] . "&message=" . $message['message'];

curl_setopt($ch, CURLOPT_POSTFIELDS, $post);

$data = curl_exec($ch);

}

curl_close($ch);

?>

 




Check Credit Balance

You may check credit balances using our API via an HTTP call to the following web service URL: https://app.tellmycell.com/api/credits/check/

Parameters (may be passed via GET or POST and values must be properly URL encoded)

User
(Required) Your TellMyCell Username
Pass
(Required) Your TellMyCell Password

 

Return Values

Any non-negative number
The amount of credits available
-1
Invalid user or password (make sure your account is API allowed)
-10
Unknown Error (please contact our support dept.)

Note: Any negative codes represent unsuccessful attempts to check credits amount.





Check Keyword Availability

The keyword availability check API may be accessed via an HTTP call to the following web service URL: https://app.tellmycell.com/api/keyword/check/

Parameters (may be passed via GET or POST and values must be properly URL encoded)

User
(Required) Your TellMyCell Username
Pass
(Required) Your TellMyCell Password
Keyword (Required) The keyword to be checked

 

Return Values

1
The keyword is available
0
The keyword is not available
-1
Invalid user or password (make sure your account is API enabled)
-2
Request declined because it is less than $5.00 minimum purchase.
-10
Unknown Error (please contact our support dept.)

Note: Any negative codes represent unsuccessful attempts to check keyword availability.




Buy More Credits

The credit purchase API may be accessed via an HTTPS call to the following web service URL: https://app.tellmycell.com/api/credits/buy/

Parameters (must be passed via POST and values must be properly URL encoded)

User
(Required) Your TellMyCell Username
Pass
(Required) Your TellMyCell 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', 'AX' for American Express, 'DS' for Discover, 'JCB'
CCNumber (Required) Card number
CCCode (Required) Card Security Code (CV2)
Expm (Required) Card's expiration month, two digits
Expy (Required) Card's expiration year, two digits
Credits (Required) Amount of credits to buy

 

Return Values

1
The request succeeded
0
The request was declined
-1
Invalid user or password (make sure your account is API allowed)
-10
Unknown Error (please contact our support dept.)

Note: Any negative codes represent unsuccessful attempts to buy credits.





Rent a Keyword:

The keyword rental API may be accessed via an HTTPS call to the following web service URL: https://app.tellmycell.com/api/keyword/rent/

Parameters (must be passed via POST and values must be properly URL encoded)

User
(Required) Your TellMyCell Username
Pass
(Required) Your TellMyCell 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', 'AX' for American Express, 'DS' for Discover, 'JCB'
CCNumber (Required) Card number
CCCode (Required) Card Security Code (CV2)
Expm (Required) Card's expiration month, two digits
Expy (Required) Card's expiration year, two digits
Keyword (Required) The keyword to rent

Note: After you rent a Keyword, you may want to update the default autoreply, which is 'Thank you for joining our list.'

 

Return Values

2
The request succeeded
1
The keyword is not available
0
The request was declined
-1
Invalid user or password (make sure your account is API allowed)
-10
Unknown Error (please contact our support dept.)

Note: Any negative codes represent unsuccessful attempts to rent a keyword.



 API Rent A Keyword Language Examples:

PHP

<?php
$ch=curl_init('https://app.tellmycell.com/api/keyword/setup/');
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,"user=username&pass=userpassword&group=test&url=http://test.com/test");
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$data = curl_exec($ch);
print($data); /* result of API call*/
?>

 

 

Configure a Keyword:

The keyword configuration API may be accessed via an HTTPS call to the following web service URL: https://app.tellmycell.com/api/keyword/setup/

Parameters (must be passed via GET or POST and values must be properly URL encoded)

User
(Required) Your TellMyCell Username
Pass
(Required) Your TellMyCell 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 our short code will receive this message. The autoreply is limited to 160 characters. Each confirmation return text that is sent back requires 1 credit. 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 or password (make sure your account is API allowed)
-2
Invalid Keyword
-3
Invalid Group Name
-4
Invalid Email
-5
Invalid URL
-7
Invalid autoreply message (message is blank or message exceeds maximum number of characters or message contains invalid characters)
-10
Unknown Error (please contact our support dept)

Note: Any negative codes represent unsuccessful attempts to configure a keyword.