Webhook digunakan untuk menerima pesan dan notifikasi status pesan melalui metode HTTP POST.
Status Pesan
Webhook status pesan digunakan untuk menerima notifikasi terkait status pesan yang dikirim menggunakan WhatsApp. Status pesan dapat berupa salah satu dari berikut: dihapus, gagal, terkirim, terkirim ke penerima, atau dibaca. Status ini disediakan oleh WhatsApp.
Catatan:
Ketika status pesan berubah, notifikasi akan dikirim ke URL panggilan balik yang telah ditentukan.
Jika klien mengembalikan respons 200 OK, notifikasi akan dikirim ke klien. Jika tidak, percobaan ulang akan dilakukan.
Parameter Masukan
| Parameter | Tipe | Diperlukan | Contoh | Deskripsi |
| MessageId | String | Ya | 123456789 | ID unik dari pesan. ID ini dihasilkan oleh ChatAPP. |
| To | String | Ya | 123456789 | ID pengguna yang menerima pesan. |
| From | String | Ya | 123456789 | ID pengguna yang mengirim pesan. |
| Status | String | Ya | terkirim | Status dari pesan. |
| StatusDescription | String | Ya | Pesan telah dikirim ke penyedia saluran. | Deskripsi dari status. Untuk informasi lebih lanjut, lihat tabel Status. |
| Timestamp | String | Ya | 1591861777000 | Waktu ketika pesan memasuki status, dalam GMT. |
| Error | String | Tidak | OUT_OF_SERVICE | Kode kesalahan yang dikembalikan saat terjadi kesalahan tertentu. Untuk informasi lebih lanjut, lihat Kode Kesalahan. |
| ErrorDescription | String | Tidak | Sistem tidak berfungsi. | Deskripsi dari kode kesalahan. Untuk informasi lebih lanjut, lihat Kode Kesalahan. |
| MsgFrameType | String | Tidak | pesan | Jenis pesan.
|
| Type | String | Tidak | gambar | Jenis sumber daya media yang terkandung dalam pesan. Nilai valid:
|
Contoh Notifikasi
[{
"MessageId": "123456789", // ID unik dari pesan.
"To": "123456789", // ID pengguna yang menerima pesan.
"From": "123456789", // ID pengguna yang mengirim pesan.
"Status": "sent", // Status dari pesan. Nilai valid: sent, delivered, read, failed, dan deleted.
"StatusDescription": "Pesan dikirim ke penyedia saluran.", // Deskripsi dari status.
"Timestamp": "1591861777000", // Waktu ketika pesan memasuki status, dalam GMT.
"Error": "OUT_OF_SERVICE", // Kode kesalahan yang dikembalikan.
"ErrorDescription": "Sistem tidak berfungsi.", // Deskripsi dari kode kesalahan.
"MsgFrameType": "template",
"Type": "none"
}]Status
| Status | Deskripsi |
| terkirim | Pesan dikirim ke penyedia saluran. |
| Dikirim | Pesan dikirim ke klien pengguna. Jika pengguna telah menerima pesan, WhatsApp mungkin mengembalikan status dibaca alih-alih terkirim ke penerima. Ini karena jika pengguna telah membaca pesan, pesan pasti sudah terkirim ke penerima. |
| dibaca | Pesan dibaca oleh pengguna. |
| gagal | Pesan gagal dikirim. |
| dihapus | Pesan dihapus oleh pengguna. |
Parameter Keluaran
| Parameter | Tipe | Diperlukan | Deskripsi |
| kode | Angka | Ya | Kode dari respons. Nilainya harus 0. |
| msg | String | Tidak | Deskripsi dari respons. |
{
"kode" : 0,
"msg" : "Pesan diterima."
}Pesan Arah Masuk
Webhook pesan arah masuk digunakan untuk menerima pesan yang dikirim melalui WhatsApp.
Catatan:
Jenis pesan yang didukung mencakup teks, lokasi, gambar, audio, dan video. Jenis lain seperti sistem, dokumen, dan kontak tidak didukung.
Pesan grup tidak didukung.
Jika klien mengembalikan respons 200 OK, pesan akan dikirim ke klien. Jika tidak, percobaan ulang akan dilakukan.
Parameter Masukan
| Parameter | Tipe | Diperlukan | Contoh | Deskripsi |
| MessageId | String | Ya | 123456789 | ID unik dari pesan. ID ini dihasilkan oleh ChatAPP. |
| ChannelType | String | Ya | Jenis saluran pesan. Contoh: whatsapp. | |
| From | String | Ya | 86152345434311 | ID pengguna yang mengirim pesan. |
| To | String | Ya | 123456789 | ID pengguna yang menerima pesan. |
| Timestamp | String | Ya | 1591861777000 | Waktu ketika pesan dikirim, dalam GMT. |
| Type | String | Ya | teks | Jenis pesan. Nilai valid: teks, lokasi, gambar, audio, dan video. |
| Message | String | Tidak | Saya menerima pesan. | Isi dari pesan jenis teks. |
Contoh Pesan
[{
"MessageId": "123456789", // ID unik dari pesan.
"ChannelType": "whatsapp",// Jenis saluran pesan. Nilai valid: whatsapp, messager, viber, dan line.
"To": "123456789", // ID pengguna yang menerima pesan.
"From": "86152345434311",// ID pengguna yang mengirim pesan.
"Timestamp": "1591861777000", // Waktu ketika pesan dikirim, dalam GMT.
"Type": "text", // Jenis pesan. Nilai valid: teks, lokasi, gambar, audio, dan video.
"Message": "Saya menerima pesan.",
}]