Codes d'erreur HTTP de l'API REST
L'API EnvoiSMS.ma utilise les codes HTTP standards accompagnés d'un message JSON explicite.
- 400 Bad Request : Corps de requête JSON manquant ou mal formé
- 401 Unauthorized : Clé API invalide, expirée ou absente
- 402 Payment Required : Solde du compte insuffisant pour effectuer l'envoi
- 422 Unprocessable Entity : Numéro de destinataire invalide ou non conforme (+212)
- 429 Too Many Requests : Seuil de requêtes par seconde dépassé
Statuts des accusés de réception (DLR)
Une fois le message accepté par l'API, l'opérateur télécom transmet un statut de livraison final par webhook.
- DELIVRD (Délivré) : Le SMS a été reçu avec succès sur le terminal mobile
- UNDELIV (Non délivré) : Mobile éteint, hors zone de couverture ou mémoire pleine
- EXPIRED (Expiré) : Le message n'a pas pu être remis dans le délai de validité (généralement 48h)
- REJECTD (Rejeté) : Message refusé par l'opérateur (numéro bloqué ou expéditeur non autorisé)
Bonnes pratiques de gestion des erreurs
Implémentez une stratégie de retry avec temporisation exponentielle pour les erreurs temporaires (429, 503) et désactivez les numéros retournant une erreur 422 pour assainir vos listes de contacts.