New: online bookings, e-signatures, email marketing, HR & payroll and WhatsApp Business API.+254 725 333 888WhatsApp usLog in:SMS & WhatsAppBilling
Developers · SMS API v1

SMS API reference

Send SMS, manage contacts and sender IDs, and track delivery from your own apps. REST over HTTPS, with samples in cURL, PHP, Python and Node.js.

Base URLhttps://sms.beepafrica.com/SMSApi/

Introduction

The Beep Africa SMS API lets you send SMS, manage contacts, groups, templates and sender IDs, track links and pull delivery reports from your own systems. Everything you can do in the dashboard, you can do over the API.

Base URLhttps://sms.beepafrica.com/SMSApi/
ProtocolHTTPS, REST
MethodsPOST (most also accept GET)
Request bodyapplication/x-www-form-urlencoded
Responsesplain, JSON or XML
Phone formatCountry code + number, e.g. 254712345678

Quick start: send your first SMS

  1. Log in to sms.beepafrica.com and create an API key.
  2. Make sure your sender ID is approved, or use the test sender on your account.
  3. Send the request below, replacing YOUR_API_KEY and YOURBRAND.
curl -X POST "https://sms.beepafrica.com/SMSApi/send" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "sendMethod=quick" \
  --data-urlencode "mobile=254712345678" \
  --data-urlencode "msg=Hello from Beep Africa" \
  --data-urlencode "senderid=YOURBRAND" \
  --data-urlencode "msgType=text" \
  --data-urlencode "output=json"
<?php
$ch = curl_init("https://sms.beepafrica.com/SMSApi/send");
curl_setopt_array($ch, [
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_POST => true,
  CURLOPT_HTTPHEADER => ["apikey: YOUR_API_KEY"],
  CURLOPT_POSTFIELDS => http_build_query([
    "sendMethod" => "quick",
    "mobile"     => "254712345678",
    "msg"        => "Hello from Beep Africa",
    "senderid"   => "YOURBRAND",
    "msgType"    => "text",
    "output"     => "json",
  ]),
]);
echo curl_exec($ch);
import requests

resp = requests.post(
    "https://sms.beepafrica.com/SMSApi/send",
    headers={"apikey": "YOUR_API_KEY"},
    data={
        "sendMethod": "quick",
        "mobile": "254712345678",
        "msg": "Hello from Beep Africa",
        "senderid": "YOURBRAND",
        "msgType": "text",
        "output": "json",
    },
)
print(resp.json())
const resp = await fetch("https://sms.beepafrica.com/SMSApi/send", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body: new URLSearchParams({
    sendMethod: "quick",
    mobile: "254712345678",
    msg: "Hello from Beep Africa",
    senderid: "YOURBRAND",
    msgType: "text",
    output: "json",
  }),
});
console.log(await resp.json());

Sample response

{
  "status": "success",
  "mobile": "254712345678",
  "invalidMobile": "",
  "transactionId": "6305583318236810379",
  "statusCode": "200",
  "reason": "success"
}

Need high throughput? We also offer SMPP v3.4 binds, IP-locked and with dedicated credentials. Talk to us to get SMPP access.

Authentication

Authenticate every request in one of two ways. We recommend the API key.

MethodHow to send itNotes
API key (recommended)HTTP header apikey: YOUR_API_KEYCreate and manage keys in your dashboard or with the API key endpoints. Keys can be IP-locked. Never share or commit them to code repositories.
Username + passwordRequest parameters userId and passwordURL-encode the password if it contains special characters. Use only when an API key isn’t possible.

Example

curl -X POST "https://sms.beepafrica.com/SMSApi/account/readstatus" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php
$ch = curl_init("https://sms.beepafrica.com/SMSApi/account/readstatus");
curl_setopt_array($ch, [
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_POST => true,
  CURLOPT_HTTPHEADER => ["apikey: YOUR_API_KEY"],
  CURLOPT_POSTFIELDS => http_build_query(["output" => "json"]),
]);
echo curl_exec($ch);
import requests

resp = requests.post(
    "https://sms.beepafrica.com/SMSApi/account/readstatus",
    headers={"apikey": "YOUR_API_KEY"},
    data={"output": "json"},
)
print(resp.json())
const resp = await fetch("https://sms.beepafrica.com/SMSApi/account/readstatus", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body: new URLSearchParams({ output: "json" }),
});
console.log(await resp.json());

Sub-users can have their own API keys and permissions, and access can be restricted to specific IP addresses for web, API and SMPP.

Responses & errors

Set output to json, xml or plain (the default) on any request. Successful calls return "status": "success" and code 200. Errors return "status": "error" with a code and a reason you can show or log.

SMS length: one standard (GSM) SMS holds 160 characters, or 153 per part when longer messages are split. Messages using msgType=unicode (emoji or non-Latin scripts) hold 70 characters, or 67 per part.

Authentication

POST
POST

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "" \
  -H "apikey: YOUR_API_KEY"
import requests

url = ""
headers = {"apikey": "YOUR_API_KEY"}
data = {}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({});

const resp = await fetch("", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Response

Returns your delivery records for the day in the format set by output. Use Check MIS by Transaction ID for a single message.

API response codes

POST

Get List of API Response Error Codes. You can fetch all API related Error Code Response and map it with your application.

POSThttps://sms.beepafrica.com/SMSApi/info/responsecodes

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/info/responsecodes" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/info/responsecodes",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/info/responsecodes"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/info/responsecodes", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "info",
    "action": "responsecodes",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 198,
    "responsecodesList": [
      {
        "errorcode": {
          "errorCode": "200",
          "httpCode": "200",
          "status": "success",
          "description": "SenderId created successfully."
        }
      },
      {
        "errorcode": {
          "errorCode": "201",
          "httpCode": "200",
          "status": "error",
          "description": "Given SenderId is already exists."
        }
      }
    ]
  }
}

Delivery error codes

POST

Get List of Delivery Error Codes. You can map with your application for all error and success reponse for SMS delivery.

POSThttps://sms.beepafrica.com/SMSApi/info/deliverycodes

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/info/deliverycodes" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/info/deliverycodes",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/info/deliverycodes"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/info/deliverycodes", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "info",
    "action": "deliverycodes",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 45,
    "deliverycodesList": [
      {
        "errorcode": {
          "peId": "0",
          "identifier": "OTHER",
          "status": "FAILED",
          "cause": "Other"
        }
      },
      {
        "errorcode": {
          "peId": "1",
          "identifier": "SUCCESS",
          "status": "DELIVERED",
          "cause": "Delivered"
        }
      }
    ]
  }
}

SMS length & cost

POST

Get the cost and length of SMS. You can test your message using this API for length and cost of the campaign message.

POSThttps://sms.beepafrica.com/SMSApi/info/msg

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/info/msg" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "msg=Hello World" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/info/msg",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&msg=Hello+World&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/info/msg"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "msg": "Hello World",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "msg": "Hello World",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/info/msg", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "info",
    "action": "msg",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 1,
    "msgList": {
      "encoding": "TEXT",
      "length": 11,
      "remaining": 149,
      "credit": 1
    }
  }
}

Send SMS Batch

POSTGET

Send SMS in batches. You can send single SMS or comma separated mobile numbers.
Always include the country code, e.g. 2547XXXXXXXX for Kenya.

POSThttps://sms.beepafrica.com/SMSApi/send

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
sendMethodquickMethod needs to be defined as quick to send SMS in batches.
mobile254712345678Mobile with country code.
msgHello WorldYour message content.
senderidSENDERYour registered and approved sender name,
msgTypeunicode|textunicode for regional and text for English message content.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.
Optional Parameters
duplicatechecktrue|falseEnable to remove duplicate mobile numbers. Default is true.
scheduleTimeSchedule TimeDate format YYYY-MM-DD HH:MM:SS
trackLinktrue|falseEnable true to track links from your SMS content.
smartLinkTitleTitle for the link trackingA brief title to recognise your smart link campaign.
testMessagetrue|falseEnable true to test your message and messages wont be delivered when enabled true.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/send" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "sendMethod=quick" \
  --data-urlencode "mobile=254712345678" \
  --data-urlencode "msg=Hello World" \
  --data-urlencode "senderid=SENDER" \
  --data-urlencode "msgType=text" \
  --data-urlencode "duplicatecheck=true" \
  --data-urlencode "output=json"
