SMS senden

Wenn Sie den Versand von Benachrichtigungen und Marketing-SMS automatisieren möchten, können Sie diese API aufrufen. Geben Sie die SMS-Vorlagen-ID und die Zielempfänger an, und das System sendet SMS-Nachrichten automatisch basierend auf dem Vorlageninhalt.

Hinweis zur Plattformkonfiguration Vor dem Aufruf müssen Sie die folgende Konfiguration in der EngageLab SMS Console abschließen:

  • SMS-Vorlageneinstellungen: Bevor Sie die API aufrufen, gehen Sie bitte zu Vorlagenverwaltung, um eine SMS-Vorlage anzupassen und einzureichen. Die Vorlage muss die Prüfung bestehen, bevor Sie die Vorlagen-ID verwenden können.
  • API-Key-Konfiguration: Gehen Sie zu API Key, um einen API-Basic-Authentifizierungsschlüssel zu erstellen.

Anfrage-URL

POST https://smsapi.engagelab.com/v1/messages

Aufruf-Authentifizierung

Bitte lesen Sie Aufruf-Authentifizierung, um zu erfahren, wie Sie API-Anfragen authentifizieren.

Anfragebeispiel

Anfrage-Header

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

            
Diesen Codeblock im schwebenden Fenster anzeigen

Anfragetext

