Inbound Webhooks

Kemas kini terakhir

Inbound webhooks (webhook masuk) membolehkan alat luar mencetuskan tindakan dalam akaun anda. Satu webhook menerima acara bertandatangan daripada perkhidmatan luar (seperti alat tempahan seperti Cal.com), memadankan payload tersebut dengan kenalan, dan menjalankan tindakan pilihan anda pada perbualan mereka — hantar mesej, gunakan urutan mesej, tugaskan, tambah label, dan banyak lagi.

Contoh penggunaan biasa: pelanggan menempah temu janji dalam alat penjadualan anda → webhook tercetus → kenalan tersebut serta-merta menerima mesej pengesahan di WhatsApp dan satu urutan peringatan dijadualkan sebelum temu janji.

Tonton tutorial

Menyediakan satu webhook

  1. Pergi ke Settings → Inbound Webhooks dan klik Add inbound webhook.
  2. Pilih pembekal (atau Generic untuk mana-mana alat yang boleh menghantar JSON) dan Target inbox, kemudian padankan data masuk dengan kenalan (lihat di bawah).
  3. Pilih tindakan yang perlu dijalankan apabila satu acara tiba.
  4. Salin URL webhook ke dalam alat luar, dan aktifkannya.

Setiap webhook boleh diaktifkan atau dinyahaktifkan pada bila-bila masa, dan senarai memaparkan pembekal serta status setiap satu.

Tindakan berfungsi sama seperti dalam Automation — termasuk pemilih peti masuk, penerima, medan subjek e-mel, Cc serta Bcc, dan lampiran fail pada tindakan Send a Message. Tindakan Send a Message juga boleh memetik nilai daripada acara itu, jadi mesej menyatakan apa yang dihantar oleh alat luar (lihat di bawah).

Memadankan data masuk

Setiap baris di bawah Payload mapping mengambil satu medan daripada data masuk dan meletakkannya pada medan kenalan: Name, Phone number, Email, Identifier, Contact ID in the target inbox, WhatsApp username atau atribut tersuai. Kenalan yang dimiliki oleh sesuatu acara ditetapkan di bawah Find the contact (lihat di bawah).

  1. Simpan webhook, klik Listen for test event, dan hantar satu ujian daripada alat anda.
  2. Jika padanan masih kosong, editor mengisinya untuk medan yang dinamakan seperti nama, telefon atau e-mel. Semak, kemudian simpan.
  3. Untuk memilih medan sendiri, buka Field in the incoming data. Ia menyenaraikan setiap medan acara ujian terakhir bersama nilainya, dan anda masih boleh menaip laluan seperti customer.phone.

Senarai medan yang menunjukkan setiap medan acara ujian bersama nilainya

Apabila medan yang dipadankan tiba kosong (teks kosong atau null), atribut tersuai pada baris itu dikosongkan, supaya nilai lama tidak kekal pada kenalan. Contohnya, alat penghantaran yang menghantar "tracking_no": "" untuk perjalanan yang belum ada nombor penjejakan akan mengosongkan nombor penjejakan sebelumnya. Jika medan itu tidak dihantar langsung, atribut itu mengekalkan nilainya. Name, Phone number dan Email tidak pernah dikosongkan oleh nilai kosong.

Menyemak setiap baris padanan

Di bawah setiap baris, editor menunjukkan apa yang dibacanya daripada acara ujian terakhir, contohnya Reads “+60123456789” from the last test event.

Payload mapping yang diisi daripada acara ujian, setiap baris menunjukkan nilai yang dibacanya

Nothing found at this path in the last test event bermaksud laluan itu salah. Medan bermula dari bahagian atas data, jadi alat yang menghantar {"phone": "…"} memerlukan phone, bukan payload.phone.

Peti masuk WhatsApp atau SMS menghubungi kenalan melalui nombor telefon, dan peti masuk e-mel melalui e-mel. Jika tiada baris yang menemuinya, editor memaparkan amaran, kerana acara tersebut akan dilangkau.

Memilih cara kenalan ditemui

Dalam Find the contact, di atas Payload mapping, senaraikan butiran yang memadankan acara dengan kenalan. Butiran pertama yang menemui kenalan akan digunakan.

Kad Find the contact dengan Contact ID in the target inbox, WhatsApp username dan Phone number mengikut susunan itu, ditetapkan untuk melangkau apabila tiada kenalan ditemui

  1. Tambah butiran dengan Add a detail, buang dengan ikon tong sampah, dan seret mengikut susunan.
  2. Padankan satu medan kepada setiap butiran di bawah Payload mapping. Butiran tanpa medan menunjukkan amaran.
  3. Di bawah If no contact is found, pilih Create a new contact atau Skip the event and show it in Recent events.
