smallSMS is a no-nonsense SMS API built for developers who just want to send SMS. Our small-is-more approach gets you from concept to SMS quickly: with simple pricing packages, and personal support.
curl -X POST 'https://smallsms.app/text' \     --data-urlencode 'phone=4444444444' \     --data-urlencode 'message=Hello, World!' \     --data-urlencode 'key=smallsms' {"success": true, "quotaRemaining": 42, "textId": "B3F05096-1C2C-4477-B7D1-0D91087494BD"}
Create an API Key

No recurring billing, add-ons, or client library dependencies.

$   curl -X POST 'https://smallsms.app/text' \
        -H 'Content-Type: application/x-www-form-urlencoded' \
        --data-urlencode 'phone=4444444444' \
        --data-urlencode 'message=Welcome to smallSMS!' \
        --data-urlencode 'key=smallsms'
Using the requests library:
                import requests

url = "https://smallsms.app/text"

payload = 'phone=4444444444&message=Hello%2C%20World%21&key=smallsms'
headers = {
'Content-Type': 'application/x-www-form-urlencoded'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
Using the RestSharp library:
                var client = new RestClient("https://smallsms.app/text");

var request = new RestRequest(Method.POST);

request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddParameter("phone", "4444444444");
request.AddParameter("message", "Hello, World!");
request.AddParameter("key", "smallsms");

IRestResponse response = client.Execute(request);

Console.WriteLine(response.Content);
                    

Using the smallSMS API

smallSMS is a simple api. The best way to get started is to try it yourself.

Here's an example success response after sending an SMS:

{"success": true, "quotaRemaining": 42, "textId": 3a7d4652-5a90-412c-b45e-8f0ca0b3a749}

Example out-of-quota or invalid key response:

{"success": false, "quotaRemaining": 0, "error": "Out of quota"}

Example response to request with phone, message, or key missing:

{"success": false, "error": "Incomplete request"}

Look up text delivery status

Using the textId given by a successful sent text, load /status/<textId>. For example, if your textId is 3a7d4652-5a90-412c-b45e-8f0ca0b3a749:

$ curl https://smallsms.app/status/3a7d4652-5a90-412c-b45e-8f0ca0b3a749
        
{"status": "DELIVERED"}

Checking your quota

Use /quota/<key> to view remaining quota. For example if your key is ABBA:

$ curl https://smallsms.app/quota/ABBA
        
{"success": true, "quotaRemaining": 42}

Get in touch

Any questions? Email support@smallsms.app