<?php

	$curl = curl_init();
	curl_setopt_array($curl, array(
		CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/send",
		CURLOPT_RETURNTRANSFER => true,
		CURLOPT_ENCODING => "",
		CURLOPT_MAXREDIRS => 10,
		CURLOPT_TIMEOUT => 30,
		CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
		CURLOPT_CUSTOMREQUEST => "POST",
		CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&&sendMethod=quick&mobile=254712345678&msg=Hello+World&senderid=SENDER&msgType=text&duplicatecheck=true&output=json",
		CURLOPT_HTTPHEADER => array(
			"apikey: XXXXXXXXXXXXXXXXXXXX",
			"cache-control: no-cache",
			"content-type: application/x-www-form-urlencoded"
		),
	));

	$response = curl_exec($curl);
	$err = curl_error($curl);

	curl_close($curl);

	if ($err) {
		echo "cURL Error #:" . $err;
	} else {
		echo $response;
	}
import requests

url = "https://sms.beepafrica.com/SMSApi/send"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "sendMethod": "quick",
    "mobile": "254712345678",
    "msg": "Hello World",
    "senderid": "SENDER",
    "msgType": "text",
    "duplicatecheck": "true",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "sendMethod": "quick",
  "mobile": "254712345678",
  "msg": "Hello World",
  "senderid": "SENDER",
  "msgType": "text",
  "duplicatecheck": "true",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/send", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "status": "success",
  "mobile": "254712345678",
  "invalidMobile": "",
  "transactionId": "6305583318236810379",
  "statusCode": "200",
  "reason": "success"
}

Send SMS Group

POSTGET

Send SMS to your groups. You can send to single group or comma separated groups.
Always include the country code, e.g. 2547XXXXXXXX for Kenya.

POSThttps://sms.beepafrica.com/SMSApi/send

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
sendMethodgroupMethod needs to be defined as group to send SMS to groups.
groupgroup1%2C+group2You can either use group ids or names in comma separated formats.
msgHello WorldYour message content.
senderidSENDERYour registered and approved sender name,
msgTypeunicode|textunicode for regional and text for English message content.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.
Optional Parameters
duplicatechecktrue|falseEnable to remove duplicate mobile numbers. Default is true.
scheduleTimeSchedule TimeDate format YYYY-MM-DD HH:MM:SS
trackLinktrue|falseEnable true to track links from your SMS content.
smartLinkTitleTitle for the link trackingA brief title to recognise your smart link campaign.
testMessagetrue|falseEnable true to test your message and messages wont be delivered when enabled true.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/send" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "sendMethod=group" \
  --data-urlencode "group=group1, group2" \
  --data-urlencode "msg=Hello World" \
  --data-urlencode "senderid=SENDER" \
  --data-urlencode "msgType=text" \
  --data-urlencode "duplicatecheck=true" \
  --data-urlencode "output=json"
<?php

	$curl = curl_init();
	curl_setopt_array($curl, array(
		CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/send",
		CURLOPT_RETURNTRANSFER => true,
		CURLOPT_ENCODING => "",
		CURLOPT_MAXREDIRS => 10,
		CURLOPT_TIMEOUT => 30,
		CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
		CURLOPT_CUSTOMREQUEST => "POST",
		CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&&sendMethod=group&group=group1%2C+group2&msg=Hello+World&senderid=SENDER&msgType=text&duplicatecheck=true&output=json",
		CURLOPT_HTTPHEADER => array(
			"apikey: XXXXXXXXXXXXXXXXXXXX",
			"cache-control: no-cache",
			"content-type: application/x-www-form-urlencoded"
		),
	));

	$response = curl_exec($curl);
	$err = curl_error($curl);

	curl_close($curl);

	if ($err) {
		echo "cURL Error #:" . $err;
	} else {
		echo $response;
	}
import requests

url = "https://sms.beepafrica.com/SMSApi/send"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "sendMethod": "group",
    "group": "group1, group2",
    "msg": "Hello World",
    "senderid": "SENDER",
    "msgType": "text",
    "duplicatecheck": "true",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "sendMethod": "group",
  "group": "group1, group2",
  "msg": "Hello World",
  "senderid": "SENDER",
  "msgType": "text",
  "duplicatecheck": "true",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/send", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "status": "success",
  "group": "63",
  "transactionId": "8359251506264886974",
  "statusCode": "200",
  "reason": "success"
}

Send SMS File

POST

Send SMS using File Upload. You can upload only mobile in a file or mobile and message in a file or custom message with mobile in a file.
Always include the country code, e.g. 2547XXXXXXXX for Kenya.

POSThttps://sms.beepafrica.com/SMSApi/send

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
sendMethodbulkuploadMethod needs to be defined as bulkupload to send SMS using file upload.
fileYour File with mobile numbers.You can use multiple formats such as csv, xls, xlsx and zip extension formats.
msgHello WorldYour message content.
senderidSENDERYour registered and approved sender name,
msgTypeunicode|textunicode for regional and text for English message content.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.
Optional Parameters
duplicatechecktrue|falseEnable to remove duplicate mobile numbers. Default is true.
scheduleTimeSchedule TimeDate format YYYY-MM-DD HH:MM:SS
trackLinktrue|falseEnable true to track links from your SMS content.
smartLinkTitleTitle for the link trackingA brief title to recognise your smart link campaign.
testMessagetrue|falseEnable true to test your message and messages wont be delivered when enabled true.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/send" \
  -H "apikey: YOUR_API_KEY" \
  -F "senderid=SENDER" \
  -F "sendMethod=bulkupload" \
  -F "msgType=text" \
  -F "msg=Hello World" \
  -F "duplicatecheck=true" \
  -F "file=@mobile_no_file.csv" \
  -F "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/send",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"userid\"\r\n\r\nYourUsername\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"password\"\r\n\r\nYourPassword\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"senderid\"\r\n\r\nSENDER\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"sendMethod\"\r\n\r\nbulkupload\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"msgType\"\r\n\r\ntext\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"msg\"\r\n\r\nHello World\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"duplicatecheck\"\r\n\r\ntrue\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"file\"; filename=\"mobile_no_file.csv\"\r\nContent-Type: text/csv\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"output\"\r\n\r\njson\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/send"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "senderid": "SENDER",
    "sendMethod": "bulkupload",
    "msgType": "text",
    "msg": "Hello World",
    "duplicatecheck": "true",
    "output": "json"
}
files = {"file": open("mobile_no_file.csv", "rb")}

resp = requests.post(url, headers=headers, data=data, files=files)
print(resp.json())
import { readFileSync } from "node:fs";

const form = new FormData();
form.append("senderid", "SENDER");
form.append("sendMethod", "bulkupload");
form.append("msgType", "text");
form.append("msg", "Hello World");
form.append("duplicatecheck", "true");
form.append("file", new Blob([readFileSync("mobile_no_file.csv")]), "mobile_no_file.csv");
form.append("output", "json");

const resp = await fetch("https://sms.beepafrica.com/SMSApi/send", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body: form,
});
console.log(await resp.json());

Sample response

{
    "status": "success",
    "transactionId": "9140733627001556338",
    "statusCode": "200",
    "reason": "success"
}

Update Schedule SMS

POSTGET

Change the delivery time of a scheduled SMS, using the transaction ID returned when you scheduled it.

