Envoyer un OTP
Envoie un code par SMS à un numéro malien.
POST
/v1/otp/sendHeaders requis
| Header | Valeur |
|---|---|
X-Julak-Key | Ta clé publique jak_live_... |
X-Julak-Timestamp | Timestamp Unix (±300s) |
X-Julak-Signature | HMAC-SHA256 hex de method + url + timestamp + body |
Body
{ "phone": "+22375673336" }Format E.164 : +223 suivi de 8 chiffres.
Exemples
APP_KEY="jak_live_..."
APP_SECRET="sk_live_..."
TS=$(date +%s)
BODY='{"phone":"+22375673336"}'
SIG=$(node -e "const c=require('crypto');const s=c.createHmac('sha256','$APP_SECRET').update('POST/v1/otp/send'+'$TS'+'$BODY').digest('hex');console.log(s)")
curl -X POST https://api.otp.julakai.com/v1/otp/send \
-H "Content-Type: application/json" \
-H "X-Julak-Key: $APP_KEY" \
-H "X-Julak-Timestamp: $TS" \
-H "X-Julak-Signature: $SIG" \
-d "$BODY"Réponse (200)
{
"requestId": "otp_...",
"expiresInSeconds": 300
}En mode dev (devMode = true), la réponse inclut aussi "code": "1234". Jamais en production.
Erreurs
400Format de téléphone invalide402Quota gratuit épuisé429Cooldown (60s) ou quota quotidien atteint503Envoi SMS échoué — réessaie immédiatement