SMS API
Add SMS sending to your application
A JSON REST API, an API key and a few lines of code. Single or bulk sending, delivery tracking and signed webhooks, to MTN and Orange.
What the API includes
REST and JSON
Bearer key authentication. Code examples provided in cURL, PHP, Python, Node.js, Java and C#.
Bulk sending
Up to 1,000 recipients per call.
Signed webhooks
Receive events in real time, signed with HMAC-SHA256 so you can verify where they come from.
OpenAPI 3.1 specification
Import it into Postman or Insomnia, or generate a client in your language.
Delivery tracking
Every message carries a delivery state and, on failure, a stable error code you can test in your code.
A quota per key
10,000 SMS per day by default, adjustable up to 50,000 from the Developer Hub (above that, on request).
Your first SMS in 4 steps
- 1
Create your account and API key
Sign-up takes 2 minutes. The API key is generated in two clicks from the Developer Hub.
- 2
Declare a Sender ID
The from parameter must be a sender identifier declared on your account. Approval by the operators can take up to 14 business days, as an indication.
- 3
Top up your balance
SMS are prepaid. An insufficient balance returns error 402.
- 4
Send your first SMS
Call POST /api/v1/messages. The 201 response contains the message_id, to keep for tracking delivery.
curl -X POST "https://v2.smspro.cm/api/v1/messages" \
-H "Authorization: Bearer smspro_votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"to": "+237699000001",
"message": "Bonjour depuis SMSPro",
"from": "MONAPP"
}'Response (201): the message is accepted for sending, not yet delivered.
{
"success": true,
"message_id": "8f2c1d4e-…",
"to": "+237699000001",
"status": "pending",
"segments": 1
}Main endpoints
Base URL: https://v2.smspro.cm. Every request carries the Authorization: Bearer <API key> header.
| POST | /api/v1/messages | Send an SMS (OTP included) |
| POST | /api/v1/messages/bulk | Send to several recipients (1,000 maximum) |
| GET | /api/v1/messages | List your messages |
| GET | /api/v1/messages/:id | Track the delivery of a message |
| GET | /api/v1/sender-ids | List your Sender IDs and their status |
| GET | /api/v1/balance | Check your balance |
Our pricing
Volume-based pricing
The higher the volume, the lower the unit price.
Minimum purchase: 500 SMS
- Transactional SMS (OTP) & marketing
- REST API access
- Mobile Money or bank card payment
- Instant top-up
- No commitment
- Transactional SMS (OTP) & marketing
- REST API access
- Mobile Money or bank card payment
- Instant top-up
- No commitment
- Transactional SMS (OTP) & marketing
- REST API access
- Mobile Money or bank card payment
- Instant top-up
- No commitment
- Transactional SMS (OTP) & marketing
- REST API access
- Mobile Money or bank card payment
- Instant top-up
- No commitment
- Transactional SMS (OTP) & marketing
- REST API access
- Mobile Money or bank card payment
- Instant top-up
- No commitment
- Priority support & dedicated SMS route
- Transactional SMS (OTP) & marketing
- REST API access
- Mobile Money or bank card payment
- Instant top-up
- No commitment
Prix TTC — droit d'accise et TVA compris
Minimum order: 500 SMS.
Questions about the SMS API
How do I get an API key?
Create an account, then generate the key from the Developer Hub. The documentation is public and can be read without an account.
Which numbers are accepted?
Cameroonian MTN and Orange mobile numbers. Any other number is rejected (422 error, invalid_recipient), with nothing sent or billed.
Is there a sending limit?
10,000 SMS per day per API key by default, adjustable up to 50,000. Beyond the quota, the API answers 429.
My software cannot send a POST, what can I do?
A GET entry point exists for SMS gateway connectors (/api/v1/messages/send). POST remains recommended, because with GET the number and the message appear in the URL.
How much does the API cost?
The API is available from the very first pricing tier. SMS are billed according to the pricing grid on this page.
Take action
Ready to transform
your communication?
140+ registered users already. Join them — no commitment, from your very first SMS.