{ "to": [ "923700056581" ], "template": { "id": "1233", "params": { "content": "Verification code: 039487. This code will expire in 5 minutes. You are attempting to create your account." } } }
              
              {
    "to": [
        "923700056581"
    ],
    "template": {
        "id": "1233",
        "params": {
            "content": "Verification code: 039487. This code will expire in 5 minutes. You are attempting to create your account."
        }
    }
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Anfrageparameter

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

Parameter Typ Option Beschreibung
to Array[String] Erforderlich Liste der Zielmobilnummern, an die gesendet werden soll, z. B. ["923700056581"]
plan_name String Optional Planname, standardmäßig „-", falls nicht ausgefüllt
schedule_time Integer Optional Der Zeitpunkt für den geplanten Versand. Übergeben Sie diesen Parameter nicht für nicht geplanten Versand. Unix-Zeitstempel, in „Sekunden".
Validierungsregeln: Muss eine positive Zahl sein; muss strikt mindestens 3 Minuten nach der aktuellen Zeit liegen; darf 30 Tage ab der aktuellen Zeit nicht überschreiten.
template JSON Object Erforderlich Vorlageninformationen, siehe unten für verschachtelte Parameter
|_ id String Erforderlich Vorlagen-ID
|_ params JSON Object Erforderlich Werte der benutzerdefinierten Vorlagen-Variablen-Keys
Wenn Sie beim Erstellen der Vorlage Variablen angepasst haben, übergeben Sie hier die zugehörigen Werte. Werden sie nicht übergeben, werden sie direkt als Variablen-Keys ausgeliefert, z. B. {{var1}}
custom_args JSON Object Optional Benutzerdefinierte Parameter

Beschreibung von params

Für benutzerdefinierte Variablenfelder im Vorlageninhalt, die beim Erstellen einer Vorlage festgelegt wurden, müssen die Werte über params zugewiesen werden. Wenn der Vorlageninhalt beispielsweise Hi {{name}}, welcome to EngageLab lautet, müssen Sie den Parameter params: {"name": "Bob"} zuweisen.

Weitere Anfragebeispiele

1. Benutzerdefinierten Benachrichtigungsinhalt senden:

{ "to": ["+6591234567"], "template": { "id": "notification-template", "params": { "order": "123456" } } }
              
              {
    "to": ["+6591234567"],
    "template": {
        "id": "notification-template",
        "params": {
            "order": "123456"
        }
    }
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

2. Benutzerdefinierten Marketinginhalt senden:

{ "to": ["+6591234567"], "template": { "id": "marketing-template", "params": { "name": "EngageLab", "promotion": "30%" } } }
              
              {
    "to": ["+6591234567"],
    "template": {
        "id": "marketing-template",
        "params": {
            "name": "EngageLab",
            "promotion": "30%"
        }
    }
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Antwortparameter

Erfolgsantwort

Der HTTP-Statuscode ist 200, und der Antworttext enthält die folgenden Felder:

Feld Typ Option Beschreibung
plan_id String Erforderlich Plan-ID
total_count Integer Erforderlich Anzahl der empfangenen Ziele
accepted_count Integer Erforderlich Anzahl der empfangenen gültigen Ziele
message_id String Optional Wird beim Einzelversand zurückgegeben und gibt die entsprechende message_id an
schedule_info JSON Object Optional Relevante Informationen zur geplanten Aufgabe (nur beim geplanten Versand zurückgegeben)
|_ task_id Integer Erforderlich ID der geplanten Aufgabe

Erfolgsbeispiel (Einzelziel)

{ "plan_id": "1972488990548348928", "total_count": 1, "accepted_count": 1, "message_id": "1972488990804201472" }
              
              {
    "plan_id": "1972488990548348928",
    "total_count": 1,
    "accepted_count": 1,
    "message_id": "1972488990804201472"
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Erfolgsbeispiel (Mehrere Ziele)

{ "plan_id": "1972484198153367552", "total_count": 2, "accepted_count": 2 }
              
              {
    "plan_id": "1972484198153367552",
    "total_count": 2,
    "accepted_count": 2
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Erfolgsbeispiel (Geplante Aufgabe)

{ "plan_id": "1972492618659033088", "total_count": 1, "accepted_count": 1, "schedule_info": { "task_id": 1972492621368553472 } }
              
              {
    "plan_id": "1972492618659033088",
    "total_count": 1,
    "accepted_count": 1,
    "schedule_info": {
        "task_id": 1972492621368553472
    }
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Fehlerantwort

Der HTTP-Statuscode ist 200 (in einigen Ausnahmefällen) oder 4xx/5xx, und der Antworttext enthält die folgenden Felder:

Feld Typ Option Beschreibung
plan_id String Erforderlich Plan-ID
total_count Integer Erforderlich Anzahl der empfangenen Ziele
accepted_count Integer Erforderlich Anzahl der empfangenen gültigen Ziele
code Integer Erforderlich Fehlercode, Einzelheiten siehe Beschreibung der Fehlercodes
message String Erforderlich Fehlerdetails

Fehlerbeispiel

{ "plan_id": "1972490061974913024", "total_count": 1, "accepted_count": 1, "message": "err xxxx", "code": 1 }
              
              {
    "plan_id": "1972490061974913024",
    "total_count": 1,
    "accepted_count": 1,
    "message": "err xxxx",
    "code": 1
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Fehlercodes

Fehlercode HTTP-Code Beschreibung
1000 500 Interner Fehler
2001 401 Authentifizierung fehlgeschlagen, falsches Token angegeben
2002 401 Authentifizierung fehlgeschlagen, Token abgelaufen oder deaktiviert
2004 403 Keine Berechtigung zum Aufruf dieser API
3001 400 Ungültiges Format des Anfrageparameters, bitte prüfen Sie, ob es dem erforderlichen JSON-Format entspricht
3002 400 Anfrageparameter sind fehlerhaft, bitte prüfen Sie, ob sie die Anforderungen erfüllen
3003 400 Anfrageparameter sind fehlerhaft, relevante Geschäftsprüfung fehlgeschlagen. Einzelheiten finden Sie in der Fehlerbeschreibung im Feld message.
3004 400 Häufigkeitslimit überschritten; es kann innerhalb der Gültigkeitsdauer des Verifizierungscodes nicht erneut an denselben Zielnutzer mit derselben Vorlage gesendet werden
4001 400 Zugehörige Ressource existiert nicht, z. B. wurde beim Nachrichtenversand eine nicht existierende Vorlage verwendet
5001 400 Nachrichtenversand fehlgeschlagen. Einzelheiten finden Sie in der Fehlerbeschreibung im Feld message.

Detaillierte Gründe für Sendefehler

Fehlercode Grund
10001 Authentifizierung fehlgeschlagen
10002 Keine Berechtigung zum Aufruf dieser API
10003 Ungültiges Format des Anfrageparameters
10004 Anfrageparameter sind fehlerhaft
10006 Häufigkeitslimit überschritten
10007 Zugehörige Ressource existiert nicht
10008 Ungültiges Sendeziel
10009 Auf die Blacklist gesetzt
10011 Nachricht abgefangen oder abgelehnt
10012 Inhalt entspricht nicht den Standards
10013 Sendefehler - Sonstiges
10014 Abgemeldet
10019 Interner Dienstfehler
10020 Kanaldienstfehler
10021 Anwendung hat keine Berechtigung zum Senden von SMS nach China
10022 Vorlage hat keine Berechtigung zum Senden von SMS nach China

Detaillierte Gründe für Zustellungsfehler

Fehlercode Grund
10008 Ungültiges Sendeziel
10009 Auf die Blacklist gesetzt
10010 Sendeziel nicht erreichbar
10011 Nachricht abgefangen oder abgelehnt
10012 Inhalt entspricht nicht den Standards
10013 Zustellungsfehler - Sonstiges
10014 Abgemeldet
10016 Fehlfunktion des Mobiltelefons
10020 Kanaldienstfehler
Icon Solid Transparent White Qiyu
Vertrieb kontaktieren