# Interaktive Antworten über WhatsApp empfangen

Ein Tap auf einen Antwort-Button, eine Listenzeile oder die Quick-Reply-Schaltfläche eines Templates kommt als eigene eingehende Nachricht mit `interactive_reply` an. Der Arm gibt Ihnen das Handle zurück, das Sie beim Senden gesetzt haben, sodass ein Flow anhand Ihres eigenen Bezeichners verzweigt – nicht anhand des Labels, das der Kontakt gesehen hat.

## Was eine eingehende interaktive Antwort enthält

`type` benennt die Art des Taps, und das gleichnamige Feld enthält ihn:

```json
{
  "id": "wam_01kyb2m4xq7whs0d8n3prv6tez",
  "direction": "inbound",
  "from": { "phone_number": "+14155550100" },
  "to": { "phone_number": "+13124495569" },
  "status": "received",
  "in_reply_to_message_id": "wam_01kya19eknftrs2s6p82asmvnh",
  "interactive_reply": {
    "type": "button",
    "button": { "slug": "cancel-booking", "text": "Cancel" }
  },
  "created_at": "2026-08-25T09:04:11Z"
}
```

| `type`   | Feld     | Was es enthält                                                                            |
| -------- | -------- | ----------------------------------------------------------------------------------------- |
| `button` | `button` | `slug` und `text` eines Antwort-Buttons oder der Quick-Reply-Schaltfläche eines Templates |
| `list`   | `list`   | `slug` und `text` der vom Kontakt gewählten Zeile, plus `description`, falls vorhanden    |

Eine Listenzeile ersetzt `button` durch `list` und fügt die zweite Zeile hinzu, die die Zeile angezeigt hat:

```json
{
  "interactive_reply": {
    "type": "list",
    "list": {
      "slug": "priority_express",
      "text": "Priority Mail Express",
      "description": "Next day to 2 days"
    }
  }
}
```

`slug` ist das Handle, das Sie deklariert haben und das der Kontakt nie gesehen hat; `text` ist das Label, das er gelesen hat. Verzweigen Sie auf `slug`. Labels werden umformuliert und übersetzt, und bei einem Tap auf die Quick-Reply-Schaltfläche eines Templates ist `slug` die Payload, die das Template deklariert hat – WhatsApp setzt sie auf das eigene Label des Buttons.

Die Liste der Arten ist offen: WhatsApp fügt im Laufe der Zeit neue interaktive Arten hinzu. Behandeln Sie einen `type`, den Sie nicht kennen, als zukünftige Art statt als Fehler und loggen Sie die Nachricht, anstatt den Lesevorgang abbrechen zu lassen.

## Einen Tap der gesendeten Nachricht zuordnen