POSThttps://sms.beepafrica.com/SMSApi/schedule/update

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
uuidTransaction IDIdentifier to update your schedule time.
scheduletimeSchedule TimeYour new time to update the schedule time. Date time format needs to be YYYY-MM-DD HH:MM:SS
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/schedule/update" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "scheduletime=2020-01-01 00:00:00" \
  --data-urlencode "uuid=83147103413249843" \
  --data-urlencode "output=json"
<?php

	$curl = curl_init();
	curl_setopt_array($curl, array(
		CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/schedule/update",
		CURLOPT_RETURNTRANSFER => true,
		CURLOPT_ENCODING => "",
		CURLOPT_MAXREDIRS => 10,
		CURLOPT_TIMEOUT => 30,
		CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
		CURLOPT_CUSTOMREQUEST => "POST",
		CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&&scheduletime=2020-01-01 00:00:00&uuid=83147103413249843&output=json",
		CURLOPT_HTTPHEADER => array(
			"apikey: XXXXXXXXXXXXXXXXXXXX",
			"cache-control: no-cache",
			"content-type: application/x-www-form-urlencoded"
		),
	));

	$response = curl_exec($curl);
	$err = curl_error($curl);

	curl_close($curl);

	if ($err) {
		echo "cURL Error #:" . $err;
	} else {
		echo $response;
	}
import requests

url = "https://sms.beepafrica.com/SMSApi/schedule/update"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "scheduletime": "2020-01-01 00:00:00",
    "uuid": "83147103413249843",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "scheduletime": "2020-01-01 00:00:00",
  "uuid": "83147103413249843",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/schedule/update", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "schedule",
        "action": "update",
        "status": "success",
        "msg": "Schedule time updated successfully.",
        "code": "200"
    }
}

Read Schedule SMS

POST

Check your schedule SMS Messages list.

POSThttps://sms.beepafrica.com/SMSApi/schedule/read

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/schedule/read" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/schedule/read",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/schedule/read"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/schedule/read", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "schedule",
        "action": "read",
        "status": "success",
        "msg": "success",
        "code": "200",
        "count": 1,
        "scheduleList": [
            {
                "schedule": {
                    "uuId": "5718742519829975000",
                    "status": "pending",
                    "total": "1",
                    "timestamp": "1562974594713",
                    "scheduledTimestamp": "1564529760000",
                    "lastupdatedTimestamp": "0"
                }
            }
        ]
    }
}

Delete Schedule SMS

POST

Delete Schedule SMS using transaction ID.

POSThttps://sms.beepafrica.com/SMSApi/schedule/delete

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
uuidTransaction IDIdentifier to delete your scheduled messages.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/schedule/delete" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "uuid=83147103413249843" \
  --data-urlencode "output=json"
<?php

	$curl = curl_init();
	curl_setopt_array($curl, array(
		CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/schedule/delete",
		CURLOPT_RETURNTRANSFER => true,
		CURLOPT_ENCODING => "",
		CURLOPT_MAXREDIRS => 10,
		CURLOPT_TIMEOUT => 30,
		CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
		CURLOPT_CUSTOMREQUEST => "POST",
		CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&&uuid=83147103413249843&output=json",
		CURLOPT_HTTPHEADER => array(
			"apikey: XXXXXXXXXXXXXXXXXXXX",
			"cache-control: no-cache",
			"content-type: application/x-www-form-urlencoded"
		),
	));

	$response = curl_exec($curl);
	$err = curl_error($curl);

	curl_close($curl);

	if ($err) {
		echo "cURL Error #:" . $err;
	} else {
		echo $response;
	}
import requests

url = "https://sms.beepafrica.com/SMSApi/schedule/delete"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "uuid": "83147103413249843",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "uuid": "83147103413249843",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/schedule/delete", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "schedule",
        "action": "delete",
        "status": "success",
        "msg": "Schedule deleted successfully",
        "code": "200"
    }
}

Update Campaign SMS

POST

Update Campaign SMS.

POSThttps://sms.beepafrica.com/SMSApi/campaign/update

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
campaignidCampaign IDIdentifier to update your campaign time.
scheduletimeSchedule TimeYour new time to update the campaign time. Date time format needs to be YYYY-MM-DD HH:MM:SS
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/campaign/update" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "scheduletime=2020-01-01 00:00:00" \
  --data-urlencode "campaignid=83147103413249843" \
  --data-urlencode "output=json"
<?php

	$curl = curl_init();
	curl_setopt_array($curl, array(
		CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/campaign/update",
		CURLOPT_RETURNTRANSFER => true,
		CURLOPT_ENCODING => "",
		CURLOPT_MAXREDIRS => 10,
		CURLOPT_TIMEOUT => 30,
		CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
		CURLOPT_CUSTOMREQUEST => "POST",
		CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&&scheduletime=2020-01-01 00:00:00&campaignid=83147103413249843&output=json",
		CURLOPT_HTTPHEADER => array(
			"apikey: XXXXXXXXXXXXXXXXXXXX",
			"cache-control: no-cache",
			"content-type: application/x-www-form-urlencoded"
		),
	));

	$response = curl_exec($curl);
	$err = curl_error($curl);

	curl_close($curl);

	if ($err) {
		echo "cURL Error #:" . $err;
	} else {
		echo $response;
	}
import requests

url = "https://sms.beepafrica.com/SMSApi/campaign/update"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "scheduletime": "2020-01-01 00:00:00",
    "campaignid": "83147103413249843",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "scheduletime": "2020-01-01 00:00:00",
  "campaignid": "83147103413249843",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/campaign/update", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "campaign",
        "action": "update",
        "status": "success",
        "msg": "Schedule time updated successfully.",
        "code": "200"
    }
}

Read Campaign SMS

POST

Check your Campaign SMS Messages list.

POSThttps://sms.beepafrica.com/SMSApi/campaign/read

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
campaignidCampaign ID.Enter the campaign ID to fetch details of split campaign.
uuidTransaction ID.Enter the transaction ID to fetch details of split campaign. (optional)
fromdateFrom Date.Enter the from date with format, YYYY-MM-DD.
todateTo Date.Enter the to date with format, YYYY-MM-DD..
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/campaign/read" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "campaignid=123456789" \
  --data-urlencode "fromdate=2026-10-01" \
  --data-urlencode "todate=2026-10-31" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/campaign/read",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&campaignid=123456789&fromdate=2026-10-01&todate=2026-10-31&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/campaign/read"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "campaignid": "123456789",
    "fromdate": "2026-10-01",
    "todate": "2026-10-31",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "campaignid": "123456789",
  "fromdate": "2026-10-01",
  "todate": "2026-10-31",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/campaign/read", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "campaign",
        "action": "read",
        "status": "success",
        "msg": "success",
        "code": "200",
        "count": 1,
        "campaignList": [
            {
                "campaign": {
                    "uuId": "5718742519829975000",
                    "status": "pending",
                    "total": "1",
                    "timestamp": "1562974594713",
                    "scheduledTimestamp": "1564529760000",
                    "lastupdatedTimestamp": "0"
                }
            }
        ]
    }
}

Delete Campaign SMS

POST

Delete Campaign SMS.

POSThttps://sms.beepafrica.com/SMSApi/campaign/delete

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
campaignidCampaign IDIdentifier to delete your scheduled campaign messages.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/campaign/delete" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "campaignid=83147103413249843" \
  --data-urlencode "output=json"
