Webhooki WhatsApp
Bird przesyła aktywność WhatsApp na Twój endpoint w czasie rzeczywistym, więc nie musisz odpytywać o nią cyklicznie. Subskrybuj ze strony Webhooks lub za pomocą POST /v1/webhooks. Przewodnik po webhookach opisuje endpointy, weryfikację podpisów i ponowne próby.
Zdarzenia, które możesz subskrybować
Każde zdarzenie zawiera link do swojego payloadu.
| Zdarzenie | Występuje, gdy |
|---|---|
whatsapp.accepted | Bird akceptuje żądanie wysyłki wychodzącej |
whatsapp.sent | Bird przekazuje wiadomość do sieci WhatsApp |
whatsapp.delivered | WhatsApp potwierdza dostarczenie na urządzenie odbiorcy |
whatsapp.read | Odbiorca otwiera wiadomość |
whatsapp.failed | Dostarczenie wiadomości nie powiodło się |
whatsapp.rejected | Bird odrzuca wiadomość przed jej wysłaniem |
whatsapp.received | Kontakt wysyła Ci wiadomość |
whatsapp.reacted | Kontakt dodaje, zmienia lub usuwa reakcję |
whatsapp_suppression.created | W Twoim obszarze roboczym pojawia się blokada |
whatsapp.group.join_request_created | Ktoś prosi o dołączenie do grupy |
whatsapp.group.join_request_revoked | Ktoś anuluje prośbę o dołączenie do grupy |
Lista typów zdarzeń jest otwarta: nowe typy mogą być dodawane z czasem, więc traktuj nierozpoznaną wartość jako przyszłe zdarzenie, a nie jako błąd.
Koperta zdarzenia
Każde zdarzenie WhatsApp używa standardowej koperty webhooka: type, timestamp oraz obiekt data specyficzny dla danego typu.
{
"data": {
"direction": "outbound",
"from": { "phone_number": "+13124495569" },
"metadata": { "session_id": "sess_4821" },
"tags": [{ "name": "flow", "value": "login-otp" }],
"to": { "phone_number": "+14155550100" },
"whatsapp_id": "wam_01ky7qbvswf3fvyaw3az90391c",
"workspace_id": "ws_01ky7m235keycbnwyajabe1a6b"
},
"timestamp": "2026-07-23T14:51:39.913Z",
"type": "whatsapp.delivered"
}Pola obecne w każdym zdarzeniu wiadomości
Każdy payload webhooka WhatsApp dla wiadomości zawiera whatsapp_id, workspace_id, direction, from, to, tags i metadata. Zdarzenia reakcji, blokady i grupy nie dotyczą wiadomości, więc każde ma własną strukturę opisaną na swojej stronie.
- Adresy:
fromitomogą zawierać numer E.164 wphone_number, identyfikator użytkownika w zakresie firmy Meta wbsuidlub oba. Wiadomość odebrana od użytkownika WhatsApp zawiera także publikowany przez niego profil, wusernameidisplay_name. tagsimetadatamają wartośćnull, gdy wysyłka nie zawierała żadnego z nich.in_reply_to_message_idpojawia się w każdym zdarzeniu wychodzącym wiadomości wysłanej jako odpowiedź, odwhatsapp.acceptedprzezwhatsapp.read,whatsapp.failedlubwhatsapp.rejected, wskazując wiadomość, na którą odpowiada.
Payloady zdarzeń nie zawierają kosztu. Odczytaj wiadomość za pomocą GET /v1/whatsapp/messages/{message_id}, aby zobaczyć, ile kosztowała.
Kolejne kroki
- Webhooki statusu wiadomości: dane dostarczenia i niepowodzenia
- Webhooki wiadomości przychodzących: dane
whatsapp.received - Webhooki reakcji: ładunek
whatsapp.reacted - Przewodnik po webhookach: endpointy, sygnatury, ponowienia i pełny katalog zdarzeń
Powiązane zasoby
Przejdź do dokumentacji, przewodników i przykładów dotyczących tego tematu.