Whatsapp Nodes
This page hasn’t been translated into English yet, so you’re reading the Indonesian version. Your browser’s translate feature can help in the meantime.

Node ini menghubungkan N8N langsung ke akun WhatsApp yang sudah terhubung di dibales.ai. WhatsApp Trigger menangkap event masuk sebagai pemicu workflow, sementara WhatsApp (action node) berfungsi mengirim pesan.
Pastikan kamu sudah:
- Menginstall package
@pake-ai/n8n-nodes-dibales-aidi instance N8N kamu - Menghubungkan akun WhatsApp ke dashboard dibales.ai Integrasi Akun Whatsapp
Node 1: WhatsApp Trigger
Memulai workflow setiap kali ada event masuk dari akun WhatsApp yang terhubung.

Parameter

| Parameter | Keterangan |
|---|---|
| Webhook URLs | URL endpoint yang didaftarkan ke dashboard dibales.ai. Tersedia dua mode: Test URL untuk pengujian saat workflow belum aktif, dan Production URL untuk workflow yang sudah aktif dan dipublish. |
| Signature Verification (Opsional) | String webhook secret yang disalin dari halaman Webhooks di dashboard dibales.ai. Digunakan untuk memverifikasi bahwa kiriman event benar-benar dari sistem dibales.ai. |
Setup
- Tambahkan node WhatsApp Trigger ke workflow kamu Cari
dibales.ai - WhatsAppdi panel node N8N, pilih sebagai trigger. - Salin Webhook URL Buka node, expand bagian Webhook URLs, klik tab Test URL & Production URL, lalu copy URL-nya.
- Buka dashboard dibales.ai, pilih agent yang ingin dihubungkan → halaman Webhooks → klik Tambah Webhook.
Baca ini dulu sebelum menyimpan webhook.
Waktu kamu klik simpan di dashboard, dibales.ai langsung mengirim satu request percobaan ke URL yang kamu daftarkan dan menunggu balasan dengan code 200. Kalau N8N belum siap menerima, URL itu membalas error dan webhook gagal disimpan.
A. Mendaftarkan Test URL
- Salin Test URL: Di node WhatsApp Trigger, buka tab Test URL, lalu salin URL-nya.
- Jalankan workflow dalam mode listening: (tetap di N8N) klik Execute workflow (atau Listen for test event dari dalam node). Tunggu sampai N8N menampilkan status menunggu event masuk. Biarkan tab N8N tetap terbuka, jangan klik Stop.
- Simpan webhook di dashboard dibales.ai, selagi masih listening: paste Test URL, lalu Simpan.
Kalau mode listening sudah berhenti sebelum kamu klik Simpan, dashboard menolak dengan error. Klik Execute workflow lagi di N8N, lalu ulangi penyimpanan.

B. Mendaftarkan Production URL
Production URL baru hidup setelah workflow dipublish. Publish dulu, baru simpan di dashboard.
- Publish workflow-nya. Di N8N klik Save, lalu publish workflow lewat toggle di pojok kanan atas. Pastikan statusnya sudah Active.
- Salin Production URL. Buka node WhatsApp Trigger, pilih tab Production URL, lalu salin URL-nya.
- Simpan webhook di dashboard. Buka halaman Webhooks lagi, klik Tambah Webhook, paste Production URL, lalu Simpan.
Kalau workflow belum dipublish, URL ini belum menerima request apapun dan penyimpanan akan gagal dengan error yang sama.
Signature Verification (Optional)
Signature Verification (Webhook Secret) berfungsi untuk mengamankan URL webhook agar tidak bisa diakses tanpa secret key tersebut. Silakan aktifkan jika diperlukan.
- Salin Webhook Secret Setelah webhook dibuat, salin nilai Secret yang tampil di dashboard.

- Paste Secret ke node Kembali ke N8N, buka node Whatsapp Trigger, paste secret ke field Webhook Secret, lalu simpan workflow.

✅ Selesai! Workflow akan aktif menerima event dari WhatsApp. Setiap event yang masuk akan muncul sebagai satu execution di tab Executions.
Output Ports
Node ini memiliki 8 output port. Setiap port aktif untuk tipe event yang berbeda, sehingga kamu bisa membuat routing langsung dari satu trigger ke flow yang berbeda.
| Port | Event | Keterangan |
|---|---|---|
| 0. Message Received | Pesan masuk dari kontak | Teks, gambar, video, audio, file, lokasi, atau kontak yang dikirim ke akun kamu |
| 1. Message Echo | Pesan yang dikirim dari akun kamu sendiri | Berguna untuk logging atau monitoring pesan keluar |
| 2. Reaction | Kontak menambahkan atau menghapus reaksi emoji pada pesan | Field data.reaction.action berisi added atau removed |
| 4. Read Receipt | Pesan yang kamu kirim sudah dibaca oleh kontak | |
| 5. Account Connected | Akun WhatsApp berhasil terhubung ke sistem dibales.ai | Berguna untuk notifikasi atau reset state |
| 6. Account Disconnected | Akun WhatsApp terputus dari sistem dibales.ai, butuh reconnect | Berguna untuk alerting otomatis |
| 7. Other | Event lain yang tidak masuk kategori di atas | Bisa dipakai untuk debugging atau menangkap event baru |
💡 Sambungkan hanya port yang kamu butuhkan. Port yang tidak terhubung tidak akan mempengaruhi performa workflow.
Struktur Data Trigger
Payload WhatsApp menggunakan key data (berbeda dengan Instagram dan TikTok yang menggunakan raw). Gunakan ekspresi berikut untuk mengakses field dari event di node selanjutnya:
Field tersedia di semua event:
| Field | Ekspresi N8N |
|---|---|
| Tipe event | {{ $json.event_type }} |
| Timestamp event | {{ $json.occurred_at }} |
Untuk event pesan (Message Received dan Message Echo):
| Field | Ekspresi N8N |
|---|---|
| Nomor telepon pengirim | {{ $json.data.message.from.phone }} |
| Nama kontak | {{ $json.data.message.from.name }} |
| WhatsApp ID pengirim | {{ $json.data.message.from.wa_id }} |
| Tipe pesan | {{ $json.data.message.type }} |
| Isi teks | {{ $json.data.message.text }} |
| ID pesan | {{ $json.data.message.id }} |
💡 Untuk balas pesan masuk, gunakan
{{ $json.data.message.from.wa_id }}sebagai Chat ID di node WhatsApp Send.
Node 2: WhatsApp
Action node untuk mengirim pesan dan melakukan lookup kontak melalui akun WhatsApp di dibales.ai.

