L'API pour les entreprises modernes.
Intégrez proSMS dans votre infrastructure en quelques minutes. Nos APIs RESTful vous permettent d'automatiser vos communications SMS de manière évolutive et sécurisée.
Prêt pour le déploiement ?
Toutes nos APIs utilisent des URL de base sécurisées. Assurez-vous d'utiliser vos clés API générées dans votre espace client.
Authentification
L'accès à l'API est sécurisé par un couple d'identifiants Client ID et Client Secret, à générer depuis la page Accès API de votre espace client. Vous devez inclure ces identifiants dans les en-têtes HTTP de chaque requête.
X-Client-ID: votre_client_id
X-Client-Secret: votre_client_secret
Content-Type: application/json
Ne partagez jamais votre Client Secret dans des environnements côté client (navigateurs, etc.).
Envoi de SMS
Envoyez des messages SMS à travers le monde vers plus de 190 pays.
| Paramètre | Type | Description |
|---|---|---|
recipients Requis |
array |
Liste des numéros au format international (ex: +225...), au moins un numéro |
message Requis |
string |
Le contenu du message (max 1000 caractères — 160 car. par segment en encodage standard, 70 en Unicode) |
sender_name Optionnel |
string |
Votre Sender ID approuvé (max 11 caractères). Une valeur non approuvée est rejetée (403) |
curl -X POST https://prosms.ci/api/v1/sms/send \
-H "X-Client-ID: v_id" -H "X-Client-Secret: v_secret" \
-H "Content-Type: application/json" \
-d '{
"recipients": ["+2250701020304"],
"message": "Bonjour de l'API proSMS!",
"sender_name": "PROSMS"
}'
{
"success": true,
"data": {
"campaign_id": 128,
"recipients_count": 1,
"sent": 1,
"failed": 0,
"credits_used": 1,
"credits_remaining": 499
},
"results": [ ... ]
}
Chaque envoi crée une campagne consultable via l'API de statut et dans votre espace client.
SMS OTP (Vérification)
Sécurisez vos transactions et authentifications par des codes à usage unique envoyés par SMS. Chaque envoi d'OTP consomme 1 crédit SMS.
Envoyer un code
| Paramètre | Type | Description |
|---|---|---|
phone Requis |
string |
Numéro ivoirien (0XXXXXXXXX ou +225XXXXXXXXXX) |
length Optionnel |
int |
Nombre de chiffres du code (4 à 8, défaut : 6) |
validity_minutes Optionnel |
int |
Durée de validité du code (1 à 30 minutes, défaut : 5) |
sender_id Optionnel |
string |
Nom d'expéditeur (max 11 caractères, défaut : ProSMS) |
message_template Optionnel |
string |
Modèle du message (max 500 car.) avec les variables {code} et {validity}. Défaut : « Votre code de vérification est : {code}. Valide pendant {validity} minutes. » |
{
"success": true,
"message": "OTP envoyé avec succès",
"data": {
"otp_id": 42,
"phone": "+2250701020304",
"expires_at": "2026-07-03T10:15:00+00:00",
"sms_sent": true
}
}
Limite anti-abus : 3 OTP maximum par numéro et par heure (erreur 429 au-delà).
Vérifier un code
| Paramètre | Type | Description |
|---|---|---|
phone Requis |
string |
Le numéro qui a reçu le code |
code Requis |
string |
Le code saisi par l'utilisateur (4 à 8 chiffres) |
{
"success": true,
"message": "Code OTP valide",
"data": { "verified": true, "otp_id": 42, "phone": "+2250701020304" }
}
{
"success": false,
"message": "Code OTP invalide",
"data": { "verified": false, "remaining_attempts": 2 }
}
Un 404 est retourné si aucun OTP valide n'existe pour ce numéro (code expiré ou jamais envoyé). Le nombre de tentatives est limité ; au-delà, générez un nouveau code.
Statut de campagne
Consultez l'état de vos envois : chaque appel à /sms/send crée une campagne dont vous pouvez suivre les compteurs.
Retourne vos 100 dernières campagnes (id, nom, compteurs d'envoi et de livraison, taux de succès, statut).
{
"success": true,
"data": {
"id": 128,
"name": "API - 03/07/2026",
"type": "sms",
"message": "Bonjour de l'API proSMS!",
"sender": "PROSMS",
"recipients_count": 1,
"sent_count": 1,
"delivered_count": 1,
"failed_count": 0,
"success_rate": 100,
"status": "completed",
"created_at": "2026-07-03T10:12:00+00:00",
"completed_at": "2026-07-03T10:12:05+00:00"
}
}
Compte & solde
Récupérez les informations de votre compte et votre solde de crédits SMS — pratique pour surveiller votre consommation et déclencher des alertes de recharge.
{
"success": true,
"data": {
"name": "Jean Kouassi",
"email": "jean@entreprise.ci",
"company": "Mon Entreprise",
"sms_credits": 499
}
}
Codes d'erreurs
L'API utilise les codes de réponse HTTP standard pour indiquer le succès ou l'échec d'une requête.
| Code | Label | Description |
|---|---|---|
| 200 | OK | La requête a réussi. |
| 401 | Unauthorized | Client ID / Client Secret invalides, absents, ou identifiant désactivé. |
| 402 | Payment Required | Crédits SMS insuffisants (la réponse indique required et available). |
| 403 | Forbidden | Sender ID non approuvé pour votre compte. |
| 404 | Not Found | Ressource introuvable (campagne inexistante, OTP expiré ou absent). |
| 422 | Validation | Données transmises incorrectes (le détail est dans errors). |
| 429 | Too Many Requests | Limite atteinte (ex : 3 OTP par numéro et par heure). |
Besoin d'aide supplémentaire ?
Notre équipe technique est disponible pour vous accompagner dans votre intégration.