Butiran Menemui kenalan melalui
Contact ID in the target inbox ID mereka dalam Target inbox sahaja, seperti ID WhatsApp atau ID platform lain dalam peti masuk segerak chat
WhatsApp username Nama pengguna WhatsApp mereka, untuk pelanggan tanpa nombor telefon
Phone number, Email, Identifier Medan yang sama pada kenalan

Webhook baharu bermula dengan Identifier, Email dan Phone number, dan mencipta kenalan apabila tiada yang ditemui. Kenalan yang dicipta dengan Contact ID in the target inbox menyimpan ID itu, jadi acara dan chat seterusnya dengan ID tersebut sampai kepada kenalan yang sama.

Dalam peti masuk segerak chat, tindakan dijalankan pada chat segerak terkini kenalan. Chat yang ditutup kekal ditutup dan tiada chat kosong dimulakan.

Menggunakan nilai daripada acara dalam mesej

  1. Hantar satu acara ujian dahulu (Listen for test event), supaya ada medan untuk dipilih.
  2. Dalam tindakan Send a Message, taip {{ dalam kotak mesej.
  3. Senarai itu bermula dengan medan acara terakhir yang diterima, setiap satu bersama nilainya, contohnya From the last received event: Dinding. Medan kenalan dan perbualan yang biasa menyusul selepasnya.
  4. Pilih satu medan. Ia dimasukkan ke dalam mesej dalam bentuk yang berfungsi.
Medan Apa yang dimasukkan ke dalam mesej
Nama biasa {{payload.Location}}
Nama dengan ruang atau simbol {{payload['Filter Q2']}}
Item dalam senarai, dikira bermula dari 0 {{payload.answers[0].a}}

Pada peti masuk Official WhatsApp API, tambah templat yang diluluskan dengan Add WhatsApp template for closed window. Pemboleh ubah templat itu boleh menggunakan nilai {{payload...}} yang sama. Lead baharu yang tidak pernah menghantar mesej ke nombor anda sentiasa berada di luar tetingkap 24 jam, jadi templat itulah yang mereka terima.

Note: Nilai acara hanya berfungsi dalam Send a Message. Nota peribadi, e-mel pasukan, webhook keluar, message sequence dan peraturan automasi berjalan tanpa acara itu. Untuk menggunakan sesuatu nilai di sana, padankan nilai itu dengan atribut tersuai kenalan dan gunakan {{contact.custom_attribute.<key>}}.

Menyemak apa yang berlaku pada setiap acara

Recent events menyenaraikan 20 acara terakhir dan apa yang berlaku pada setiap satu. Klik Refresh selepas menghantar satu acara.

Recent events dengan satu acara Done dan satu acara Skipped

Keputusan Maksudnya
Done Kenalan ditemui atau dicipta dan tindakan telah dijalankan. Open conversation membuka sembang itu. Jika sesuatu tindakan gagal, namanya disenaraikan di bawah acara.
Skipped Tiada apa yang dicipta. Barisnya menyatakan sebab: tiada nombor telefon atau e-mel ditemui, nombor telefon tidak sah (hantar bersama kod negara, seperti +60123456789), tiada peti masuk sasaran, webhook telah dimatikan, tiada kenalan yang sepadan (apabila webhook ditetapkan untuk melangkau), atau acara tidak membawa sebarang butiran yang digunakan untuk mencari kenalan.
Ignored Acara itu jenis yang tidak digunakan oleh webhook ini, seperti acara Cal.com yang bukan tempahan, penjadualan semula atau pembatalan.
Failed Berlaku masalah di pihak kami, dan pasukan kami dimaklumkan.

Soalan lazim

Kenapa kenalan masih menunjukkan nilai lama?

Alat anda mungkin tidak menghantar medan itu langsung, bukannya menghantarnya kosong. Medan yang tidak dihantar membiarkan atribut seperti sedia ada; hantar medan itu sebagai teks kosong untuk mengosongkannya.

Kenapa nilai payload kosong dalam message sequence atau peraturan automasi saya?

Kedua-duanya berjalan tanpa acara itu. Padankan nilai itu dengan atribut tersuai kenalan, kemudian gunakan {{contact.custom_attribute.<key>}} dalam sequence atau peraturan itu.

Kenapa senarai kosong apabila saya menaip {{?

Senarai itu menunjukkan medan acara terakhir yang diterima. Hantar acara ujian dahulu, kemudian taip {{ sekali lagi.

Berkaitan