<?php

	$curl = curl_init();
	curl_setopt_array($curl, array(
		CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/campaign/delete",
		CURLOPT_RETURNTRANSFER => true,
		CURLOPT_ENCODING => "",
		CURLOPT_MAXREDIRS => 10,
		CURLOPT_TIMEOUT => 30,
		CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
		CURLOPT_CUSTOMREQUEST => "POST",
		CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&&campaignid=83147103413249843&output=json",
		CURLOPT_HTTPHEADER => array(
			"apikey: XXXXXXXXXXXXXXXXXXXX",
			"cache-control: no-cache",
			"content-type: application/x-www-form-urlencoded"
		),
	));

	$response = curl_exec($curl);
	$err = curl_error($curl);

	curl_close($curl);

	if ($err) {
		echo "cURL Error #:" . $err;
	} else {
		echo $response;
	}
import requests

url = "https://sms.beepafrica.com/SMSApi/campaign/delete"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "campaignid": "83147103413249843",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "campaignid": "83147103413249843",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/campaign/delete", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "campaign",
        "action": "delete",
        "status": "success",
        "msg": "Schedule deleted successfully",
        "code": "200"
    }
}

Change Password

POST

Change your desired password, API accepts POST method.

POSThttps://sms.beepafrica.com/SMSApi/password/change

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
newpasswordYour New PasswordEnter your desired password.
confirmpasswordConfirm New PasswordConfirm your new password.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/password/change" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "newpassword=xxxxxxxx" \
  --data-urlencode "confirmpassword=xxxxxxxx" \
  --data-urlencode "output=json"
<?php

	$curl = curl_init();
	curl_setopt_array($curl, array(
		CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/password/change",
		CURLOPT_RETURNTRANSFER => true,
		CURLOPT_ENCODING => "",
		CURLOPT_MAXREDIRS => 10,
		CURLOPT_TIMEOUT => 30,
		CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
		CURLOPT_CUSTOMREQUEST => "POST",
		CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&&newpassword=xxxxxxxx&confirmpassword=xxxxxxxx&output=json",
		CURLOPT_HTTPHEADER => array(
			"apikey: XXXXXXXXXXXXXXXXXXXX",
			"cache-control: no-cache",
			"content-type: application/x-www-form-urlencoded"
		),
	));

	$response = curl_exec($curl);
	$err = curl_error($curl);

	curl_close($curl);

	if ($err) {
		echo "cURL Error #:" . $err;
	} else {
		echo $response;
	}
import requests

url = "https://sms.beepafrica.com/SMSApi/password/change"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "newpassword": "xxxxxxxx",
    "confirmpassword": "xxxxxxxx",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "newpassword": "xxxxxxxx",
  "confirmpassword": "xxxxxxxx",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/password/change", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "password",
        "action": "change",
        "status": "success",
        "msg": "Password changed successfully.",
        "code": "200"
    }
}

Update Profile

POST

Update your profile over HTTP API. API supports only POST method.

POSThttps://sms.beepafrica.com/SMSApi/account/updateprofile

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
fullnameYourFullNameEnter your full name.
email[email protected]Enter your email id.
mobileno2547xxxxxxxxEnter your contact number.
addressYour Address, AreaEnter your address.
regionNairobi CountyEnter your region.
cityNairobiEnter your city.
countryKenyaEnter your country.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/account/updateprofile" \
  -H "apikey: YOUR_API_KEY" \
  -F "output=json" \
  -F "[email protected]" \
  -F "mobileno=2547xxxxxxxx" \
  -F "address=Studio House, Marcus Garvey Road" \
  -F "country=Kenya" \
  -F "city=Nairobi" \
  -F "[email protected]"
<?php

	$curl = curl_init();
	curl_setopt_array($curl, array(
		CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/account/updateprofile",
		CURLOPT_RETURNTRANSFER => true,
		CURLOPT_ENCODING => "",
		CURLOPT_MAXREDIRS => 10,
		CURLOPT_TIMEOUT => 30,
		CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
		CURLOPT_CUSTOMREQUEST => "POST",
		CURLOPT_POSTFIELDS => "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"output\"\r\n\r\njson\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"userid\"\r\n\r\nYourUsername\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"password\"\r\n\r\nYourPassword\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"email\"\r\n\r\[email protected]\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"mobileno\"\r\n\r\n2547xxxxxxxx\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"fullname\"\r\n\r\YourFullName\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"address\"\r\n\r\nStudio House, Marcus Garvey Road\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"region\"\r\n\r\Nairobi County\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"country\"\r\n\r\nKenya\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"city\"\r\n\r\nNairobi\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"profilepic\"; filename=\"myPic.jpg\"\r\nContent-Type: image/jpeg\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--",
		CURLOPT_HTTPHEADER => array(
			"cache-control: no-cache",
			"content-type: application/x-www-form-urlencoded"
		),
	));

	$response = curl_exec($curl);
	$err = curl_error($curl);

	curl_close($curl);

	if ($err) {
		echo "cURL Error #:" . $err;
	} else {
		echo $response;
	}
import requests

url = "https://sms.beepafrica.com/SMSApi/account/updateprofile"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json",
    "email": "[email protected]",
    "mobileno": "2547xxxxxxxx",
    "address": "Studio House, Marcus Garvey Road",
    "country": "Kenya",
    "city": "Nairobi"
}
files = {"profilepic": open("myPic.jpg", "rb")}

resp = requests.post(url, headers=headers, data=data, files=files)
print(resp.json())
import { readFileSync } from "node:fs";

const form = new FormData();
form.append("output", "json");
form.append("email", "[email protected]");
form.append("mobileno", "2547xxxxxxxx");
form.append("address", "Studio House, Marcus Garvey Road");
form.append("country", "Kenya");
form.append("city", "Nairobi");
form.append("profilepic", new Blob([readFileSync("myPic.jpg")]), "myPic.jpg");

const resp = await fetch("https://sms.beepafrica.com/SMSApi/account/updateprofile", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body: form,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "account",
        "action": "updateprofile",
        "status": "success",
        "msg": "Profile updated successfully.",
        "code": "200"
    }
}

Read Profile

POSTGET

Read Profile.

POSThttps://sms.beepafrica.com/SMSApi/account/readprofile

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/account/readprofile" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/account/readprofile",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/account/readprofile"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/account/readprofile", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "account",
    "action": "readprofile",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 7,
    "account": {
      "fullName": "Full Name",
      "postalAddress": "Janakput",
      "postalCity": "2707",
      "postalCountry": "101",
      "postalRegion": "22",
      "profilePic": "",
      "enableCMS": "1"
    }
  }
}

Read Credit History

POSTGET

Read Credit History.

POSThttps://sms.beepafrica.com/SMSApi/account/readcredithistory

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/account/readcredithistory" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/account/readcredithistory",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/account/readcredithistory"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/account/readcredithistory", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "account",
    "action": "readcredithistory",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 1,
    "historyList": [
      {
        "history": {
          "id": "307",
          "creditsBefore": "0",
          "credits": "10",
          "creditsAfter": "10",
          "product": "SMS",
          "type": "CREDIT",
          "transactionType": "1",
          "addedTime": "1562969637101",
          "creditComments": "test credits for testing"
        }
      }
    ]
  }
}

Read Account Status

POSTGET

Read Account Status.

POSThttps://sms.beepafrica.com/SMSApi/account/readstatus

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/account/readstatus" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/account/readstatus",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/account/readstatus"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/account/readstatus", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "account",
    "action": "readstatus",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 4,
    "account": {
      "expDate": "1620153000000",
      "endHour": "-1",
      "startHour": "-1",
      "smsBalance": "1"
    }
  }
}

Create API Key

POSTGET

Create API Key.

POSThttps://sms.beepafrica.com/SMSApi/apikey/create

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/apikey/create" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/apikey/create",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/apikey/create"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/apikey/create", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "apikey",
    "action": "create",
    "status": "success",
    "msg": "ApiKey Created successfully.",
    "code": "200"
  }
}

Read API Key

POSTGET

Read API Key.

POSThttps://sms.beepafrica.com/SMSApi/apikey/read

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/apikey/read" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/apikey/read",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/apikey/read"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/apikey/read", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "apikey",
    "action": "read",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 1,
    "apikeyList": {
      "apikey": "902be2ba73523ek3k32c5f0b5f8f684337f710bc4"
    }
  }
}

