Benutzerdefinierte OTP-Code-Zustellung

Wenn Sie Verifizierungscodes selbst generieren möchten, anstatt sie von der EngageLab-Plattform generieren zu lassen, können Sie diese API aufrufen.

Diese API wird speziell zum Senden vorab generierter Verifizierungscodes verwendet und generiert selbst keine Verifizierungscodes. Nach dem Senden eines Verifizierungscodes ist es nicht erforderlich, eine Verifizierungs-API zur Validierung aufzurufen.

Wenn Sie möchten, dass die EngageLab-Plattform Verifizierungscodes generiert, können Sie die API EngageLab OTP Verification Code Delivery aufrufen.

Endpunkt

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

Authentifizierung

Verwenden Sie HTTP Basic Authentication, indem Sie Authorization zum HTTP-Header hinzufügen:

Authorization: Basic ${base64_auth_string}
              
              Authorization: Basic ${base64_auth_string}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Der Generierungsalgorithmus für base64_auth_string lautet: base64(dev_key:dev_secret)

Anfragebeispiel

Anfrage-Header

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

            
Diesen Codeblock im schwebenden Fenster anzeigen

Anfrage-Body

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

            
Diesen Codeblock im schwebenden Fenster anzeigen

Anfrageparameter

Ein Anfrageobjekt wird im JSON-Format dargestellt, daher muss der Anfrage-Header Content-Type: application/json enthalten.

Parameter Typ Erforderlich Beschreibung
to String Erforderlich Zustellungsziel: eine Telefonnummer oder E-Mail-Adresse, z. B. +6598765432 oder support@engagelab.com
code String Erforderlich Der zu sendende benutzerdefinierte Verifizierungscode
template JSON Object Erforderlich Vorlageninformationen. Siehe die Parameter der zweiten Ebene unten
|_ id String Erforderlich Vorlagen-ID
|_ language String Optional Vorlagensprache. Die folgenden Sprachen werden unterstützt:
default Standardsprache
zh_CN Vereinfachtes Chinesisch
zh_HK Traditionelles Chinesisch
en Englisch
ja Japanisch
th Thailändisch
es Spanisch
Wenn nichts angegeben ist, lautet der Standardwert default (Standardsprache).
|_ params JSON Object Optional Werte für benutzerdefinierte Variablenschlüssel in der Vorlage. Wenn Sie beim Erstellen der Vorlage benutzerdefinierte Variablen definiert haben, weisen Sie ihnen hier ihre Werte zu. Wenn nichts angegeben wird, wird der Variablenschlüssel direkt gesendet, z. B. {{var}}.

Beschreibung von params

  1. Für vordefinierte Vorlagenfelder wie from_id gilt: Wenn der Feldwert param_vars nicht angegeben wird, wird beim Senden der Nachricht das in der Vorlage vordefinierte from_id verwendet.
  2. Wenn der Feldwert param_vars angegeben wird, z. B. param_vars:{"from_id":"12345"}, wird das from_id der Vorlage beim Senden der Nachricht durch 12345 ersetzt.
  3. Benutzerdefinierte Variablenfelder im Vorlageninhalt, die bei der Erstellung der Vorlage angelegt wurden, werden ebenfalls über param_vars mit Werten versehen. Wenn der Vorlageninhalt beispielsweise Hi {{name}}, your verify code is {{code}} lautet, ist der Zuweisungsparameter param_vars:{"name":"Bob"} erforderlich.

Antwortparameter

Erfolgreiche Antwort

Field Type Required Description
message_id String Required Nachrichten-ID, die eine Nachricht eindeutig identifiziert
send_channel String Required Gibt den aktuell verwendeten Zustellungskanal an. Mögliche Werte: whatsapp/sms/email/voice
{ "message_id": "1725407449772531712", "send_channel": "sms" }
              
              {
  "message_id": "1725407449772531712",
  "send_channel": "sms"
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Bitte beachten Sie, dass der zurückgegebene Wert send_channel nicht den endgültigen Kanal darstellt, der für die Zustellung der Nachricht an den Benutzer verwendet wird; er steht nur für den aktuell verwendeten Kanal. Wenn die Vorlagenstrategie beispielsweise so konfiguriert ist, dass bei einer fehlgeschlagenen Zustellung über den WhatsApp-Kanal automatisch ein erneuter Versuch über den SMS-Kanal erfolgt, gibt die API-Antwort den Wert whatsapp zurück. Nach einer gewissen Zeit sendet das System über den SMS-Kanal, wenn ein Zustellungsfehler erkannt wird.

Fehlgeschlagene Antwort

Der HTTP-Statuscode ist 4xx oder 5xx, und der Antwort-Body enthält die folgenden Felder:

Field Type Required Description
code int Required Fehlercode. Details finden Sie unter Fehlercodes
message String Required Fehlerdetails
{ "code": 5001, "message": "sms send fail" }
              
              {
  "code": 5001,
  "message": "sms send fail"
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Fehlercodes

Fehlercode HTTP-Code Beschreibung
1000 500 Interner Fehler
2001 401 Authentifizierung fehlgeschlagen. Das korrekte Token wurde nicht bereitgestellt.
2002 401 Authentifizierung fehlgeschlagen. Das Token ist abgelaufen oder wurde deaktiviert.
2004 403 Keine Berechtigung, diese API aufzurufen
3001 400 Ungültiges Format der Anfrageparameter. Bitte prüfen Sie, ob der JSON-Inhalt dem erforderlichen Parameterformat entspricht.
3002 400 Ungültige Anfrageparameter. Bitte prüfen Sie, ob die Anfrageparameter die Anforderungen erfüllen.
3003 400 Ungültige Anfrageparameter. Die zugehörige geschäftliche Validierung ist fehlgeschlagen. Einzelheiten finden Sie in der Fehlerbeschreibung im Feld message.
3004 400 Häufigkeitslimit überschritten. Für dieselbe Vorlage und denselben Zielbenutzer kann innerhalb der Gültigkeitsdauer des Verifizierungscodes keine erneute Zustellung erfolgen.
4001 400 Die zugehörige Ressource existiert nicht, z. B. wenn beim Senden einer Vorlagennachricht eine nicht vorhandene Vorlage verwendet wird.
5001 400 Senden fehlgeschlagen (allgemein/sonstige)
5011 400 Ungültiges Telefonnummernformat
5012 400 Ziel nicht erreichbar
5013 400 Nummer wurde auf die Sperrliste gesetzt
5014 400 Inhalt entspricht nicht den Vorgaben
5015 400 Nachricht abgefangen/abgelehnt
5016 400 Interner Sendefehler
5017 400 Keine Sendeberechtigung für das chinesische Festland
5018 400 Telefonstörung (ausgeschaltet/Dienst ausgesetzt)
5019 400 Benutzer hat sich abgemeldet
5020 400 Nummer nicht registriert/ungültige Nummer
Icon Solid Transparent White Qiyu
Vertrieb kontaktieren