API SMS Sending
Wenn Sie den Versand von Benachrichtigungs- und Marketing-SMS automatisieren möchten, ohne diese direkt auf der EngageLab-Plattform zu generieren, können Sie diese SMS API nutzen. Geben Sie einfach die Vorlagen-ID sowie die Liste der Ziel-IDs an – das System versendet die SMS automatisch auf Grundlage des Vorlageninhalts.
Plattformkonfiguration
Bevor Sie die SMS API aufrufen, müssen Sie folgende Einstellungen in der EngageLab SMS-Konsole vornehmen:
SMS-Vorlage einrichten: Rufen Sie die Vorlagenverwaltung auf, um SMS-Vorlagen individuell anzupassen und einzureichen. Die Vorlage kann erst verwendet werden, nachdem sie genehmigt wurde und Sie die Vorlagen-ID erhalten haben.
API-Schlüssel einrichten: Erstellen Sie im Bereich API-Schlüssel einen API-Schlüssel für die Basic-Authentifizierung.
Vorgehensweise beim API-Aufruf
Folgen Sie der nachstehenden Anleitung, um SMS mit der API zu versenden. Bei Fragen kontaktieren Sie bitte den Kundendienst.
Aufruf-URL
POST https://smsapi.engagelab.com/v1/messages
Authentifizierung
Zur Authentifizierung verwenden Sie die HTTP Basic Authentication. Fügen Sie im HTTP-Header Folgendes hinzu:
Authorization: Basic ${base64_auth_string}
Der base64_auth_string wird folgendermaßen generiert: base64(dev_key:dev_secret)
Anfrageformat
Anfrage-Header
POST /v1/messages HTTP/1.1
Content-Type: application/json
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
Anfrage-Body
{
"to": [
"923700056581"
],
"template": {
"id": "1233",
"params": {
"content": "Verifizierungscode: 039487. Dieser Code ist 5 Minuten gültig. Sie versuchen, Ihr Konto zu erstellen."
}
}
}
Anfrageparameter
Das Anfrageobjekt wird im JSON-Format übermittelt; daher muss der Anfrage-Header Content-Type: application/json enthalten.
| Name | Ort | Typ | Erforderlich | Beschreibung | Hinweise |
|---|---|---|---|---|---|
| Authorization | Header | array[string] | Nein | ||
| to | Body | array[string] | Ja | Liste der Ziel-IDs | Ziel-Telefonnummern |
| plan_name | Body | string | Nein | Name des Plans | Optional, Standardwert ist "-" |
| schedule_time | Body | integer | Nein | Geplanter Zeitpunkt | Nicht erforderlich bei Sofortversand; bei geplanten Nachrichten Zeitstempel angeben |
| template | Body | object | Ja | ||
| id | Body | string | Ja | ||
| params | Body | object | Ja | ||
| custom_args | Body | object | Nein | Benutzerdefinierte Parameter |
Falls Sie beim Erstellen der Vorlage benutzerdefinierte Variablen verwendet haben, übergeben Sie hier deren Werte. Andernfalls wird der Variablenname direkt im Text versendet, z. B. {{var1}}.
Erklärung zu params
Für Vorlageninhalte mit benutzerdefinierten Variablenfeldern müssen Sie den Parameter wie folgt übergeben. Beispiel: Ist der Vorlageninhalt Hallo {{name}}, willkommen bei EngageLab, dann übergeben Sie: params:{"name":"Bob"}.
Anfragebeispiele
1. Versand individueller Benachrichtigungs-SMS:
{
"to": ["+8618701235678"],
"template": {
"id": "notification-template",
"params": {
"order": "123456"
}
}
}
2. Versand individueller Marketing-SMS:
{
"to": ["+8618701235678"],
"template": {
"id": "marketing-template",
"params": {
"name": "EngageLab",
"promotion": "30%"
}
}
}
Antwort
Der HTTP-Statuscode ist 200, und der Antwort-Body enthält die folgenden Felder:
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| plan_id | string | Ja | Plan-ID |
| total_count | integer | Ja | Anzahl der erreichten Zielpersonen |
| accepted_count | integer | Ja | Anzahl der gültigen Zielpersonen |
| message_id | string | Optional | Wird bei Einzelversand mit der entsprechenden Nachrichten-ID zurückgegeben |
Erfolgsbeispiel (einzelnes Ziel)
{
"plan_id": "1972488990548348928",
"total_count": 1,
"accepted_count": 1,
"message_id": "1972488990804201472"
}
Erfolgsbeispiel (mehrere Ziele)
{
"plan_id": "1972484198153367552",
"total_count": 2,
"accepted_count": 2
}
Erfolgsbeispiel (geplante Aufgabe)
{
"plan_id": "1972492618659033088",
"total_count": 1,
"accepted_count": 1,
"schedule_info": {
"task_id": 1972492621368553472
}
}
Fehlerbeispiel
{
"plan_id": "1972490061974913024",
"total_count": 1,
"accepted_count": 1,
"message": "err xxxx",
"code": 1
}
Fehler beim Versand
Der HTTP-Statuscode ist 200, und der Antwort-Body enthält die folgenden Felder:
| Feld | Typ | Beschreibung |
|---|---|---|
| plan_id | string | Erforderlich |
| total_count | integer | Erforderlich |
| accepted_count | integer | Erforderlich |
| message | string | Erforderlich |
| code | integer | Erforderlich |
{
"plan_id": "string",
"total_count": 0,
"accepted_count": 0,
"message": "string",
"code": 0
}
Fehlercodes
| Fehlercode | HTTP-Code | Beschreibung |
|---|---|---|
| 1000 | 500 | Interner Serverfehler |
| 2001 | 401 | Authentifizierung fehlgeschlagen, falsches Token angegeben |
| 2002 | 401 | Authentifizierung fehlgeschlagen, Token abgelaufen oder deaktiviert |
| 2004 | 403 | Keine Berechtigung, diese API aufzurufen |
| 3001 | 400 | Ungültiges Anfrageparameterformat, prüfen Sie, ob das JSON-Format eingehalten wird |
| 3002 | 400 | Ungültige Anfrageparameter, prüfen Sie, ob die Anforderungen erfüllt sind |
| 3003 | 400 | Ungültige Anfrageparameter, geschäftliche Validierung fehlgeschlagen, siehe message-Feld |
| 3004 | 400 | Frequenzlimit überschritten, dieselbe Vorlage kann nicht erneut an dieselbe Zielperson innerhalb der Gültigkeit des Codes versendet werden |
| 4001 | 400 | Ressource nicht gefunden, z. B. nicht vorhandene Vorlage beim Versand verwendet |
| 5001 | 400 | Versand der Verifizierungscode-SMS fehlgeschlagen, Details siehe message-Feld |
Tipp: Nutzen Sie die EngageLab SMS API für automatisierten SMS-Versand, einfache Vorlagenverwaltung und sichere Basic-Authentifizierung – für maximale Effizienz und Kontrolle über Ihre Benachrichtigungs- und Marketing-SMS.
Jetzt mehr erfahren!

