Gestion des OTP
Les OTP (One-Time Password) sont des codes de vérification à usage unique envoyés par SMS. Notre API REST vous permet d’implémenter facilement une authentification à deux facteurs (2FA) ou une vérification de numéro de téléphone.
Fonctionnalités
- Envoi de codes OTP
- Vérification de codes
- Personnalisation des messages
- Gestion des expirations
- Sécurité renforcée
- Suivi des tentatives
Utilisation
Après avoir initialisé votre API, vous pouvez utiliser les endpoints suivants pour gérer vos OTP.
Envoi d’un code OTP
POST /v1/auth/otp/get
Content-Type: application/json
{
"apiKey": "YOUR_API_KEY", // Required
"phoneNumber": "+2250708517414", // Required: Include country code with +
"length": 10, // Optional: Length of the OTP code
"mode": "ALPHA_NUMERIC", // Optional: "NUMERIC" | "ALPHABET" | "ALPHA_NUMERIC"
"senderId": "Boss", // Optional: Custom sender ID
"appName": "My APP" // Optional: Application name
}
Réponse
{
"success": true,
"data": {
"token": "6828f2299df4397112837d20",
"status": "PENDING",
"phoneNumber": "2250708517414"
},
"error": null
}
Vérification d’un code OTP
POST /v1/auth/otp/verify
Content-Type: application/json
{
"apiKey": "YOUR_API_KEY", // Required
"phoneNumber": "2250708517414", // Required: Include country code without +
"token": "6828f2299df4397112837d20", // Required: Token received from OTP generation
"otp": "5ZAEZ0Z8G5A" // Required: OTP code to verify
}
Réponse
{
"success": true,
"data": {
"token": "6828f2299df4397112837d20",
"status": "VERIFIED",
"phoneNumber": "2250708517414"
},
"error": null
}
Toutes les réponses de l’API suivent le format standard : { success: boolean, data: any, error: any }
.
Le champ data
contient les données de la réponse, tandis que error
contient les détails en cas d’erreur.
Documentation de l’API
POST /v1/auth/otp/get
Envoie un code OTP au numéro de téléphone spécifié.
Nom | Description | Type | Facultatif | Valeur par défaut |
---|---|---|---|---|
apiKey | Clé API | String | Non | - |
phoneNumber | Numéro de téléphone avec indicatif pays | String | Non | - |
length | Longueur du code OTP | Number | Oui | 4 |
mode | Mode du code OTP | ”NUMERIC” | “ALPHABET” | “ALPHA_NUMERIC” | Oui | NUMERIC |
senderId | Identifiant de l’expéditeur (Doit être enregistré et actif) | String | Oui | MONSMSPRO |
appName | Nom de l’application | String | Oui | null |
Important : Incluez l’indicatif du pays sans le symbole (+) avant le numéro de téléphone. Exemple : “2250708517414” pour un numéro ivoirien.
POST /v1/auth/otp/verify
Vérifie un code OTP pour un numéro de téléphone.
Nom | Description | Type | Facultatif | Valeur par défaut |
---|---|---|---|---|
apiKey | Clé API | String | Non | - |
phoneNumber | Numéro de téléphone avec indicatif pays | String | Non | - |
token | Token reçu lors de la génération de l’OTP | String | Non | - |
otp | Code OTP à vérifier | String | Non | - |
Exemple d’erreur
{
"success": false,
"data": null,
"error": "wrong-otp"
}
Bonnes pratiques
- Longueur du code : Utilisez des codes de 4-10 caractères pour un bon équilibre sécurité/confort
- Mode : Choisissez le mode approprié selon vos besoins de sécurité
- Expéditeur : Utilisez un senderId reconnu pour une meilleure délivrabilité
- Tentatives : Limitez le nombre de tentatives de vérification
- Sécurité : Utilisez HTTPS pour toutes les requêtes
- Stockage : Ne stockez jamais les codes en clair
- Monitoring : Surveillez les tentatives de fraude
Cas d’utilisation
- Authentification à deux facteurs (2FA)
- Vérification de numéro de téléphone
- Réinitialisation de mot de passe
- Confirmation de transactions
- Inscription de compte
- Changement de paramètres sensibles
- Accès à des fonctionnalités sécurisées
FAQ
Comment envoyer un code OTP ?
Utilisez l’endpoint /v1/auth/otp/get
avec le numéro de téléphone et les paramètres requis.
Quels modes de code sont disponibles ?
Trois modes sont disponibles : “NUMERIC” (chiffres uniquement), “ALPHABET” (lettres uniquement), et “ALPHA_NUMERIC” (chiffres et lettres).
Comment vérifier un code OTP ?
Utilisez l’endpoint /v1/auth/otp/verify
avec le numéro de téléphone et le code à vérifier.
Combien de tentatives sont autorisées ?
Le nombre de tentatives est limité pour des raisons de sécurité. Contactez-nous pour plus d’informations.
Puis-je réutiliser un code OTP ?
Non, chaque code OTP est à usage unique et ne peut être utilisé qu’une seule fois.
Comment personnaliser l’expéditeur ?
Utilisez le paramètre senderId
pour spécifier un expéditeur personnalisé.