Update API Key

POST

Update API Key.

POSThttps://sms.beepafrica.com/SMSApi/apikey/update

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/apikey/update" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/apikey/update",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/apikey/update"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/apikey/update", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "apikey",
    "action": "update",
    "status": "success",
    "msg": "ApiKey updated successfully.",
    "code": "200"
  }
}

Delete API Key

POSTDELETE

Delete API Key.

POSThttps://sms.beepafrica.com/SMSApi/apikey/delete

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/apikey/delete" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/apikey/delete",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/apikey/delete"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/apikey/delete", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "apikey",
        "action": "delete",
        "status": "success",
        "msg": "ApiKey Deleted successfully.",
        "code": "200"
    }
}

Create Group

POSTGET

Create New Group.

POSThttps://sms.beepafrica.com/SMSApi/group/create

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
groupnameYour Desired Group NameEnter your desired group name.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/group/create" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "groupname=test1" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/group/create",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&groupname=test1&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/group/create"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "groupname": "test1",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "groupname": "test1",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/group/create", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "group",
        "action": "create",
        "status": "success",
        "msg": "Group created successfully.",
        "code": "200"
    }
}

Read Group

POSTGET

Read your Groups List.

POSThttps://sms.beepafrica.com/SMSApi/group/read

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/group/read" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/group/read",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/group/read"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/group/read", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "group",
        "action": "read",
        "status": "success",
        "msg": "success",
        "code": "200",
        "count": 2,
        "groupnameList": [
            {
                "groupname": {
                    "groupId": "16322",
                    "count": "1",
                    "groupName": "test12",
                    "groupType": "PHONEBOOK",
                    "creationTime": "1562969551262"
                }
            },
            {
                "groupname": {
                    "groupId": "18373",
                    "count": "0",
                    "groupName": "TEST1234",
                    "groupType": "PHONEBOOK",
                    "creationTime": "1563027427155"
                }
            }
        ]
    }
}

Update Group

POST

Update your Group.

POSThttps://sms.beepafrica.com/SMSApi/group/update

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
groupnameYour Desired Group NameEnter your desired group name.
idYour Group IDEnter id which group name to be edited.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/group/update" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "groupname=test2" \
  --data-urlencode "id=123" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/group/update",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&groupname=test2&id=123&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/group/update"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "groupname": "test2",
    "id": "123",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "groupname": "test2",
  "id": "123",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/group/update", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "group",
        "action": "update",
        "status": "success",
        "msg": "Group updated successfully.",
        "code": "200"
    }
}

Delete Group

POST

Delete Group.

POSThttps://sms.beepafrica.com/SMSApi/group/delete

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
idYour Group IDEnter id which group name to be deleted.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/group/delete" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "id=123" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/group/delete",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&id=123&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/group/delete"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "id": "123",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "id": "123",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/group/delete", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "group",
        "action": "delete",
        "status": "success",
        "msg": "Group deleted successfully.",
        "code": "224"
    }
}

Create Contact

POSTGET

Create New Contact.

POSThttps://sms.beepafrica.com/SMSApi/contact/create

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
groupnameYour Group NameEnter group name which contacts needs to be added to.
contactnameYour Contact NameEnter contact name.
mobilenoContact's Mobile NumberEnter contact's mobile number.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/contact/create" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "groupname=TEST4567" \
  --data-urlencode "contactname=testname" \
  --data-urlencode "mobileno=254722987678" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/contact/create",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&groupname=TEST4567&contactname=testname&mobileno=254722987678&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/contact/create"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "groupname": "TEST4567",
    "contactname": "testname",
    "mobileno": "254722987678",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "groupname": "TEST4567",
  "contactname": "testname",
  "mobileno": "254722987678",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/contact/create", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "contact",
        "action": "create",
        "status": "success",
        "msg": "Contact created successfully.",
        "code": "200"
    }
}

Read Contact

POSTGET

Read your contacts list.

POSThttps://sms.beepafrica.com/SMSApi/contact/read

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/contact/read" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/contact/read",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/contact/read"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/contact/read", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "contact",
        "action": "read",
        "status": "success",
        "msg": "success",
        "code": "200",
        "count": 2,
        "contactList": [
            {
                "contact": {
                    "cId": "144441",
                    "contactName": "abcd",
                    "contactStatus": "1",
                    "groupId": "63",
                    "mobileNo": "254712345678",
                    "groupName": "TEST4567",
                    "groupType": "PHONEBOOK"
                }
            },
            {
                "contact": {
                    "cId": "23347200",
                    "contactName": "Test Name",
                    "contactStatus": "1",
                    "groupId": "63",
                    "mobileNo": "254722987678",
                    "groupName": "TEST4567",
                    "groupType": "PHONEBOOK"
                }
            }
        ]
    }
}

Update Contact

POST

Update Contact.

POSThttps://sms.beepafrica.com/SMSApi/contact/update

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
groupidYour Group IDEnter group id which contacts needs to be added to.
contactnameYour Contact NameEnter contact name.
mobilenoContact's Mobile NumberEnter contact's mobile number.
idContact's IDEnter contact's ID which needs to be edited.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/contact/update" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "groupid=63" \
  --data-urlencode "contactname=testname" \
  --data-urlencode "mobileno=254722987678" \
  --data-urlencode "id=231233" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/contact/update",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&groupid=63&contactname=testname&mobileno=254722987678&id=231233&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/contact/update"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "groupid": "63",
    "contactname": "testname",
    "mobileno": "254722987678",
    "id": "231233",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "groupid": "63",
  "contactname": "testname",
  "mobileno": "254722987678",
  "id": "231233",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/contact/update", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "contact",
        "action": "update",
        "status": "success",
        "msg": "Contact updated successfully.",
        "code": "200"
    }
}

Delete Contact

POST

Delete Contact.

POSThttps://sms.beepafrica.com/SMSApi/contact/delete

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
idContact's IDEnter contact's ID which needs to be deleted.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/contact/delete" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "id=231233" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/contact/delete",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&id=231233&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/contact/delete"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "id": "231233",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "id": "231233",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/contact/delete", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "contact",
        "action": "delete",
        "status": "success",
        "msg": "Contact Deleted successfully.",
        "code": "200"
    }
}

Create Draft

POSTGET

Create Draft.

POSThttps://sms.beepafrica.com/SMSApi/draft/create

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
titleDraft's TitleEnter draft's title.
contentDraft's ContentEnter draft's Content.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/draft/create" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "title=My Campaign 1" \
  --data-urlencode "content=Hello World" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/draft/create",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&title=My Campaign 1&content=Hello World&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/draft/create"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "title": "My Campaign 1",
    "content": "Hello World",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "title": "My Campaign 1",
  "content": "Hello World",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/draft/create", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "draft",
        "action": "create",
        "status": "success",
        "msg": "Draft created successfully.",
        "code": "200"
    }
}

Read Draft

POSTGET

Read Draft.

POSThttps://sms.beepafrica.com/SMSApi/draft/read

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/draft/read" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/draft/read",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/draft/read"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/draft/read", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "draft",
        "action": "read",
        "status": "success",
        "msg": "success",
        "code": "200",
        "count": 1,
        "draftList": [
            {
                "draft": {
                    "draftId": "70",
                    "draftTitle": "DRAFT TITLE",
                    "draftContent": "Hello This is test",
                    "draftLength": "18",
                    "draftCost": "1",
                    "addedTime": "1563030376538"
                }
            }
        ]
    }
}

Update Draft

POST

Update Draft.

