Logo Site EngageLab Mark Colored TransparentDocumentation
Rechercher

Envoi du code de vérification

Cette interface permet à la plateforme EngageLab de générer un code de vérification et de l'envoyer selon la stratégie de canal définie dans le modèle.

Si vous préférez générer le code de vérification vous-même plutôt que de le faire générer par la plateforme EngageLab, vous pouvez appeler l'interface Envoi de code de vérification personnalisé EngageLab OTP.

Adresse d'appel

POST https://otp.api.engagelab.cc/v1/messages

Authentification

Veuillez consulter Authentification pour savoir comment effectuer l'authentification de l'API.

Exemple de requête

En-tête de la requête

POST /v1/messages HTTP/1.1 Content-Type: application/json Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              POST /v1/messages  HTTP/1.1  
Content-Type: application/json  
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

            
Afficher ce bloc de code dans la fenêtre flottante

Corps de la requête

{ "to": "+6591234567", "template":{ "id":"test-template-1", "language": "default", "params": { "key1": "value1", "key2": "value2" } } }
              
              {
    "to": "+6591234567",
    "template":{
      "id":"test-template-1",
      "language": "default",
        "params": {
        "key1": "value1",
        "key2": "value2"
        }
    }
}

            
Afficher ce bloc de code dans la fenêtre flottante

Paramètres de requête

Un objet de requête est exprimé au format JSON ; l'en-tête de la requête doit donc inclure Content-Type: application/json.

Paramètre Type Option Description
to String Obligatoire Cible de l'envoi, numéro de téléphone mobile ou adresse e-mail, +6598765432, support@engagelab.com
template JSON Object Obligatoire Informations sur le modèle, voir les paramètres de second niveau ci-dessous
|_ id String Obligatoire ID du modèle
|_ language String Facultatif Langue du modèle, prend en charge les langues suivantes :
default langue par défaut
zh_CN chinois simplifié
zh_HK chinois traditionnel
en anglais
ja japonais
th thaï
es espagnol
Si ce paramètre n'est pas transmis, la valeur par défaut est default (langue par défaut)
|_ params JSON Object Facultatif Valeurs des clés de variables personnalisées du modèle
Si vous avez défini des variables personnalisées lors de la création du modèle, transmettez-en ici les valeurs ; sinon, elles seront envoyées telles quelles sous forme de clé de variable, comme {{var}}

Remarques concernant params

  1. Pour les champs prédéfinis dans le modèle, tels que from_id, si aucune valeur n'est transmise dans le champ params, le from_id prédéfini du modèle est utilisé lors de l'envoi du message ;
  2. Si une valeur du champ params est transmise, comme params:{"from_id":"12345"}, le from_id du modèle sera remplacé par 12345 lors de l'envoi du message ;
  3. De même, les champs de variables personnalisées définis dans le contenu du modèle lors de sa création se voient également attribuer une valeur via params : par exemple, pour un contenu de modèle Hi {{name}}, your verify code is {{code}}, vous devez attribuer le paramètre params:{"name":"Bob"}
  4. Variables spéciales du canal Email : pour le canal Email, vous pouvez remplacer dynamiquement l'objet de l'e-mail (subject), le nom de l'expéditeur (from_name), l'adresse e-mail de l'expéditeur (from_mail), etc., via params. Pour les usages avancés détaillés, veuillez consulter Créer un modèle - Usage avancé des variables de modèle Email.

Paramètres de réponse

Réponse en cas de succès

Champ Type Option Description
message_id String Obligatoire ID du message, identifie de façon unique un message
send_channel String Obligatoire Indique le canal d'envoi actuel, les valeurs possibles sont whatsapp/sms/email/voice
{ "message_id": "1725407449772531712", "send_channel": "sms" }
              
              {
    "message_id": "1725407449772531712",
    "send_channel": "sms"
}

            
Afficher ce bloc de code dans la fenêtre flottante

Notez que la valeur**send_channel**renvoyée ne représente pas le canal final de livraison à l'utilisateur, mais uniquement le canal utilisé à ce stade ; par exemple, si la stratégie configurée dans le modèle prévoit qu'en cas d'échec de livraison sur le canal WhatsApp, un renvoi automatique est effectué sur le canal SMS, l'interface renverra la valeur whatsapp. Une fois l'échec de livraison détecté après un certain délai, le système enverra le message via le canal SMS.

Réponse en cas d'échec

Le code de statut HTTP est 4xx ou 5xx, et le corps de la réponse contient les champs suivants :

Champ Type Option Description
code int Obligatoire Code d'erreur, voir la description des codes d'erreur
message String Obligatoire Détails de l'erreur
{ "code": 5001, "message": "sms send fail" }
              
              {
    "code": 5001,
    "message": "sms send fail"
}

            
Afficher ce bloc de code dans la fenêtre flottante

Codes d'erreur

Code d'erreur http code Description
1000 500 Erreur interne
2001 401 Échec de l'authentification, token correct non fourni
2002 401 Échec de l'authentification, token expiré ou désactivé
2004 403 Aucune autorisation d'appeler cette API
3001 400 Format des paramètres de requête invalide, veuillez vérifier que le contenu JSON respecte le format des paramètres
3002 400 Paramètres de requête incorrects, veuillez vérifier que les paramètres de requête sont conformes aux exigences
3003 400 Paramètres de requête incorrects, échec de la validation métier associée, voir la description de l'erreur dans le champ message pour plus de détails
3004 400 Limite de fréquence dépassée : pour un même modèle et un même utilisateur cible, un nouvel envoi est impossible pendant la durée de validité du code de vérification
4001 400 La ressource associée n'existe pas, par exemple l'utilisation d'un modèle inexistant lors de l'envoi d'un message basé sur un modèle
5001 400 Échec de l'envoi (générique/autre)
5011 400 Format de numéro de téléphone mobile invalide
5012 400 Cible injoignable
5013 400 Numéro placé sur liste noire
5014 400 Contenu non conforme aux règles
5015 400 Message intercepté/refusé
5016 400 Erreur interne d'envoi
5017 400 Aucune autorisation d'envoi vers la région de la Chine
5018 400 Défaillance du téléphone (éteint/hors service)
5019 400 L'utilisateur s'est désabonné
5020 400 Numéro non enregistré/numéro inexistant
Icon Solid Transparent White Qiyu
Contactez-nous