SMS API Gateway Nigeria

SMS.to Gateway API is the easiest way to send SMS to Nigeria. The API is easy to setup, its low cost, and
allows you to send sms messages to all your customers in Nigeria and world wide.

Our SMS API also allows your company to receive accurate delivery reports, create lists, validate through HLR, and
send personalised messages or campaigns.This can make our SMS gateway a useful tool for your computer
software, CRM, ERP, notification or sms marketing software.

Get started with our SMS Gateway API for Nigeria in minutes. Please contact our sales team or signup for a free test account.

GET STARTED

Free Trial - No Credit Card Required

Cost Calculator

Fill details below to calculate your
SMS campaign cost


${{costPerSMS}} price per sms

High volume?

Contact Us →

Pay as you go SMS pricing Nigeria

When using our API gateway you pay only for what you send. Nigeria SMS Gateway prices for low volume can be seen on the left, High volume customers might be eligible for volume discounts, please contact us


BUY SMS CREDITS →

SMS API Gateway opportunity in Nigeria

The trend is growing for Bulk SMS in Nigeria. Mobile Subscribers have grown past 144920170 in 2018. Total number of people living in Nigeria which reaches 203452505 that will result in a mobile penetration ( number of phones/mobile subscriptions per person of population) of 71.2%. Taking into account the mobile penetration and constant growth rate for mobile subscriptions you can understand that A2P traffic opportunity is growing for business and you are missing out not using a professional partner like SMS.to for your Bulk SMS is huge for a local or international business sending SMS in Nigeria

Mobile subscriber Networks in Nigeria

Our Bulk SMS in Nigeria platform enables you to reach and connect with all available mobile networks, through a simple SMS API or web interface Nigeria

Nigeria SMS API for developers

SMS.to reliable and scalable SMS API allows you to build solid apps, intergrate into CRMs, softwares and other apps that need robust connectivity from a Gateway SMS API to send SMS to every Nigeria network.


GET API KEY →
*some of features are still in development. Please refer to our API documentation for more info
curl -L -X POST "https://api.sms.to/sms/send" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <YOUR_API_KEY_OR_ACCESS_TOKEN>" \
-d "{
		\"message\": \"This is a test message\",
		\"to\": \"+355692179931\",
		\"sender_id\": \"SMS.to\",
		\"callback_url\": \"https://sms.to/callback/handler\"
}"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
	CURLOPT_URL => "https://api.sms.to/sms/send",
	CURLOPT_RETURNTRANSFER => true,
	CURLOPT_ENCODING => "",
	CURLOPT_MAXREDIRS => 10,
	CURLOPT_TIMEOUT => 0,
	CURLOPT_FOLLOWLOCATION => true,
	CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
	CURLOPT_CUSTOMREQUEST => "POST",
	CURLOPT_POSTFIELDS =>"{\n    \"message\": \"This is a test message\",\n    \"to\": \"+355692179931\",\n    \"sender_id\": \"SMS.to\",\n    \"callback_url\": \"https://sms.to/callback/handler\"\n}",
	CURLOPT_HTTPHEADER => array(
			"Content-Type: application/json",
			"Accept: application/json",
			"Authorization: Bearer <YOUR_API_KEY_OR_ACCESS_TOKEN>"
		),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
var data = "{\n    \"message\": \"This is a test message\",\n    \"to\": \"+355692179931\",\n    \"sender_id\": \"SMS.to\",\n    \"callback_url\": \"https://sms.to/callback/handler\"\n}";

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function() {
	if(this.readyState === 4) {
		console.log(this.responseText);
	}
});

xhr.open("POST", "https://api.sms.to/sms/send");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Authorization", "Bearer <YOUR_API_KEY_OR_ACCESS_TOKEN>");

xhr.send(data);
var https = require('follow-redirects').https;

var options = {
	'method': 'POST',
	'hostname': 'https://api.sms.to',
	'path': '/sms/send',
	'headers': {
		'Content-Type': 'application/json',
		'Authorization': 'Bearer <YOUR_API_KEY_OR_ACCESS_TOKEN>'
	},
	'maxRedirects': 20
};

var req = https.request(options, function (res) {
	var chunks = [];

	res.on("data", function (chunk) {
		chunks.push(chunk);
	});

	res.on("end", function (chunk) {
		var body = Buffer.concat(chunks);
		console.log(body.toString());
	});

	res.on("error", function (error) {
		console.error(error);
	});
});

var postData =  "{\n    \"message\": \"This is a test message\",\n    \"to\": \"+355692179931\",\n    \"sender_id\": \"SMS.to\",\n    \"callback_url\": \"https://sms.to/callback/handler\"\n}";

req.write(postData);

req.end();
require "uri"
require "net/http"

url = URI("https://api.sms.to/sms/send")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer <YOUR_API_KEY_OR_ACCESS_TOKEN>"
request.body = "{\n    \"message\": \"This is a test message\",\n    \"to\": \"+355692179931\",\n    \"sender_id\": \"SMS.to\",\n    \"callback_url\": \"https://sms.to/callback/handler\"\n}"

response = https.request(request)
puts response.read_body
import http.client
conn = http.client.HTTPSConnection("https://api.sms.to")
payload = "{\n    \"message\": \"This is a test message\",\n    \"to\": \"+355692179931\",\n    \"sender_id\": \"SMS.to\",\n    \"callback_url\": \"https://sms.to/callback/handler\"\n}"
headers = {
	'Content-Type': 'application/json',
	'Authorization': 'Bearer <YOUR_API_KEY_OR_ACCESS_TOKEN>'
}
conn.request("POST", "/sms/send", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
OkHttpClient client = new OkHttpClient().newBuilder()
	.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n    \"message\": \"This is a test message\",\n    \"to\": \"+355692179931\",\n    \"sender_id\": \"SMS.to\",\n    \"callback_url\": \"https://sms.to/callback/handler\"\n}");
Request request = new Request.Builder()
	.url("https://api.sms.to/sms/send")
	.method("POST", body)
	.addHeader("Content-Type", "application/json")
	.addHeader("Authorization", "Bearer <YOUR_API_KEY_OR_ACCESS_TOKEN>")
	.build();
Response response = client.newCall(request).execute();
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io/ioutil"
)

func main() {

	url := "https://api.sms.to/sms/send"
	method := "POST"

	payload := strings.NewReader("{\n    \"message\": \"This is a test message\",\n    \"to\": \"+355692179931\",\n    \"sender_id\": \"SMS.to\",\n    \"callback_url\": \"https://sms.to/callback/handler\"\n}")

	client := &http.Client {
	}
	req, err := http.NewRequest(method, url, payload)

	if err != nil {
		fmt.Println(err)
	}
	req.Header.Add("Content-Type", "application/json")
	req.Header.Add("Authorization", "Bearer <YOUR_API_KEY_OR_ACCESS_TOKEN>")

	res, err := client.Do(req)
	defer res.Body.Close()
	body, err := ioutil.ReadAll(res.Body)

	fmt.Println(string(body))
}
Secure Payments