POSThttps://sms.beepafrica.com/SMSApi/draft/update

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
titleDraft's TitleEnter draft's title.
contentDraft's ContentEnter draft's Content.
idDraft's IDEnter draft's ID which needs to be updated.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/draft/update" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "title=My Campaign 1" \
  --data-urlencode "content=Hello World" \
  --data-urlencode "id=123" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/draft/update",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&title=My Campaign 1&content=Hello World&id=123&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/draft/update"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "title": "My Campaign 1",
    "content": "Hello World",
    "id": "123",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "title": "My Campaign 1",
  "content": "Hello World",
  "id": "123",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/draft/update", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "draft",
        "action": "update",
        "status": "success",
        "msg": "Draft updated successfully.",
        "code": "200"
    }
}

Delete Draft

POST

Delete Draft.

POSThttps://sms.beepafrica.com/SMSApi/draft/delete

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
idDraft's IDEnter draft's ID which needs to be deleted.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/draft/delete" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "id=123" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/draft/delete",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&id=123&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/draft/delete"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "id": "123",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "id": "123",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/draft/delete", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "draft",
        "action": "delete",
        "status": "success",
        "msg": "Draft deleted successfully.",
        "code": "200"
    }
}

Create Message Template

POSTGET

Create Message Template.

POSThttps://sms.beepafrica.com/SMSApi/template/create

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
messageMessage Template Content.Enter Message Template with variable.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/template/create" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "message=This is test message ###123### from Test" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/template/create",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&message=This is test message ###123### from Test&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/template/create"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "message": "This is test message ###123### from Test",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "message": "This is test message ###123### from Test",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/template/create", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "template",
        "action": "create",
        "status": "success",
        "msg": "Template created successfully and given for approval",
        "code": "200"
    }
}

Read Message Template

POSTGET

Read Message Template.

POSThttps://sms.beepafrica.com/SMSApi/template/read

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/template/read" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/template/read",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/template/read"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/template/read", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "template",
        "action": "read",
        "status": "success",
        "msg": "success",
        "code": "200",
        "count": 1,
        "templateList": [
            {
                "template": {
                    "mtId": "7",
                    "template": "This is test message ###123### from Test",
                    "msgType": "",
                    "status": "PENDING",
                    "lastUpdated": "1563032761480"
                }
            }
        ]
    }
}

Update Message Template

POST

Update Message Template.

POSThttps://sms.beepafrica.com/SMSApi/template/update

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
messageMessage Template Content.Update Message Template with variable.
idMessage Template's ID.Enter Message Template'ss ID which needs to be edited.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/template/update" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "message=This is new variable test message ###123### from Test" \
  --data-urlencode "id=123" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/template/update",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&message=This is new variable test message ###123### from Test&id=123&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/template/update"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "message": "This is new variable test message ###123### from Test",
    "id": "123",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "message": "This is new variable test message ###123### from Test",
  "id": "123",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/template/update", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "template",
        "action": "update",
        "status": "success",
        "msg": "Template updated successfully and given for approval.",
        "code": "200"
    }
}

Delete Message Template

POST

Delete Message Template.

POSThttps://sms.beepafrica.com/SMSApi/template/delete

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
idMessage Template's ID.Enter Message Template'ss ID which needs to be deleted.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/template/delete" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "id=123" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/template/delete",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&id=123&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/template/delete"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "id": "123",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "id": "123",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/template/delete", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "template",
        "action": "delete",
        "status": "success",
        "msg": "Template deleted successfully.",
        "code": "200"
    }
}

Create Sender ID

POSTGET

Create Sender ID.

POSThttps://sms.beepafrica.com/SMSApi/senderid/create

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
senderidYour Sender ID.Enter your desired sender ID.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/senderid/create" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "senderid=DEMOTS" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/senderid/create",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&senderid=DEMOTS&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/senderid/create"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "senderid": "DEMOTS",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "senderid": "DEMOTS",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/senderid/create", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "senderid",
        "action": "create",
        "status": "success",
        "msg": "SenderId created successfully.",
        "code": "200"
    }
}

Read Sender ID

POSTGET

Read Sender ID.

POSThttps://sms.beepafrica.com/SMSApi/senderid/read

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/senderid/read" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/senderid/read",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/senderid/read"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/senderid/read", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "senderid",
        "action": "read",
        "status": "success",
        "msg": "success",
        "code": "200",
        "count": {
            "total": 1,
            "pending": 1,
            "active": 0,
            "rejected": 0
        },
        "senderidList": [
            {
                "senderid": {
                    "sId": "179",
                    "senderName": "TESTIN",
                    "isEnabled": "Pending",
                    "addTime": "1563033651005"
                }
            }
        ]
    }
}

Update Sender ID

POST

Update Sender ID.

POSThttps://sms.beepafrica.com/SMSApi/senderid/update

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
senderidYour Sender ID.Enter your desired sender ID.
idSender ID's Update ID.Enter Sender ID's ID which needs to be edited.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/senderid/update" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "senderid=DEMOTS" \
  --data-urlencode "id=123" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/senderid/update",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&senderid=DEMOTS&id=123&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/senderid/update"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "senderid": "DEMOTS",
    "id": "123",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "senderid": "DEMOTS",
  "id": "123",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/senderid/update", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "senderid",
        "action": "update",
        "status": "success",
        "msg": "SenderId updated successfully.",
        "code": "200"
    }
}

Delete Sender ID

POST

Delete Sender ID.

POSThttps://sms.beepafrica.com/SMSApi/senderid/delete

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
idSender ID's Delete ID.Enter Sender ID's ID which needs to be deleted.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/senderid/delete" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "id=123" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/senderid/delete",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&id=123&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/senderid/delete"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "id": "123",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "id": "123",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/senderid/delete", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "senderid",
        "action": "delete",
        "status": "success",
        "msg": "Senderid deleted successfully",
        "code": "200"
    }
}

Create Webhook

POSTGET

Create Webhook.

POSThttps://sms.beepafrica.com/SMSApi/webhook/create

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
smswebhookValid URL.Enter Valid URL to recieve SMS Delivery reports.
smswebhookrateDLR TPS.AT what TPS rate DLR should be forwarded to. Default is 10.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/webhook/create" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "smswebhook=http://localhost" \
  --data-urlencode "smswebhookrate=10" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/webhook/create",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&smswebhook=http://localhost&smswebhookrate=10&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/webhook/create"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "smswebhook": "http://localhost",
    "smswebhookrate": "10",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "smswebhook": "http://localhost",
  "smswebhookrate": "10",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/webhook/create", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "webhook",
        "action": "create",
        "status": "success",
        "msg": "Webhook added successfully.",
        "code": "200"
    }
}

Read Webhook

POSTGET

Read Webhook.

POSThttps://sms.beepafrica.com/SMSApi/webhook/read

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/webhook/read" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/webhook/read",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/webhook/read"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/webhook/read", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "webhook",
        "action": "read",
        "status": "success",
        "msg": "success",
        "code": "200",
        "count": 1,
        "webhookList": [
            {
                "webhook": {
                    "smsWebhook": "http://localhost",
                    "smsWebhookRate": "50"
                }
            }
        ]
    }
}

Update Webhook

POST

Update Webhook.

POSThttps://sms.beepafrica.com/SMSApi/webhook/update

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
smswebhookValid URL.Enter Valid URL to recieve SMS Delivery reports.
smswebhookrateDLR TPS.AT what TPS rate DLR should be forwarded to. Default is 10.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/webhook/update" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "smswebhook=http://localhost" \
  --data-urlencode "smswebhookrate=10" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/webhook/update",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&smswebhook=http://localhost&smswebhookrate=10&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/webhook/update"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "smswebhook": "http://localhost",
    "smswebhookrate": "10",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "smswebhook": "http://localhost",
  "smswebhookrate": "10",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/webhook/update", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "webhook",
        "action": "update",
        "status": "success",
        "msg": "Webhook updated successfully.",
        "code": "200"
    }
}

Delete Webhook

POST

Delete Webhook.

