logoDokumentation
Suchen

WhatsApp Send Message API Documentation - EngageLab

Nutzen Sie die Messaging API, um WhatsApp-Messaging-Funktionen nahtlos in Ihre Geschäftsanwendungen zu integrieren.
Bevor Sie die API aufrufen, loggen Sie sich in der Konsole ein und erstellen Sie einen API-Schlüssel auf der entsprechenden Seite.

Aufrufadresse

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

Authentifizierung der Anfrage

Die EngageLab REST API verwendet HTTP Basic Authentication als Authentifizierungsmethode und fügt den Header „Authorization“ hinzu.

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

            
Diesen Codeblock im schwebenden Fenster anzeigen

Der base64_auth_string wird wie folgt generiert: base64(dev_key:dev_secret)

  • Der Header-Name ist „Authorization“ und der Wert ist das base64-codierte „username:password“-Paar (mit Doppelpunkt dazwischen).
  • Im WhatsApp API-Szenario ist der Benutzername DevKey und das Passwort DevSecret. Diese können Sie in der Konsole unter Konfigurationsmanagement – API-Schlüssel abrufen.

Beispielanfragen

Request 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

Request Body

{ "from": "+8613800138000", "to": [ "00447911123456" ], "body": { "type": "template", "template": { "name": "code", "language": "zh_CN", "components": [ { "type": "body", "parameters": [ { "type": "text", "text": "12345" } ] } ] } }, "request_id": "123asdbbqwe9faweg", "custom_args": { "arg1": "string val", "arg2": 123 } }
              
              {
    "from": "+8613800138000",
    "to": [
        "00447911123456"
    ],
    "body": {
        "type": "template",
        "template": {
            "name": "code",
            "language": "zh_CN",
            "components": [
                {
                    "type": "body",
                    "parameters": [
                        {
                            "type": "text",
                            "text": "12345"
                        }
                    ]
                }
            ]
        }
    },
    "request_id": "123asdbbqwe9faweg",
    "custom_args": {
        "arg1": "string val",
        "arg2": 123
    }
}

            
Diesen Codeblock im schwebenden Fenster anzeigen

Request-Parameter

Das Request-Objekt wird im JSON-Format übergeben, daher muss der Request-Header Content-Type: application/json enthalten.

Parameter Typ Option Beschreibung
from String optional Absendernummer (Unternehmensnummer), die für den Versand von Nachrichten verwendet wird.
to String Array erforderlich Ziel-Telefonnummer
body JSON Object erforderlich Nachrichteninhalt
request_id String optional Benutzerdefinierte ID zur Identifizierung der Anfrage
custom_args JSON Object optional Benutzerdefinierte Informationen, die im Status-Callback der Nachricht an die Entwickler zurückgegeben werden

from

Parameter Typ Option Beschreibung
from String optional Absendernummer (Unternehmensnummer), die für den Versand von Nachrichten verwendet wird.
Internationale Vorwahl erforderlich. Wenn nicht angegeben, wird die Standard-Absendernummer verwendet (muss in der Konsole konfiguriert werden).

to

Parameter Typ Option Beschreibung
to String Array erforderlich WhatsApp-Telefonnummer des Empfängers, internationale Vorwahl muss hinzugefügt werden.

body

Der Nachrichteninhalt enthält folgende Felder:

