Pilih event pas kamu setting di Developer → Webhooks atau POST /v1/settings/developer/webhooks/endpoints (filterTypes / event yang kamu aktifin di aplikasi).
Messaging (buat kebanyakan integrasi)
Subscribe event ini buat otomatisasi kirim/terima:
| Event | Ke-trigger kapan | Contoh body (field bisa lebih banyak di production) |
|---|---|---|
message.new |
Ada pesan baru di conversation (masuk dari kontak, atau echo outbound tertentu). | Cek di bawah |
message.sent |
Pesan outbound kekirim dari workspace kamu. | conversation_id, message_id, channel_id |
message.status_update |
Status pesan terkirim berubah — sent, delivered, read, atau failed. |
message_id, status, plus conversation_id, organization_id |
conversation.updated |
Metadata conversation berubah (assignee, status, preview, tag). | conversation_id, status |
contact.updated |
Profil kontak yang nyambung ke conversation ke-update (kadang juga ke-trigger pas create). | contact_id, name, organization_id |
template.status_update |
Status approval template WhatsApp berubah. | template_id, status |
message.new (teks masuk)
{
"message_id": "9f1fd66d-c37a-4b50-a8c2-b4dca523f9c8",
"conversation_id": "0f89b0f9-74b4-44f9-b9b6-48f6d4de57aa",
"contact_id": "c1a2b3c4-d5e6-7890-abcd-ef1234567890",
"channel_id": "wzp_abc123",
"direction": "inbound",
"from_phone": "6281234567890",
"msg_type": "text"
}message.status_update
{
"message_id": "9f1fd66d-c37a-4b50-a8c2-b4dca523f9c8",
"conversation_id": "0f89b0f9-74b4-44f9-b9b6-48f6d4de57aa",
"status": "delivered",
"organization_id": "org_123"
}Nilai status ngikutin data pesan dari GET /v1/messages/{messageID} (sent, delivered, read, failed, …).
Contoh yang lebih lengkap: Contoh payload webhook.
| Wazapin | Kapso (terstruktur) | YCloud |
|---|---|---|
message.new |
whatsapp.message.received |
whatsapp.inbound_message.received |
message.sent |
whatsapp.message.sent |
(outbound di whatsapp.message.updated) |
message.status_update |
whatsapp.message.delivered / .read / .failed |
whatsapp.message.updated |
Wazapin cuma pakai satu event status dengan field status — nggak misahin tiap transisi jadi event beda-beda.
Commerce
| Event | Ke-trigger kapan |
|---|---|
commerce.order.updated |
Status pesanan atau pembayaran berubah di Commerce. |
{
"order_id": "ord_01h2",
"order_no": "INV-1042",
"status": "paid",
"payment_status": "paid"
}Muncul kalau produk kamu pakai webhook CRM Wazapin. Contoh:
| Event | Ke-trigger kapan |
|---|---|
crm.record.created |
Record CRM dibikin (deal, orang, perusahaan, task, …). |
crm.record.updated |
Record CRM di-update. |
crm.record.deleted |
Record CRM dihapus. |
crm.deal.stage_changed |
Deal pindah ke stage pipeline lain. |
crm.task.completed |
Task ditandain selesai. |
crm.comment.created / crm.comment.deleted |
Komentar di record. |
crm.list.entry_added / crm.list.entry_removed |
Member list berubah. |
crm.relationship.linked / crm.relationship.unlinked |
Relasi antar record berubah. |
crm.import.committed |
Job import selesai. |
| … | Cek pengaturan webhook di aplikasi buat daftar CRM lengkap. |
Contoh bentuk buat event record:
{
"object_kind": "people",
"record_id": "rec_01h2",
"display_name": "Ayu Pratiwi",
"organization_id": "org_01h2"
}