POSThttps://sms.beepafrica.com/SMSApi/webhook/delete

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/webhook/delete" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/webhook/delete",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/webhook/delete"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/webhook/delete", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "webhook",
        "action": "delete",
        "status": "success",
        "msg": "Webhook deleted successfully.",
        "code": "200"
    }
}

Check MIS by Transaction ID

POST

Check MIS by Transaction ID.

POSThttps://sms.beepafrica.com/SMSApi/reports/status

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
uuidTransaction ID.Enter a transaction ID to fetch reports.
fromdateFrom Date.Enter from date. Date format should be YYYY-MM-DD
todateTo Date.Enter to date. Date format should be YYYY-MM-DD
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reports/status" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "uuid=891348129741234" \
  --data-urlencode "fromdate=2019-07-10" \
  --data-urlencode "todate=2019-07-14" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reports/status",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&uuid=891348129741234&fromdate=2019-07-10&todate=2019-07-14&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reports/status"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "uuid": "891348129741234",
    "fromdate": "2019-07-10",
    "todate": "2019-07-14",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "uuid": "891348129741234",
  "fromdate": "2019-07-10",
  "todate": "2019-07-14",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reports/status", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
    "response": {
        "api": "send",
        "action": "status",
        "status": "success",
        "msg": "success",
        "code": "200",
        "count": 1,
        "report_statusList": [
            {
                "status": {
                    "uuId": "8359251506264886974",
                    "msgId": "QudUrwhMuIGkbs2",
                    "mobileNo": "254712345678",
                    "senderName": "CBISTS",
                    "text": "Hello world",
                    "msgType": "text",
                    "length": "11",
                    "cost": "1",
                    "Status": "FAILED",
                    "Cause": "Unknown User",
                    "Channel Name": "API",
                    "Submitted Time": "July 13, 2019 03:44:48",
                    "Delivered Time": "July 13, 2019 03:44:49"
                }
            }
        ]
    }
}

Get DLR Summary Report

POST

Get DLR Summary Report.

POSThttps://sms.beepafrica.com/SMSApi/reports/smsSummary

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
fromdateFrom Date.Enter from date. Date format should be YYYY-MM-DD
todateTo Date.Enter to date. Date format should be YYYY-MM-DD
groupbysummary | senderid | dateGroup by values to get SMS DLR Summary.
Optional Parameters
senderidSender Name ValueSearch by sender name value.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reports/smsSummary" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "groupby=summary" \
  --data-urlencode "fromdate=2026-10-01" \
  --data-urlencode "todate=2019-07-14" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reports/smsSummary",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&groupby=summary&fromdate=2026-10-01&todate=2019-07-14&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reports/smsSummary"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "groupby": "summary",
    "fromdate": "2026-10-01",
    "todate": "2019-07-14",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "groupby": "summary",
  "fromdate": "2026-10-01",
  "todate": "2019-07-14",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reports/smsSummary", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "report",
    "action": "smsSummary",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 1,
    "report_smsSummaryList": [
      {
        "report_summary": {
          "summary": "Summary",
          "total": "9",
          "success": "4",
          "pending": 0,
          "failed": "5",
          "notSent": "0",
          "others": "0",
          "refund": "0"
        }
      }
    ]
  }
}

Get Delivery Report

POST

Get the delivery report for messages sent today, for your account.

POSThttps://sms.beepafrica.com/SMSApi/reports/day

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reports/day" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reports/day",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reports/day"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reports/day", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Response

Returns your delivery records for the day in the format set by output. Use Check MIS by Transaction ID for a single message.

Read User Credit History

POST

Read User Credit History

POSThttps://sms.beepafrica.com/SMSApi/reseller/readcredithistory

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
userloginnameUser Logn name.Enter user login name to fetch details of credit history.
fromdateFrom Date.Enter from date. Date format should be YYYY-MM-DD
todateTo Date.Enter to date. Date format should be YYYY-MM-DD
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reseller/readcredithistory" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "userloginname=YourUserLoginname" \
  --data-urlencode "=fromdate=2026-10-01" \
  --data-urlencode "todate=2026-10-31" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reseller/readcredithistory",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&userloginname=YourUserLoginname&=fromdate=2026-10-01&todate=2026-10-31&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reseller/readcredithistory"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "userloginname": "YourUserLoginname",
    "": "fromdate=2026-10-01",
    "todate": "2026-10-31",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "userloginname": "YourUserLoginname",
  "": "fromdate=2026-10-01",
  "todate": "2026-10-31",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reseller/readcredithistory", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "user",
    "action": "readcredithistory",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 1,
    "historyList": [
      {
        "history": {
          "uuId": "3555847512901782",
          "type": "CREDIT",
          "method": "purchase",
          "balance": "3800",
          "amount": "100",
          "comments": "testing",
          "timestamp": "1570868345603"
        }
      }
    ]
  }
}

Add User Credit

POST

Add User Credit

POSThttps://sms.beepafrica.com/SMSApi/reseller/addcredit

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
userloginnameUser Login name.Enter user login name to add credits.
productProduct name.Enter from product name. Options: SMS | Voice | Miss Call.
transactiontypeTransaction Type.Enter the transaction type. Options: purchase | adjustments.
creditsCredit.Enter the number of credits to add. Should be integer.
commentComment.Enter the required comments.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reseller/addcredit" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "userloginname=YourUserLoginname" \
  --data-urlencode "=product=SMS" \
  --data-urlencode "transactiontype=purchase" \
  --data-urlencode "credits=10000" \
  --data-urlencode "comment=Addning new credit" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reseller/addcredit",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&userloginname=YourUserLoginname&=product=SMS&transactiontype=purchase&credits=10000&comment=Addning new credit&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reseller/addcredit"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "userloginname": "YourUserLoginname",
    "": "product=SMS",
    "transactiontype": "purchase",
    "credits": "10000",
    "comment": "Addning new credit",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "userloginname": "YourUserLoginname",
  "": "product=SMS",
  "transactiontype": "purchase",
  "credits": "10000",
  "comment": "Addning new credit",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reseller/addcredit", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "user",
    "action": "addcredit",
    "status": "success",
    "msg": "Credit transferred successfully.",
    "code": "200"
  }
}

Remove User Credit

POST

Remove User Credit

POSThttps://sms.beepafrica.com/SMSApi/reseller/removecredit

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
userloginnameUser Login name.Enter user login name to remove credits.
productProduct name.Enter from product name. Options: SMS | Voice | Miss Call.
transactiontypeTransaction Type.Enter the transaction type. Options: purchase | adjustments.
creditsCredit.Enter the number of credits to remove. Should be integer.
commentComment.Enter the required comments.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reseller/removecredit" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "userloginname=YourUserLoginname" \
  --data-urlencode "product=SMS" \
  --data-urlencode "transactiontype=adjustment" \
  --data-urlencode "credits=10000" \
  --data-urlencode "comment=removing credits" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reseller/removecredit",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&userloginname=YourUserLoginname&product=SMS&transactiontype=adjustment&credits=10000&comment=removing credits&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reseller/removecredit"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "userloginname": "YourUserLoginname",
    "product": "SMS",
    "transactiontype": "adjustment",
    "credits": "10000",
    "comment": "removing credits",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "userloginname": "YourUserLoginname",
  "product": "SMS",
  "transactiontype": "adjustment",
  "credits": "10000",
  "comment": "removing credits",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reseller/removecredit", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "user",
    "action": "removecredit",
    "status": "success",
    "msg": "Credit removed successfully.",
    "code": "200"
  }
}

Create New User

POST

Create New User

