Integrasi & API
Isi Data Webhook dan Cara Memperbaiki Masalahnya
Header dan contoh isi data yang dikirim Jalinara ke penerima webhook, plus cara memeriksa webhook yang tidak sampai atau gagal.
Webhook adalah kiriman otomatis dari Jalinara ke alamat aplikasi Anda saat ada kejadian, misalnya pesan masuk. Halaman ini untuk tim teknis yang membuat penerimanya: apa yang dikirim, dan apa yang diperiksa bila datanya tidak sampai.
Cara mengisi alamat penerima ada di Cara Memasang Webhook Perangkat dan Cara Mengirim Webhook dari Automasi.
Header yang dikirim Jalinara
| Header | Isi | Dikirim oleh |
|---|---|---|
x-jalinara-event |
Nama kejadian | Webhook perangkat dan aksi Automasi |
x-jalinara-event-id |
ID unik kejadian. Pakai untuk membuang data ganda | Webhook perangkat dan aksi Automasi |
x-jalinara-timestamp |
Waktu kirim, dalam detik | Webhook perangkat dan aksi Automasi |
x-jalinara-signature |
v1= diikuti tanda tangan HMAC-SHA256 |
Hanya webhook perangkat yang diberi secret |
x-wa-secret |
Secret apa adanya, untuk kompatibilitas. Form perangkat menyebut header ini | Hanya webhook perangkat yang diberi secret |
Contoh isi data pesan masuk
Nilai di bawah ini fiktif.
{
"device": "dev_xxx",
"sender": "6280000000110",
"pushName": "Pelanggan Uji (contoh)",
"message": "Halo, mau tanya",
"type": "text",
"isGroup": false,
"media_url": null,
"timestamp": 1718700000
}
- Data asli juga membawa kolom
event:message.incominguntuk pesan masuk dandevice.disconnectedsaat perangkat terputus. - Kabar status pesan memakai
"type": "status". - Untuk media,
media_urlberisi tautan file. Pada pesan teks isinyanull.
Contoh ini bukan susunan lengkap. Catat contoh data asli yang tiba di penerima Anda, termasuk dari aksi Automasi, dan jadikan itu acuan. Jangan menebak susunannya.
Cara memeriksa webhook perangkat yang tidak sampai
Kegagalan webhook perangkat tidak tercatat di dashboard Jalinara.
-
Lihat log di aplikasi penerima.
-
Minta tim teknis memanggil
POST /api/gateway/webhook/testdengan API Token (TOKEN_ANDA). -
Bila uji gagal, buka Perangkat & API › Perangkat, klik ikon Edit pada baris perangkat, lalu periksa URL Webhook (opsional). Cocokkan gejalanya dengan tabel di bawah.
Cara memeriksa aksi Kirim webhook (POST) yang gagal
Berbeda dengan webhook perangkat, aksi ini mencatat hasilnya di Riwayat eksekusi.
-
Di sidebar, buka Balas Otomatis › Automasi.
-
Klik ikon Riwayat eksekusi pada baris alur.
Perbesar -
Cari baris Kirim webhook (POST) berstatus ① Gagal, lalu baca alasannya di ② Detail.
Jalinara mencoba ulang hingga 3 kali sebelum mencatat Gagal, jadi satu kiriman bisa sampai ke penerima lebih dari sekali.
-
Cocokkan Detail dengan tabel di bawah.
-
Klik ikon Edit pada baris alur, perbaiki URL webhook, lalu klik Simpan.
Masalah yang paling sering
| Gejala | Penyebab | Perbaikan |
|---|---|---|
| Muncul "URL webhook tidak valid (harus http/https)." atau "URL webhook menunjuk ke alamat internal/terlarang." Atau Detail berisi "webhook gagal: SSRF diblokir: alamat internal/terlarang" | Alamat tidak diawali http:// atau https://, atau mengarah ke jaringan internal (server lokal, jaringan kantor) |
Salin ulang alamat dari aplikasi penerima. Pakai alamat publik yang bisa dijangkau dari internet |
| Penerima tidak mendapat data dari webhook perangkat | Alamat salah, penerima mati, atau alamat internal | Periksa log penerima, atau jalankan uji POST /api/gateway/webhook/test |
| Gagal dengan Detail "HTTP 4xx/5xx" atau "timeout" | Penerima menolak data, error, atau terlalu lama menjawab | Baca Detail dan log penerima. Minta penerima menjawab cepat, lalu memproses data belakangan |
| Data tercatat dua kali, atau n8n membalas berkali-kali | Jalinara mencoba ulang setelah jawaban gagal. n8n juga ikut membalas kabar status | Buang data ganda dengan x-jalinara-event-id. Di n8n, saring data "type": "status" (caranya) |
| Penerima menolak karena tanda tangan tidak cocok | Secret di penerima berbeda dengan di Jalinara | Samakan secret di kedua sisi. Di Jalinara, isi Webhook Secret (opsional) pada form Edit perangkat |
Belum ketemu jawabannya? Buka menu Bantuan di dashboard Jalinara dan kirim tiket ke tim kami.