Commencez rapidement depuis la même page sans chercher dans toute la plateforme.
Base URL propre, auth header, exemples prêts, webhooks et codes d’erreur dans une expérience organisée.
Commencez rapidement depuis la même page sans chercher dans toute la plateforme.
Choisissez le bon scénario puis lancez la première requête via cURL ou les snippets prêts.
Recevez dans votre système les callbacks sent, delivered et failed avec retries et journal visible.
Surveillez les appareils, la santé de la file et l'état des messages sans quitter la même expérience.
Utilisez deux endpoints rapides pendant le développement ou le CI pour confirmer que le service fonctionne et que le compte est prêt pour le trafic réel.
{
"ok": true,
"request_id": "req_01H...",
"status": "queued",
"queued_at": "2026-03-14T12:30:00Z"
}
{
"ok": true,
"otp_id": "otp_01H...",
"status": "sent",
"expires_in_seconds": 300
}
{
"ok": true,
"request_id": "req_01H...",
"status": "delivered",
"device_name": "Relay Device 1",
"attempts": 1
}
Utilisez le fichier OpenAPI et la collection Postman pour aligner les développeurs et l'équipe opérations.
Les échecs importants doivent revenir dans votre système via des webhooks et un journal de retry clair.
Testez health, readiness et l'association de l'application avant le premier lancement en production.
Envoyez un SMS transactionnel via la file d'attente avec routage d'appareil et suivi d'état.
Envoyez un OTP avec objectif, langue et expiration claire.
Vérifiez le code et renvoyez clairement success/failed/expired.
Consultez le statut du message, les tentatives et les raisons d'échec via request_id.
Consultez le répertoire des destinataires enregistrés et cherchez par nom ou numéro.
Mettez une liste complète en file : chaque numéro devient un élément distinct.
unauthorizedLa clé API ou l'en-tête d'authentification est invalide.
invalid_deviceL'appareil est indisponible ou invalide pour le routage.
rate_limitedLes limites d'envoi ou de sécurité ont été dépassées.
queue_blockedL'envoi est temporairement bloqué par l'état de la file ou les politiques.
subscription_expiredL'abonnement a expiré et doit être renouvelé.
It fits login systems, stores, bookings, invoices, and operational alerts that need OTP or event-driven messaging, not mass marketing campaigns.
Yes. Ready-to-copy examples include cURL, PHP, Laravel, Node, Axios, Python, Flutter, Kotlin, Java, C#, Go, and Ruby.
Yes. You can rely only on Send OTP and Verify OTP if your project needs verification without other messaging flows.
The device should preferably stay online with permissions and foreground service enabled so sending and status heartbeat continue normally.
Start by creating the account, pairing the Android Relay, taking an access token, then running your first request from the ready examples before moving to webhooks and production.