POSThttps://sms.beepafrica.com/SMSApi/reseller/createuser

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
userloginnameUser Login name.Enter user login name to create new user.
usertypeUser TypeAdd required user type. Options: customer | reseller.
emailUser E-mailEnter the user's valid email.
mobilenoMobile numberEnter the user's mobile number. Should be integer.
fullnameFull NameEnter the user's full name. Should be string.
addressAddressEnter the user's address. Should be string.
cityCityEnter the user's city. Should be string.
expirydateExpiry Date.Enter the user's expiry date. Date format should be YYYY-MM-DD.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reseller/createuser" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "userloginname=YourUserLoginname" \
  --data-urlencode "usertype=customer" \
  --data-urlencode "[email protected]" \
  --data-urlencode "mobileno=919999xxxxxx" \
  --data-urlencode "fullname=Full Name" \
  --data-urlencode "address=full address" \
  --data-urlencode "city=city name" \
  --data-urlencode "region=state name" \
  --data-urlencode "region=country name" \
  --data-urlencode "expirydate=2019-10-01" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reseller/createuser",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&userloginname=YourUserLoginname&usertype=customer&[email protected]&mobileno=919999xxxxxx&fullname=Full Name&address=full address&city=city name&region=state name&region=country name&expirydate=2019-10-01&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reseller/createuser"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "userloginname": "YourUserLoginname",
    "usertype": "customer",
    "email": "[email protected]",
    "mobileno": "919999xxxxxx",
    "fullname": "Full Name",
    "address": "full address",
    "city": "city name",
    "region": "country name",
    "expirydate": "2019-10-01",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "userloginname": "YourUserLoginname",
  "usertype": "customer",
  "email": "[email protected]",
  "mobileno": "919999xxxxxx",
  "fullname": "Full Name",
  "address": "full address",
  "city": "city name",
  "region": "country name",
  "expirydate": "2019-10-01",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reseller/createuser", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "user",
    "action": "createuser",
    "status": "success",
    "msg": "User created successfully.",
    "code": "200"
  }
}

Update User

POST

Update User

POSThttps://sms.beepafrica.com/SMSApi/reseller/updateuser

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
userloginnameUser Login name.Enter user login name to create new user.
usertypeUser TypeAdd required user type. Options: customer | reseller.
emailUser E-mailEnter the user's valid email.
mobilenoMobile numberEnter the user's mobile number. Should be integer.
fullnameFull NameEnter the user's full name. Should be string.
addressAddressEnter the user's address. Should be string.
cityCityEnter the user's city. Should be string.
expirydateExpiry Date.Enter the user's expiry date. Date format should be YYYY-MM-DD.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reseller/updateuser" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "userloginname=YourUserLoginname" \
  --data-urlencode "usertype=customer" \
  --data-urlencode "[email protected]" \
  --data-urlencode "mobileno=919999xxxxxx" \
  --data-urlencode "fullname=Full Name" \
  --data-urlencode "address=full address" \
  --data-urlencode "city=city name" \
  --data-urlencode "region=state name" \
  --data-urlencode "region=country name" \
  --data-urlencode "expirydate=2019-10-01" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reseller/updateuser",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&userloginname=YourUserLoginname&usertype=customer&[email protected]&mobileno=919999xxxxxx&fullname=Full Name&address=full address&city=city name&region=state name&region=country name&expirydate=2019-10-01&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reseller/updateuser"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "userloginname": "YourUserLoginname",
    "usertype": "customer",
    "email": "[email protected]",
    "mobileno": "919999xxxxxx",
    "fullname": "Full Name",
    "address": "full address",
    "city": "city name",
    "region": "country name",
    "expirydate": "2019-10-01",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "userloginname": "YourUserLoginname",
  "usertype": "customer",
  "email": "[email protected]",
  "mobileno": "919999xxxxxx",
  "fullname": "Full Name",
  "address": "full address",
  "city": "city name",
  "region": "country name",
  "expirydate": "2019-10-01",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reseller/updateuser", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "user",
    "action": "updateuser",
    "status": "success",
    "msg": "User update successfully.",
    "code": "200"
  }
}

Generate User Password

POST

Generate a new password for one of your users. The new password is sent to the user.

POSThttps://sms.beepafrica.com/SMSApi/reseller/generateuserpassword

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
userloginnameUser Login name.Enter user login name to send new password to user.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reseller/generateuserpassword" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "userloginname=YourUserLoginname" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reseller/generateuserpassword",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&userloginname=YourUserLoginname&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reseller/generateuserpassword"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "userloginname": "YourUserLoginname",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "userloginname": "YourUserLoginname",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reseller/generateuserpassword", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "user",
    "action": "generateuserpassword",
    "status": "success",
    "msg": "Password changed successfully.",
    "code": "200"
  }
}

Reset User Password

POST

Reset User Password

POSThttps://sms.beepafrica.com/SMSApi/reseller/resetuserpassword

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
userloginnameUser Login name.Enter user login name to send new password to user.
newPasswordUser New Password.Enter user password.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reseller/resetuserpassword" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "userloginname=YourUserLoginname" \
  --data-urlencode "newPassword=newpass" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reseller/resetuserpassword",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&userloginname=YourUserLoginname&newPassword=newpass&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reseller/resetuserpassword"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "userloginname": "YourUserLoginname",
    "newPassword": "newpass",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "userloginname": "YourUserLoginname",
  "newPassword": "newpass",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reseller/resetuserpassword", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "user",
    "action": "resetuserpassword",
    "status": "success",
    "msg": "Password changed successfully.",
    "code": "200"
  }
}

Read User Profile

POST

Read User Profile

POSThttps://sms.beepafrica.com/SMSApi/reseller/readuser

Parameters

ParameterValueDescription
Authentication
apiKey header
or userId + password
Your API keyEvery request must be authenticated. See Authentication.
Required Parameters
userloginnameUser Login name.Enter user login name to fetch user profile.
outputplain|json|xmlValue for response format.

System default is plain. If you need responses in json or xml then you have to give value as json or xml.

Sample request

curl -X POST "https://sms.beepafrica.com/SMSApi/reseller/readuser" \
  -H "apikey: YOUR_API_KEY" \
  --data-urlencode "userloginname=YourUserLoginname" \
  --data-urlencode "output=json"
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://sms.beepafrica.com/SMSApi/reseller/readuser",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&userloginname=YourUserLoginname&output=json",
  CURLOPT_HTTPHEADER => array(
    "cache-control: no-cache",
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
import requests

url = "https://sms.beepafrica.com/SMSApi/reseller/readuser"
headers = {"apikey": "YOUR_API_KEY"}
data = {
    "userloginname": "YourUserLoginname",
    "output": "json"
}

resp = requests.post(url, headers=headers, data=data)
print(resp.json())
const body = new URLSearchParams({
  "userloginname": "YourUserLoginname",
  "output": "json"
});

const resp = await fetch("https://sms.beepafrica.com/SMSApi/reseller/readuser", {
  method: "POST",
  headers: { apikey: "YOUR_API_KEY" },
  body,
});
console.log(await resp.json());

Sample response

{
  "response": {
    "api": "user",
    "action": "readuser",
    "status": "success",
    "msg": "success",
    "code": "200",
    "count": 1,
    "userList": [
      {
        "user": {
          "userId": "6",
          "userName": "myuser",
          "userType": "Reseller",
          "emailId": "[email protected]",
          "mobileNo": "254712345678",
          "domainName": "smssssssssssss.com",
          "expDate": "1709231400000",
          "regDate": "1546740446000",
          "userStatus": "Active",
          "enableCMS": "Inactive",
          "fullName": "",
          "postalAddress": "",
          "postalCity": "Nairobi",
          "postalCountry": "Kenya",
          "postalRegion": "Nairobi County",
          "smppEnabled": "1",
          "accountType": "TRANSACTIONAL",
          "smsBalance": "3900"
        }
      }
    ]
  }
}

Need help integrating?

Our Nairobi team helps developers 24/7 by phone, WhatsApp and email.

Call +254 725 333 888 WhatsApp us

Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.