Bahasa Indonesia
Webhook (Deprecated)
Udah nggak tersedia
Webhook cuma ada di engine Zawa versi lama. Engine yang sekarang nggak punya endpoint /webhook, jadi request ke sana bakal dapet 404. Halaman ini disimpan buat arsip aja, jangan dipakai buat fitur baru ya.
Dulu, webhook dipakai biar Zawa bisa ngabarin server kamu secara realtime tiap ada pesan masuk. Ini ringkasan cara kerjanya waktu itu.
Set Webhook
POST/webhookNyimpen konfigurasi webhook: URL tujuan dan token pengenal.
| Kolom | Tipe | Keterangan |
|---|---|---|
url | string | URL server kamu yang bakal nerima notifikasi. |
token | string | Token yang dikirim balik di header x-token, biar kamu tahu request-nya beneran dari Zawa. |
Response-nya { "id": "..." }.
Ambil Webhook
GET/webhookAmbil konfigurasi webhook yang udah disimpan. Kalau belum pernah di-set, url dan token berisi string kosong.
json
{
"webhook": {
"url": "https://example.com/zawa-webhook",
"token": "rahasia-banget"
}
}Isi Notifikasi
Zawa ngirim request ke URL webhook dengan header x-token dan body kayak gini:
json
{
"type": "message",
"data": "{\"Info\":{...},\"Message\":{...}}"
}| Kolom | Tipe | Keterangan |
|---|---|---|
type | string | message buat pesan masuk, receipt buat tanda terima (terkirim/dibaca). |
data | string | Data mentah dari WhatsApp dalam bentuk string JSON. Isinya beda-beda tergantung tipe pesan. |
Zawa nggak ngolah pesan masuk sama sekali, termasuk media. Jadi kalau ada pesan gambar, file-nya harus didekripsi sendiri. 😅
Contoh data buat pesan teks
json
{
"Info": {
"Chat": "6281234567890@s.whatsapp.net",
"Sender": "6281234567890:74@s.whatsapp.net",
"IsFromMe": false,
"IsGroup": false,
"ID": "3EB05F22D34BDE64079197",
"Type": "text",
"PushName": "Azickri",
"Timestamp": "2025-07-17T13:23:12+07:00"
},
"Message": {
"conversation": "Halo, ini dari Zawa"
}
}