Credential
Di field Credential, pilih credential dengan tipe dibales.ai account. Jika belum ada, buat credential baru dan isi dengan API Key yang tersedia di dashboard dibales.ai.

Ambil API Key dari dashboard dibales.ai
https://app.dibales.ai/agent/integrations/public-api


Resource: Message
Operation: Send

Kirim pesan ke kontak personal atau grup WhatsApp.
Parameter utama yang selalu ada:
| Parameter | Keterangan |
|---|---|
| Chat ID | ID chat tujuan. Format personal: 628xxxxxxxxxx@c.us/99699243663465@lid. Format grup: ID grup WhatsApp. |
| Type | Pilih tipe pesan yang akan dikirim (lihat daftar di bawah). |
Type: Text
| Parameter | Keterangan |
|---|---|
| Text | Isi teks pesan. Mendukung format WhatsApp: *bold*, _italic_, ~strikethrough~ |
| Disable Link Preview | Toggle. Aktifkan untuk mencegah preview link muncul di bawah pesan. Default: OFF |
| Simulate Typing | Toggle. Aktifkan agar sistem menampilkan indikator "sedang mengetik" sesaat sebelum pesan terkirim. Memberikan kesan lebih natural. Default: OFF |
| Reply To Message ID | (Opsional) Isi dengan message_id atau platform_message_id dari pesan sebelumnya untuk membuat reply berantai. |
Type: Image / Video / Audio / File
| Parameter | Keterangan |
|---|---|
| URL | URL publik dari file media yang akan dikirim. File harus bisa diakses secara publik. |
Type: Location
| Parameter | Keterangan |
|---|---|
| Latitude | Koordinat lintang lokasi. Contoh: -6.2088 |
| Longitude | Koordinat bujur lokasi. Contoh: 106.8456 |
💡 Tambahkan Name dan Address lokasi lewat Additional Fields untuk tampilan yang lebih informatif di WhatsApp.
Type: Contact (vCard)
| Parameter | Keterangan |
|---|---|
| vCard | String format vCard. Minimal berisi FN (full name) dan TEL (nomor telepon). |
Contoh vCard minimal:
BEGIN:VCARD
VERSION:3.0
FN:Nama Kontak
TEL:+628xxxxxxxxxx
END:VCARD
Type: Poll
| Parameter | Keterangan |
|---|---|
| Question | Pertanyaan polling yang akan ditampilkan |
| Options | Daftar pilihan jawaban. Klik Add Option untuk menambah pilihan baru. Minimal 2 opsi. |
Operation: React
Tambahkan reaksi emoji ke pesan yang sudah terkirim.
| Parameter | Keterangan |
|---|---|
| Platform Message ID | ID pesan di WhatsApp yang akan diberi reaksi. Ambil dari output send node sebelumnya: platform_message_id |
| Recipient Platform ID | ID kontak penerima |
| Reaction | Pilih emoji reaksi dari dropdown |
Operation: Mark Seen
Tandai pesan masuk sebagai sudah dibaca. Tidak ada parameter tambahan selain Chat ID dan Message ID.
Resource: Contact
Operasi untuk lookup dan verifikasi informasi kontak WhatsApp. Berguna untuk memvalidasi nomor sebelum mengirim pesan, atau untuk mendapatkan identifier yang dibutuhkan oleh sistem.
| Operation | Fungsi | Parameter Utama |
|---|---|---|
| Check Phone | Cek apakah nomor telepon terdaftar di WhatsApp | Phone: nomor format E.164, contoh +628xxxxxxxxxx |
| Get LID by Phone | Ambil WhatsApp LID dari nomor telepon | Phone: nomor format E.164 |
| Get Phone by LID | Ambil nomor telepon dari WhatsApp LID | LID: WhatsApp LID kontak |
| Get Detail | Ambil informasi detail profil kontak | Identifier kontak |
💡 LID (Linked ID) adalah identifier internal WhatsApp yang digunakan di beberapa endpoint API. Jika kamu mendapatkan LID dari trigger event, gunakan Get Phone by LID untuk mendapatkan nomor teleponnya.
Output Data
Semua operation di Resource: Message > Send mengembalikan output dengan struktur yang konsisten:
| Field | Tipe | Keterangan |
|---|---|---|
message_id |
String | ID pesan di sistem dibales.ai |
platform_message_id |
String | ID pesan asli di WhatsApp. Gunakan ini untuk operation React atau Reply To |
sent_at |
String (ISO 8601) | Timestamp saat pesan terkirim |
Akses field ini di node berikutnya dengan ekspresi: {{ $json.message_id }}, {{ $json.platform_message_id }}, dst.