`in_reply_to_message_id` benennt die Nachricht, die den Button oder das Menü enthielt – so wissen Sie, zu welcher Frage diese Antwort gehört. WhatsApp liefert das nicht bei jedem Tap, und die Auflösung kann ebenfalls fehlschlagen – in diesem Fall wird das Feld weggelassen statt leer gemeldet. Der Hub-Abschnitt [Zitierte Antworten](/docs/guides/whatsapp/receiving-whatsapp#quoted-replies) erklärt, was ein Fehlschlag bedeutet und wie lange eine zitierte Nachricht auflösbar bleibt.

Wenn die Zuordnung zuverlässig sein muss, legen Sie Ihre eigene Referenz in `slug` selbst oder in `metadata` beim Senden ab, statt sich auf das Feld zu verlassen. Siehe [Nachricht zitieren](/docs/guides/whatsapp/sending-whatsapp#quoting-a-message) für die Sendeseite.

## Die zwei Taps, die woanders ankommen

Zwei interaktive Typen antworten ganz ohne `interactive_reply`:

- Eine [Standortanfrage](/docs/guides/whatsapp/message-types/interactive/location-requests) kommt als gewöhnlicher eingehender [Standort](/docs/guides/whatsapp/receiving-whatsapp/location) zurück.
- Eine [Kontaktinfo-Anfrage](/docs/guides/whatsapp/message-types/interactive/contact-info-requests) kommt als [Kontaktkarten](/docs/guides/whatsapp/receiving-whatsapp/contact-cards) zurück, mit `origin` auf `contact_request` gesetzt.

Ein [Link-Button](/docs/guides/whatsapp/message-types/interactive/cta-url-buttons) sendet nichts zurück: Der Kontakt verlässt die App für die URL, und keine eingehende Nachricht zeichnet den Tap auf. Eine Integration, die nur `interactive_reply` überwacht, verpasst alle drei.

## Die Webhook-Payload

`whatsapp.received` enthält den `interactive_reply`-Arm im Event-Envelope, sodass ein Bot auf einen Tap antworten kann, ohne die Nachricht zurückzulesen:

```json
{
  "type": "whatsapp.received",
  "timestamp": "2026-08-25T09:04:11.118Z",
  "data": {
    "whatsapp_id": "wam_01kyb2m4xq7whs0d8n3prv6tez",
    "workspace_id": "ws_01ky7m235keycbnwyajabe1a6b",
    "direction": "inbound",
    "from": { "phone_number": "+14155550100", "display_name": "Alex Rivera" },
    "to": { "phone_number": "+13124495569" },
    "in_reply_to_message_id": "wam_01kya19eknftrs2s6p82asmvnh",
    "interactive_reply": {
      "type": "button",
      "button": { "slug": "cancel-booking", "text": "Cancel" }
    },
    "tags": null,
    "metadata": null
  }
}
```

## Worauf Sie achten sollten

- **`interactive` und `interactive_reply` sind entgegengesetzte Richtungen.** `interactive` ist das, was Sie gesendet haben – es kommt nie eingehend an; `interactive_reply` ist das, was der Kontakt angetippt hat – es erscheint nie in einer ausgehenden Nachricht.
- **Ein Tap setzt das Service-Fenster zurück.** Es handelt sich um eine eingehende Nachricht, die 24 Stunden für formlose Antworten wieder öffnet – genau wie eine Textnachricht.
- **Ein Kontakt kann denselben Button zweimal antippen.** Taps werden nicht dedupliziert, jeder ist eine eigene Nachricht mit eigener ID. Gestalten Sie die Aktion, die Sie bei einem `slug` ausführen, idempotent.
- **Ein Tap auf ein altes Menü kommt trotzdem an.** Ein Kontakt, der zurückscrollt, kann einen Button von vor Tagen antippen. Prüfen Sie daher, ob der Flow noch offen ist, statt anzunehmen, der Tap beantworte Ihre letzte Nachricht.

## Nächste Schritte

- [So funktioniert der Empfang](/docs/guides/whatsapp/receiving-whatsapp): das eingehende Envelope, Medienabruf und der `whatsapp.received`-Webhook
- [Interaktive WhatsApp-Nachrichten](/docs/guides/whatsapp/message-types/interactive): die sechs Typen, die ein Empfänger antippen kann
- [WhatsApp-Antwort-Buttons](/docs/guides/whatsapp/message-types/interactive/reply-buttons): die Sendeseite eines Button-Taps
- [WhatsApp-Listenmenüs](/docs/guides/whatsapp/message-types/interactive/list-menus): die Sendeseite einer Zeilenauswahl

## Related resources

- [Connecting WhatsApp to Bird: from buying a number to a live channel](/learn/whatsapp/connecting-whatsapp-to-bird) (video)
- [What is the 24-hour customer service window on WhatsApp?](/explained/whatsapp/what-is-the-24-hour-customer-service-window) (answer)
- [WhatsApp message builder](/tools/whatsapp-message-builder) (tool)
- [WhatsApp](/products/whatsapp) (product)

[Get an implementation brief](/learn/workspace?topic=whatsapp)
