API Zomloa SMS
Intégrez l’envoi de SMS et le suivi de solde en quelques minutes. Endpoints clairs, exemples prêts à copier, réponses JSON prévisibles.
REST
API v1
<15s
OTP typique
HMAC
Webhooks signés
24/7
Support
+1 000
Développeurs & entreprises
I. Premiers pas
De zéro à votre premier SMS
Trois étapes pour brancher Zomloa SMS à votre application.
Créez un compte
Inscrivez-vous sur sms.zomloa.app/signup — SMS offerts pour tester l’API.
Générez votre clé API
Dans le panel, section API → Générer une clé, puis testez avec vos crédits offerts.
Pack → Sender ID → Envoi
Achetez un forfait, utilisez le Sender ID par défaut « FlowSMS » ou demandez le vôtre (validation admin), puis envoyez via l’API.
https://api.sms.zomloa.appII. Endpoints & ressources
Ressources HTTP
Toutes les opérations acceptent POST ou GET. Préférez POST pour les données sensibles.
II.1 Opération d’envoi de SMS
https://api.sms.zomloa.app/api/v1/gateway/sms/sendII.1.1 Requête
| Paramètre | Type | Description |
|---|---|---|
X-Api-KeyobligatoireClé API (zs_live_…). Alternative : query/form api_key ou Authorization: ApiKey … | header | Clé API (zs_live_…). Alternative : query/form api_key ou Authorization: ApiKey … |
senderidIdentifiant expéditeur (max. 11 car.). Défaut : « FlowSMS ». Les SID personnalisés doivent être approuvés. Casse conservée. | string | Identifiant expéditeur (max. 11 car.). Défaut : « FlowSMS ». Les SID personnalisés doivent être approuvés. Casse conservée. |
smsobligatoireContenu du message (facturé par segment de 160 caractères). | string | Contenu du message (facturé par segment de 160 caractères). |
mobilesobligatoireNuméros séparés par des virgules. Préfixe "237" facultatif. Ex. : 237XXXXXXXXX,XXXXXXXXX | string | Numéros séparés par des virgules. Préfixe "237" facultatif. Ex. : 237XXXXXXXXX,XXXXXXXXX |
curl -X POST "https://api.sms.zomloa.app/api/v1/gateway/sms/send" \
-H "Content-Type: application/json" \
-H "X-Api-Key: zs_live_xxxxxxxx" \
-d '{
"senderid": "FlowSMS",
"sms": "Votre code : 482913",
"mobiles": "237670000000,670000001"
}'II.1.2 Réponse
| Paramètre | Type | Description |
|---|---|---|
responsecode"200" si succès. | string | "200" si succès. |
responsedescriptionDescription du traitement. | string | Description du traitement. |
organizationIdUUID de l’organisation. | string | UUID de l’organisation. |
senderidSender ID effectivement utilisé. | string | Sender ID effectivement utilisé. |
smsContenu envoyé. | string | Contenu envoyé. |
mobilesDestinataires. | string | Destinataires. |
balanceSolde SMS restant. | integer | Solde SMS restant. |
{
"responsecode": "200",
"responsedescription": "Accepted",
"organizationId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"senderid": "FlowSMS",
"sms": "Votre code : 482913",
"mobiles": "237670000000,670000001",
"balance": 1017
}II.2 Vérification du solde de SMS
https://api.sms.zomloa.app/api/v1/gateway/sms/creditII.2.1 Requête
| Paramètre | Type | Description |
|---|---|---|
X-Api-KeyobligatoireClé API générée depuis votre compte Zomloa SMS. | header | Clé API générée depuis votre compte Zomloa SMS. |
curl -X POST "https://api.sms.zomloa.app/api/v1/gateway/sms/credit" \
-H "X-Api-Key: zs_live_xxxxxxxx"II.2.2 Réponse
| Paramètre | Type | Description |
|---|---|---|
responsecodeobligatoire"200" si succès. | string | "200" si succès. |
responsemessageobligatoireDescription de la requête. | string | Description de la requête. |
organizationIdobligatoireUUID de l’organisation. | string | UUID de l’organisation. |
creditobligatoireSolde SMS disponible. | integer | Solde SMS disponible. |
packnameobligatoireDernier pack crédité, ou none. | string | Dernier pack crédité, ou none. |
{
"responsecode": "200",
"responsemessage": "Success",
"organizationId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"credit": 1017,
"packname": "Pack 3 000"
}III. Gestion des erreurs
Codes & messages
En cas d’échec, la réponse JSON contient code, message, path et timestamp.
Codes d’erreur
ERR_INVALID_API_KEYClé API manquante ou invalide (HTTP 401)ERR_VALIDATION_FAILEDParamètres invalides (HTTP 400)ERR_INVALID_SENDER_IDFormat SID invalide (max 11, alphanumérique)ERR_SENDER_ID_NOT_APPROVEDSID non approuvé pour cette organisationERR_INSUFFICIENT_SMS_BALANCESolde SMS insuffisantERR_FORBIDDENAccès refuséERR_INTERNAL_SERVER_ERRORErreur serveur inattendue (HTTP 500)
Messages d’erreur fréquents
- API key is required
- API key is invalid
- Sender ID must be at most 11 characters
- Sender ID is not approved for this organization
- Insufficient SMS balance
- Validation failed
{
"code": "ERR_INVALID_API_KEY",
"message": "API key is invalid",
"path": "/api/v1/gateway/sms/send",
"timestamp": "2026-07-25T18:00:00.000Z"
}Prêt à intégrer Zomloa SMS ?
Créez un compte, générez votre clé et envoyez votre premier SMS en moins de 5 minutes.
Docs live · sms.zomloa.app
Commencez avec des SMS gratuits
SMS offerts pour tester l’API, packs volume et support — tout pour lancer sans friction.
Une seule API. Tous les opérateurs. Des SMS qui arrivent.