Sign inGet started

WhatsApp-Textnachrichten empfangen

Ein Kontakt, der in den Chat tippt, erzeugt eine eingehende Nachricht mit text. Es ist der häufigste eingehende Arm und derjenige, der das Kundenservice-Fenster öffnet oder zurücksetzt.

Was eine eingehende Textnachricht enthält

text.body enthält, was der Kontakt getippt hat, und sonst liegt nichts auf dem Arm:
Codebeispiel
{
  "id": "wam_01kya19eknftrs2s6p82asmvnh",
  "direction": "inbound",
  "from": { "phone_number": "+14155550100", "display_name": "Alex Rivera" },
  "to": { "phone_number": "+13124495569" },
  "status": "received",
  "text": { "body": "Is my order out for delivery yet?" },
  "created_at": "2026-08-25T09:04:11Z"
}
preview_url ist ein Feld der Sendeseite. Eine eingehende Textnachricht enthält kein Flag für eine Linkvorschau, unabhängig davon, was der Client des Kontakts dargestellt hat. Eine URL in body wird daher als Teil des Textes zurückgelesen.
Das Leseschema deklariert kein Maximum für ein eingehendes body. Die Obergrenze von 4096 Zeichen gehört zur Sendeseite. Dimensionieren Sie Ihren Speicher daher als unbegrenzten Text und nicht nach einem Limit, das der eingehende Arm nicht zusichert.

Ein Text als zitierte Antwort

Wenn der Kontakt auf eine Ihrer Nachrichten antwortet, indem er sie zitiert, bleibt der Arm unverändert, und in_reply_to_message_id benennt die Nachricht, auf die geantwortet wurde:
Codebeispiel
{
  "id": "wam_01kyb2m4xq7whs0d8n3prv6tez",
  "direction": "inbound",
  "from": { "phone_number": "+14155550100" },
  "to": { "phone_number": "+13124495569" },
  "status": "received",
  "in_reply_to_message_id": "wam_01kya19eknftrs2s6p82asmvnh",
  "text": { "body": "Yes, that one" },
  "created_at": "2026-08-25T09:06:02Z"
}
WhatsApp markiert nicht jede Antwort, und eine nicht markierte enthält gar keine ID. Unter Zitierte Antworten im Hub erfahren Sie, was die Auflösung verfehlen kann und wie Sie ohne sie korrelieren.

Der Webhook-Payload

whatsapp.received liefert denselben Arm im Event-Envelope, sodass ein Endpoint den Text verarbeiten kann, ohne die Nachricht erneut abzurufen:
Codebeispiel
{
  "type": "whatsapp.received",
  "timestamp": "2026-08-25T09:04:11.118Z",
  "data": {
    "whatsapp_id": "wam_01kya19eknftrs2s6p82asmvnh",
    "workspace_id": "ws_01ky7m235keycbnwyajabe1a6b",
    "direction": "inbound",
    "from": { "phone_number": "+14155550100", "display_name": "Alex Rivera" },
    "to": { "phone_number": "+13124495569" },
    "text": { "body": "Is my order out for delivery yet?" },
    "tags": null,
    "metadata": null
  }
}

Worauf Sie achten sollten

  • Ein Text ist der einfachste Weg, wie ein Kontakt das Fenster erneut öffnet. Jede eingehende Nachricht setzt das Service-Fenster auf 24 Stunden zurück, und ein Text ist das, was die meisten Kontakte senden; eine freie Antwort Ihrerseits ist ab diesem Moment zustellbar.
  • from kann ohne Telefonnummer eintreffen. Ein Kontakt, der einen WhatsApp-Benutzernamen verwendet, erreicht Sie über eine geschäftsbezogene Benutzer-ID. Lesen Sie die Identität daher aus from aus, anstatt davon auszugehen, dass from.phone_number gesetzt ist.
  • Der Body ist das, was der Kontakt selbst getippt hat. Ein Tippen auf etwas, das Sie gesendet haben, kommt stattdessen als interaktive Antwort auf einem eigenen Arm an.

Nächste Schritte