Parameter Typ Option Beschreibung
type string erforderlich Nachrichtentyp. Gültige Werte:
  • template: Vorlagen-Nachricht
  • text: Textnachricht
  • image: Bildnachricht
  • audio: Audionachricht
  • video: Videonachricht
  • document: Dokumentnachricht
  • sticker: Sticker-Nachricht
    Nur Vorlagen-Nachrichten können direkt an Nutzer gesendet werden. Andere Nachrichtentypen erfordern eine Antwort des Nutzers innerhalb von 24 Stunden.
    Bilder, Audio, Video, Dokumente und Sticker sind Mediennachrichten. Mediennachrichten: Formatvorgaben
  • template template object optional Wird verwendet, wenn type = template. Weitere Informationen unter Beschreibung des Template-Objekts
    text text object optional Wird verwendet, wenn type = text. Weitere Informationen unter Beschreibung des Text-Objekts
    image image object optional Wird verwendet, wenn type = image. Weitere Informationen unter Beschreibung des Bild-Objekts
    audio audio object optional Wird verwendet, wenn type = audio. Weitere Informationen unter Beschreibung des Audio-Objekts
    video video object optional Wird verwendet, wenn type = video. Weitere Informationen unter Beschreibung des Video-Objekts
    document document object optional Wird verwendet, wenn type = document. Weitere Informationen unter Beschreibung des Dokument-Objekts
    sticker sticker object optional Wird verwendet, wenn type = sticker. Weitere Informationen unter Beschreibung des Sticker-Objekts

    Beschreibung des Text-Objekts

    Textnachricht

    Parameter Typ Option Beschreibung
    body String erforderlich Textinhalt. Die Nachricht darf maximal 4.096 Zeichen lang sein.

    Beispiel

    { "from": "8613800138000", // Absendernummer "to": "8613800138000", // Empfängernummer "body": { "type": "text", // Nachrichtentyp "text": { "body": "Ihr-Textnachrichten-Inhalt" // Nachrichteninhalt } } }
                  
                  {
        "from": "8613800138000", // Absendernummer
        "to": "8613800138000", // Empfängernummer
        "body": {
            "type": "text", // Nachrichtentyp
            "text": {
                "body": "Ihr-Textnachrichten-Inhalt" // Nachrichteninhalt
            }
        }
    }
    
                
    Diesen Codeblock im schwebenden Fenster anzeigen

    Beschreibung des Bild-Objekts

    Bildnachricht

    Parameter Typ Option Beschreibung
    id String optional Die von WhatsApp generierte ID, muss zusammen mit dem Link vorhanden sein.
    link String optional Bildlink, http/https-Link, siehe Mediennachrichten: Formatvorgaben
    caption String optional Bildbeschreibung, maximal 1.024 Zeichen.

    Beispiel

    { "from": "8613800138000", // Absendernummer "to": "8613800138000", // Empfängernummer "body": { "type": "image", // Nachrichtentyp "image": { "link": "https://img.jiguang.cn/jiguang/public/img/c866bd2.png", // Bildlink "caption": "Bildbeschreibung" // optional, Beschreibung unter dem Bild, max. 1.024 Zeichen } } }
                  
                  {
      "from": "8613800138000", // Absendernummer
      "to": "8613800138000", // Empfängernummer
      "body": {			
        "type": "image", // Nachrichtentyp
        "image": {
          "link": "https://img.jiguang.cn/jiguang/public/img/c866bd2.png", // Bildlink
          "caption": "Bildbeschreibung" // optional, Beschreibung unter dem Bild, max. 1.024 Zeichen
        }
      }
    }
    
                
    Diesen Codeblock im schwebenden Fenster anzeigen

    Beschreibung des Video-Objekts

    Videonachricht

    Parameter Typ Option Beschreibung
    id String optional Von WhatsApp generierte media_id; id und link müssen vorhanden sein.
    link String optional Videolink, http/https-Link, siehe Mediennachrichten: Formatvorgaben
    caption String optional Beschreibung des Videos, max. 1.024 Zeichen.

    Beispiel

    { "from": "8613800138000", // Absendernummer "to": "8613800138001", // Empfängernummer "body": { "type": "video", // Nachrichtentyp "video": { "link": "https://img.jiguang.cn/jiguang/public/videos/432acc5.mp4", // Videolink "caption": "Videobeschreibung" // optional, max. 1.024 Zeichen } } }
                  
                  {
      "from": "8613800138000", // Absendernummer
      "to": "8613800138001", // Empfängernummer
      "body": {			
        "type": "video", // Nachrichtentyp
        "video": {
          "link": "https://img.jiguang.cn/jiguang/public/videos/432acc5.mp4", // Videolink
          "caption": "Videobeschreibung" // optional, max. 1.024 Zeichen
        }
      }
    }
    
                
    Diesen Codeblock im schwebenden Fenster anzeigen

    Beschreibung des Audio-Objekts

    Audionachricht

    Parameter Typ Option Beschreibung
    id String optional Von WhatsApp generierte media_id; id und link müssen vorhanden sein.
    link String optional Audiolink, http/https-Link, siehe Mediennachrichten: Formatvorgaben

    Beispiel

    { "from": "8613800138000", // Absendernummer "to": "8613800138001", // Empfängernummer "body": { "type": "audio", // Nachrichtentyp "audio": { "link": "https://file-examples.com/storage/fe5947fd2362fc197a3c2df/2017/11/file_example_MP3_700KB.mp3" // Audiolink } } }
                  
                  {
      "from": "8613800138000", // Absendernummer
      "to": "8613800138001", // Empfängernummer
      "body": {
        "type": "audio", // Nachrichtentyp
        "audio": {
          "link": "https://file-examples.com/storage/fe5947fd2362fc197a3c2df/2017/11/file_example_MP3_700KB.mp3" // Audiolink
        }
      }
    }
    
                
    Diesen Codeblock im schwebenden Fenster anzeigen

    Beschreibung des Dokument-Objekts

    Dokumentnachricht

    Parameter Typ Option Beschreibung
    id String optional Von WhatsApp generierte media_id; id und link müssen vorhanden sein.
    link String optional Dokumentenlink, http/https-Link, siehe Mediennachrichten: Formatvorgaben
    caption String optional Beschreibung der Datei, max. 1.024 Zeichen.
    filename String optional Dateiname. Wenn filename nicht ausgefüllt ist, aber caption, wird caption als Dateiname verwendet; ist filename ausgefüllt, wird dieser Wert genutzt.

    Beispiel

    { "from": "8613800138000", // Absendernummer "to": "8613800138001", // Empfängernummer "body": { "type": "document", // Nachrichtentyp "document": { "link": "https://img.jiguang.cn/jiguang/public/videos/432acc5.mp4", // Dokumentenlink "caption": "Dateibeschreibung", // optional, max. 1.024 Zeichen "filename": "Dateiname" // optional } } }
                  
                  {
      "from": "8613800138000", // Absendernummer
      "to": "8613800138001", // Empfängernummer
      "body": {
        "type": "document", // Nachrichtentyp
        "document": {
          "link": "https://img.jiguang.cn/jiguang/public/videos/432acc5.mp4", // Dokumentenlink
          "caption": "Dateibeschreibung", // optional, max. 1.024 Zeichen
          "filename": "Dateiname" // optional
        }
      }
    }
    
                
    Diesen Codeblock im schwebenden Fenster anzeigen

    Beschreibung des Sticker-Objekts

    Sticker-Nachricht

    Parameter Typ Option Beschreibung
    id String optional media_id auf WhatsApp-Seite; id und link müssen vorhanden sein.
    link String optional Stickerlink, http/https-Link, siehe Mediennachrichten: Formatvorgaben

    Beispiel

    { "from": "8613800138000", // Absendernummer "to": "8613800138001", // Empfängernummer "body": { "type": "sticker", // Nachrichtentyp "sticker": { "link": "http://sample-file.bazadanni.com/download/images/webp/sample.webp" // Stickerlink } } }
                  
                  {
      "from": "8613800138000", // Absendernummer
      "to": "8613800138001", // Empfängernummer
      "body": {
        "type": "sticker", // Nachrichtentyp
        "sticker": {
          "link": "http://sample-file.bazadanni.com/download/images/webp/sample.webp" // Stickerlink
        }
      }
    }
    
                
    Diesen Codeblock im schwebenden Fenster anzeigen

    Beschreibung des Template-Objekts

    Vorlagen-Nachricht – Sie müssen zuerst eine Vorlage erstellen, entweder in der Konsole oder per API.

    Parameter Typ Option Beschreibung
    name String erforderlich Name der Vorlage. Zu finden auf der Vorlagen-Seite in der Konsole. Nur Kleinbuchstaben, Zahlen und Unterstriche erlaubt.
    language String erforderlich Vorlagen-Sprachcode.
    components Array aus Objekten optional Wenn Variablen in der Vorlage existieren, muss dieses Feld ausgefüllt werden. Nur ein Komponenten-Objekt im Array erlaubt.
    Beschreibung template.components-Objekt
    Parameter Typ Option Beschreibung
    type String erforderlich Vorlagen-Komponente. Enthält die Komponente Variablen, müssen diese hier übergeben werden. Gültige Werte:
  • header
  • body
  • footer
  • button
  • parameters Parameter-Objekt erforderlich Variable Inhalte setzen
    Beschreibung template.components.parameters-Objekt
    Parameter Typ Option Beschreibung
    type string erforderlich Typ der Variable. Gültige Werte: text, currency, date_time, image, video, document. Multimedia-Typen (image, video, document) nur im Header erlaubt. Weitere Infos zu unterstützten Formaten siehe Mediennachrichten: Formatvorgaben.
    text string optional Bei type = text, der konkrete Inhalt der Variable.
    date_time localizable object optional Bei type = date_time, kann lokalisiert und angepasst angezeigt werden.
    currency localizable object optional Bei type = currency, kann lokalisiert und angepasst angezeigt werden.
    image image object optional Bei type = image, siehe Bild-Objekt.
    video video object optional Bei type = video, siehe Video-Objekt.
    document document object optional Bei type = document, siehe Dokument-Objekt.

    Beispiel

    { "from": "+8613800138000", "to": [ "00447911123456" ], "body": { "type": "template", "template": { "name": "your-template-name", "language": "zh_CN", "components": [ { "type" : "header", "parameters": [{ "type": "document", "document": { "link": "http(s)://the-url", "filename": "your-document-filename" } }] }, { "type": "body", "parameters": [ { "type": "text", "text": "Ihr-Text-String" }, { "type": "currency", "currency": { "fallback_value": "$100.99", "code": "USD", "amount_1000": 100990 } }, { "type": "date_time", "date_time": { "fallback_value": "25. Februar 1977", "day_of_week": 5, "day_of_month": 25, "year": 1977, "month": 2, "hour": 15, "minute": 33 } }, { "type": "date_time", "date_time": { "fallback_value": "25. Februar 1977", "timestamp": 1485470276 } } ] } ] } } }
                  
                  {
        "from": "+8613800138000",
        "to": [
            "00447911123456"
        ],
        "body": {
            "type": "template",
            "template": {          
                "name": "your-template-name",
                "language": "zh_CN",
                "components": [
                  {
                    "type" : "header",
                    "parameters": [{
                             "type": "document",
                             "document": {
                                 "link": "http(s)://the-url",
                                 "filename": "your-document-filename"
                           }
                    }]
                  },
                  {
                     "type": "body",
                     "parameters": [
                            {
                                "type": "text",
                                "text": "Ihr-Text-String"
                            },
                            {
                                "type": "currency",
                                "currency": {
                                    "fallback_value": "$100.99",
                                    "code": "USD",
                                    "amount_1000": 100990
                                }
                            },
                            {
                                "type": "date_time",
                                "date_time": {
                                    "fallback_value": "25. Februar 1977",
                                    "day_of_week": 5,
                                    "day_of_month": 25,
                                    "year": 1977,
                                    "month": 2,
                                    "hour": 15,
                                    "minute": 33
                                }
                            },
                            {
                                "type": "date_time",
                                "date_time": {
                                    "fallback_value": "25. Februar 1977",
                                    "timestamp": 1485470276
                                }
                            }
                        ]
                    }
                ]
            }
        }
    }
    
                
    Diesen Codeblock im schwebenden Fenster anzeigen

    Response-Parameter

    Erfolgreiche Antwort

    Feld Typ Option Beschreibung
    message_id String erforderlich Die ID der EngageLab WhatsApp-Nachricht, die eine Nachricht eindeutig identifiziert.
    request_id String optional Die benutzerdefinierte ID, die bei der Anfrage übergeben wurde. Wird wie empfangen zurückgegeben.
    { "message_id": "cbggf4if6o9ukqaalfug", "request_id": "your-sendno-string" }
                  
                  {
        "message_id": "cbggf4if6o9ukqaalfug",
        "request_id": "your-sendno-string"
    }
    
                
    Diesen Codeblock im schwebenden Fenster anzeigen

    Fehlgeschlagene Antwort

    Der HTTP-Statuscode ist 4xx oder 5xx. Der Response-Body enthält folgende Felder:

    Feld Typ Option Beschreibung
    code int erforderlich Fehlercode. Weitere Informationen siehe Fehlercodes.
    message String erforderlich Fehlerdetails
    { "code": 3002, "message": "whatsapp.template field must be set correctly when type is template" }
                  
                  {
        "code": 3002,
        "message": "whatsapp.template field must be set correctly when type is template"
    }
    
                
    Diesen Codeblock im schwebenden Fenster anzeigen

    Fehlercodes

    Fehlercode HTTP-Code Beschreibung
    1000 500 Interner Fehler
    2001 401 EngageLab-Authentifizierung fehlgeschlagen, kein gültiges Token.
    2002 401 EngageLab-Authentifizierung fehlgeschlagen. Token ist abgelaufen oder wurde deaktiviert.
    2003 400 WhatsApp-Authentifizierung fehlgeschlagen. Bitte wenden Sie sich an den EngageLab-Kundendienst.
    2004 403 Sie haben keine Berechtigung, diese API aufzurufen. Prüfen Sie, ob Sie die Berechtigung zum Versenden von Nachrichten (Absendernummer) für diesen API-Schlüssel haben.
    3001 400 Das Format der Anfrageparameter ist ungültig. Prüfen Sie, ob das JSON-Format verwendet wird.
    3002 400 Die Anfrageparameter sind falsch. Prüfen Sie, ob die Parameter den Anforderungen entsprechen.
    3003 400 Fehlerhafte Anfrageparameter. Weitere Infos siehe die Fehlerbeschreibung im Feld message.
    4001 400 Die entsprechende Ressource existiert nicht. Zum Beispiel wird eine nicht existierende Vorlage beim Versand einer Vorlagen-Nachricht verwendet.

    Hinweise

    Mediennachrichten: Formatvorgaben

    Medientyp Unterstützte Formate (Content-Type) Größenlimit
    image image/jpeg, image/png, ohne Transparenz 5 MB
    video video/mp4, video/3gpp
    Hinweis: Nur H.264-Video- und AAC-Audio-Encoding werden unterstützt.
    16 MB
    audio audio/aac, audio/mp4, audio/amr, audio/mpeg
    audio/ogg; codecs = opus (Hinweis: Nur audio/ogg mit codecs = opus wird unterstützt)
    16 MB
    document 1. Beliebiger MIME-Typ beim Versand von Dokumentnachrichten.
    2. Beim Versand einer Vorlagen-Nachricht im Header nur PDF erlaubt.
    100 MB
    sticker image/webp Statische Sticker: 100 KB
    Animierte Sticker: 500 KB

    Sprachcode

    Weitere Informationen zur Zuordnung von Sprache und Sprachcode finden Sie in dieser Datei:
    Template language code.xlsx

    icon
    Vertrieb kontaktieren