SMS API
Safravo SMS API documentation for sending transactional and bulk SMS, checking delivery reports, and monitoring account balance.
Safravo SMS gives your applications a dependable API for transactional messages, alerts, receipts, OTPs, and bulk notifications.
Interactive API reference
Explore the live SMS endpoints and request schemas.
Bulk SMS guide
Send up to 20 personalized messages in one request.
Base URL
https://api.safravo.co.keAll SMS API requests use HTTPS. The public SMS endpoints are:
| Capability | Endpoint |
|---|---|
| Send one message | POST /sms/v1/messages |
| Send up to 20 messages | POST /sms/v1/messages/bulk |
| Get a delivery report | POST /sms/v1/messages/delivery-report |
| Check account balance | POST /sms/v1/account/balance |
Quick start
Confirm your messaging credentials
You need an SMS API key, partner ID, and an approved sender ID. Keep these values on your server and never expose them in browser or mobile application code.
Send a message
curl -X POST 'https://api.safravo.co.ke/sms/v1/messages' \
-H 'Content-Type: application/json' \
-d '{
"apikey": "your-api-key",
"partnerID": "your-partner-id",
"mobile": "254712345678",
"message": "Your receipt is ready.",
"shortcode": "YOUR-SENDER-ID"
}'Check the result
Safravo returns a message ID after the provider accepts the message. Use that ID with the delivery report endpoint when you need delivery status.
What is covered
- Single and small-batch SMS delivery
- Scheduled messages with
timeToSend - Delivery report lookup
- Account balance monitoring
- Structured provider errors and HTTP status codes
The SMS API is designed for server-to-server integrations. Do not call it directly from a public frontend, because provider credentials would be exposed.