Webhook

Wangsaf mengirim POST berisi JSON ke URL webhook perangkat Anda setiap kali salah satu peristiwa yang diaktifkan terjadi. Tidak ada endpoint API untuk ini, URL dan peristiwa yang aktif diatur dari halaman Perangkat pada dashboard.

Request webhook saat ini dikirim tanpa signature atau secret apa pun untuk memverifikasi pengirimnya. Jangan letakkan URL webhook Anda di tempat publik, dan jangan langsung mempercayai isinya tanpa validasi Anda sendiri di sisi server.

Peristiwa yang dikirim

Empat peristiwa berikut bisa diaktifkan per perangkat. Setiap peristiwa yang aktif memicu satu POST ke webhook Anda dengan body sesuai bentuknya masing-masing di bawah.

Message

Pesan teks masuk ke perangkat.

 
{
  "chat_id": "3EB0ABCDEF1234567890",
  "chat_jid": "628123456789@s.whatsapp.net",
  "text": "Halo, apakah stoknya masih ada?",
  "info": {
    "is_from_me": false,
    "is_group": false,
    "is_edit": false,
    "is_document_with_caption": false,
    "is_view_once": false
  },
  "sender": {
    "name": "Budi",
    "jid": "628123456789@s.whatsapp.net",
    "type": "user"
  },
  "timestamp": 1758012345
}

Connected

Sesi WhatsApp perangkat berhasil tersambung.

 
{ "device_status": "connected" }

Disconnected

Sesi WhatsApp perangkat terputus (jaringan, ponsel mati, dan sejenisnya).

 
{ "device_status": "disconnected" }

LoggedOut

Perangkat keluar dari WhatsApp (unlink dari ponsel, bukan sekadar putus jaringan). Anda perlu memindai ulang kode QR dari dashboard untuk menyambungkannya lagi.

 
{ "device_status": "disconnected" }

Respons yang diharapkan

Server Anda cukup membalas dengan kode 2xx apa pun sebelum timeout, isi body respons Anda tidak diproses. Saat ini pengiriman webhook tidak diulang otomatis jika gagal.