curl --request POST \
--url https://api.kairosafrika.com/v1/external/sms/quick \
--header 'x-api-key: YOUR_API_KEY' \
--header 'x-api-secret: YOUR_API_SECRET' \
--header 'x-api-version: 2025-08-01' \
--header 'Content-Type: application/json' \
--data '{
"to": "233559406612",
"from": "Kairos",
"type": "Quick",
"message": "Hello from Kairos Afrika!",
"isGlobal": false
}'
const response = await fetch('https://api.kairosafrika.com/v1/external/sms/quick', {
method: 'POST',
headers: {
'x-api-key': 'YOUR_API_KEY',
'x-api-secret': 'YOUR_API_SECRET',
'x-api-version': '2025-08-01',
'Content-Type': 'application/json'
},
body: JSON.stringify({
to: '233559406612',
from: 'Kairos',
type: 'Quick',
message: 'Hello from Kairos Afrika!',
isGlobal: false
})
});
const result = await response.json();
console.log(result);
import requests
response = requests.post(
'https://api.kairosafrika.com/v1/external/sms/quick',
headers={
'x-api-key': 'YOUR_API_KEY',
'x-api-secret': 'YOUR_API_SECRET',
'x-api-version': '2025-08-01',
'Content-Type': 'application/json'
},
json={
'to': '233559406612',
'from': 'Kairos',
'type': 'Quick',
'message': 'Hello from Kairos Afrika!',
'isGlobal': False
}
)
result = response.json()
print(result)
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.kairosafrika.com/v1/external/sms/quick',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => json_encode(array(
'to' => '233559406612',
'from' => 'Kairos',
'type' => 'Quick',
'message' => 'Hello from Kairos Afrika!',
'isGlobal' => false
)),
CURLOPT_HTTPHEADER => array(
'x-api-key: YOUR_API_KEY',
'x-api-secret: YOUR_API_SECRET',
'x-api-version: 2025-08-01',
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>
{
"statusCode": 201,
"statusMessage": "Sms successfully sent.",
"transactionId": "b0cdebad-e925-4437-b852-5aab112781f0",
"sequenceNo": "01K6MN2T13XNK40X17F5FH45DV",
"data": {
"totalBatches": 1,
"batches": [
{
"jobId": "b7d80ca9-4839-407c-b696-74c4ab2c570e",
"messages": [
{
"to": "233559400612",
"from": "BLUEFS",
"message": "This is a testing message from the production server apis",
"type": "Quick",
"sequenceNo": "01K6MN2T13XNK40X17F5FH45DV",
"transactionId": "b0cdebad-e925-4437-b852-5aab112781f0"
}
]
}
],
"senderAddress": "BLUEFS"
},
"timestamp": "2025-10-03T09:05:08.745Z"
}{
"error": "INVALID_PHONE_NUMBER",
"message": "The provided phone number is not valid",
"details": {}
}{
"error": "INVALID_PHONE_NUMBER",
"message": "The provided phone number is not valid",
"details": {}
}{
"error": "INVALID_PHONE_NUMBER",
"message": "The provided phone number is not valid",
"details": {}
}Endpoints
Send Quick SMS
Send a quick SMS message to a recipient
POST
/
v1
/
external
/
sms
/
quick
curl --request POST \
--url https://api.kairosafrika.com/v1/external/sms/quick \
--header 'x-api-key: YOUR_API_KEY' \
--header 'x-api-secret: YOUR_API_SECRET' \
--header 'x-api-version: 2025-08-01' \
--header 'Content-Type: application/json' \
--data '{
"to": "233559406612",
"from": "Kairos",
"type": "Quick",
"message": "Hello from Kairos Afrika!",
"isGlobal": false
}'
const response = await fetch('https://api.kairosafrika.com/v1/external/sms/quick', {
method: 'POST',
headers: {
'x-api-key': 'YOUR_API_KEY',
'x-api-secret': 'YOUR_API_SECRET',
'x-api-version': '2025-08-01',
'Content-Type': 'application/json'
},
body: JSON.stringify({
to: '233559406612',
from: 'Kairos',
type: 'Quick',
message: 'Hello from Kairos Afrika!',
isGlobal: false
})
});
const result = await response.json();
console.log(result);
import requests
response = requests.post(
'https://api.kairosafrika.com/v1/external/sms/quick',
headers={
'x-api-key': 'YOUR_API_KEY',
'x-api-secret': 'YOUR_API_SECRET',
'x-api-version': '2025-08-01',
'Content-Type': 'application/json'
},
json={
'to': '233559406612',
'from': 'Kairos',
'type': 'Quick',
'message': 'Hello from Kairos Afrika!',
'isGlobal': False
}
)
result = response.json()
print(result)
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.kairosafrika.com/v1/external/sms/quick',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => json_encode(array(
'to' => '233559406612',
'from' => 'Kairos',
'type' => 'Quick',
'message' => 'Hello from Kairos Afrika!',
'isGlobal' => false
)),
CURLOPT_HTTPHEADER => array(
'x-api-key: YOUR_API_KEY',
'x-api-secret: YOUR_API_SECRET',
'x-api-version: 2025-08-01',
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>
{
"statusCode": 201,
"statusMessage": "Sms successfully sent.",
"transactionId": "b0cdebad-e925-4437-b852-5aab112781f0",
"sequenceNo": "01K6MN2T13XNK40X17F5FH45DV",
"data": {
"totalBatches": 1,
"batches": [
{
"jobId": "b7d80ca9-4839-407c-b696-74c4ab2c570e",
"messages": [
{
"to": "233559400612",
"from": "BLUEFS",
"message": "This is a testing message from the production server apis",
"type": "Quick",
"sequenceNo": "01K6MN2T13XNK40X17F5FH45DV",
"transactionId": "b0cdebad-e925-4437-b852-5aab112781f0"
}
]
}
],
"senderAddress": "BLUEFS"
},
"timestamp": "2025-10-03T09:05:08.745Z"
}{
"error": "INVALID_PHONE_NUMBER",
"message": "The provided phone number is not valid",
"details": {}
}{
"error": "INVALID_PHONE_NUMBER",
"message": "The provided phone number is not valid",
"details": {}
}{
"error": "INVALID_PHONE_NUMBER",
"message": "The provided phone number is not valid",
"details": {}
}Send Quick SMS
This endpoint allows you to send a quick SMS message to a single recipient. Endpoint:POST /v1/external/sms/quick
curl --request POST \
--url https://api.kairosafrika.com/v1/external/sms/quick \
--header 'x-api-key: YOUR_API_KEY' \
--header 'x-api-secret: YOUR_API_SECRET' \
--header 'x-api-version: 2025-08-01' \
--header 'Content-Type: application/json' \
--data '{
"to": "233559406612",
"from": "Kairos",
"type": "Quick",
"message": "Hello from Kairos Afrika!",
"isGlobal": false
}'
const response = await fetch('https://api.kairosafrika.com/v1/external/sms/quick', {
method: 'POST',
headers: {
'x-api-key': 'YOUR_API_KEY',
'x-api-secret': 'YOUR_API_SECRET',
'x-api-version': '2025-08-01',
'Content-Type': 'application/json'
},
body: JSON.stringify({
to: '233559406612',
from: 'Kairos',
type: 'Quick',
message: 'Hello from Kairos Afrika!',
isGlobal: false
})
});
const result = await response.json();
console.log(result);
import requests
response = requests.post(
'https://api.kairosafrika.com/v1/external/sms/quick',
headers={
'x-api-key': 'YOUR_API_KEY',
'x-api-secret': 'YOUR_API_SECRET',
'x-api-version': '2025-08-01',
'Content-Type': 'application/json'
},
json={
'to': '233559406612',
'from': 'Kairos',
'type': 'Quick',
'message': 'Hello from Kairos Afrika!',
'isGlobal': False
}
)
result = response.json()
print(result)
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.kairosafrika.com/v1/external/sms/quick',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => json_encode(array(
'to' => '233559406612',
'from' => 'Kairos',
'type' => 'Quick',
'message' => 'Hello from Kairos Afrika!',
'isGlobal' => false
)),
CURLOPT_HTTPHEADER => array(
'x-api-key: YOUR_API_KEY',
'x-api-secret: YOUR_API_SECRET',
'x-api-version: 2025-08-01',
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>
Request Body
- to (string, required): Recipient phone number (without + prefix).
- from (string, required): Sender ID or name.
- type (string, required): SMS type (use “Quick” for quick SMS).
- message (string, required): The SMS message content.
- isGlobal (boolean, required): Whether to use global routing (true/false).
Responses
- 200 OK: SMS sent successfully.
- 400 Bad Request: Invalid request data.
Authorizations
API Key for authentication
API Secret for authentication
Headers
API version header (required for full JSON response)
Available options:
2025-08-01 Body
application/json
Recipient phone number (without + prefix)
Example:
"233559406612"
Sender ID or name
Example:
"Kairos"
SMS type (use 'Quick' for quick SMS)
Example:
"Quick"
The SMS message content
Maximum string length:
1600Example:
"Hello from Kairos Afrika!"
Whether to use global routing
Example:
false
Response
SMS sent successfully
HTTP status code
Example:
201
Status message
Example:
"Sms successfully sent."
Unique transaction identifier
Example:
"b0cdebad-e925-4437-b852-5aab112781f0"
Sequence number
Example:
"01K6MN2T13XNK40X17F5FH45DV"
Show child attributes
Show child attributes
ISO 8601 timestamp
Example:
"2025-10-03T09:05:08.745Z"