Konfigurasi blok tindakan "Integrasi eksternal"

Cara menyiapkan blok tindakan seperti "Kirim webhook pesan yang dipicu", "Kirim webhook kontak", dan "Kirim permintaan HTTP"

Ditulis oleh Iqmal ()

Diperbarui pada July 27th, 2024

Semua blok tindakan memerlukan pengaturan dalam bentuk blok, tempat Anda menentukan parameter untuk tindakan yang dipilih. Dalam artikel ini, kami akan memandu Anda tentang cara menyiapkan setiap blok tindakan “Integrasi eksternal” sehingga flow Anda dapat menjalankan tugas yang sesuai untuk mencapai hasil yang Anda inginkan.
 

Kirim webhook pesan yang dipicu

⚠️ Tindakan "Kirim pesan pemicu webhook" hanya akan tersedia untuk pengguna paket Premium dan Enterprise setelah periode beta Flow Builder

 

Tindakan "Kirim webhook pesan yang dipicu" memungkinkan Anda mengirim data terkait pesan pelanggan yang memicu pendaftaran flow mereka ke sistem eksternal.

Prasyarat untuk menggunakan blok ini adalah:

  • blok pemicu adalah salah satu dari berikut ini
    • Pesan masuk diterima
    • Pesan pelanggan baru diterima
    • Pesan keluar terkirim
  • Sistem eksternal dapat menerima webhook masuk dari SleekFlow

Siapkan formulir blok tindakan "Kirim pesan webhook yang dipicu" dengan mengikuti langkah-langkah yang diuraikan di bawah ini:

  1. Siapkan formulir blok
  2. Pratinjau payload webhook
     

Siapkan formulir blok

Untuk menyiapkan formulir blok “Kirim pesan webhook yang dipicu”:

  1. Klik pada blok tindakan "Kirim pesan webhook yang dipicu" untuk membuka formulirnya, yang akan muncul di sisi kanan layar


     
  2. Formulir blok berisi bidang berikut untuk Anda konfigurasikan agar SleekFlow mengirim data payload webhook dari pesan yang dipicu ke sistem eksternal Anda:

    1. URL Webhook - Masukkan URL webhook yang disediakan oleh sistem eksternal Anda
    ingin mengirim data ke
    2. Header - Aktifkan ini untuk menyediakan data tambahan apa pun yang diperlukan oleh webhook
    melalui header permintaan. Silakan merujuk ke webhook sistem eksternal Anda
    dokumentasi untuk melihat apakah ada data tambahan yang perlu diteruskan melalui
    meminta header webhook Anda.


     

Pratinjau payload webhook

Untuk melihat preview payload:

  1. Klik tombol "Preview payload" di formulir blok untuk melihat contoh payload kontak dan parameternya yang akan dikirim ke webhook sistem eksternal Anda


     
  2. Modal akan menampilkan struktur data payload dalam sintaksis JSON


     

Perbedaan dari webhook pesan dalam aturan otomatisasi SleekFlow 1.0

Webhook pesan dapat dikirim ke sistem eksternal dari "Otomasi" SleekFlow 1.0 dan "Pembuat flow" di SleekFlow 2.0. Namun, sintaksis dan format muatan webhook mungkin berbeda di antara keduanya.

Pemetaan antara payload webhook yang dikirim dari "Automations" dan "Flow Builder" diuraikan dalam tabel di bawah:
 

   
Parameter muatan otomatisasi Parameter muatan Flow Builder
contactEmail “Email” di bawah objek “kontak”.
whatsappFromId
 
N/A
whatsappFrom
 
sflowan_id
whatsappFromName
 
“first_name” & “last_name” pada objek “contact”, dari/ke dapat ditentukan dengan is_sent_from_ sleekflow , true berarti pesan keluar dari perusahaan dan false berarti pesan masuk dari pelanggan
whatsappToId N/A
whatsappTo Nomor telepon
whatsappToName “first_name” & “last_name” pada objek “contact”, dari/ke dapat ditentukan dengan is_sent_from_ sleekflow , true berarti pesan keluar dari perusahaan dan false berarti pesan masuk dari pelanggan
to
 
Nomor telepon
from sflowan_id
id pesan_id
companyId “company_id” di bawah objek “contact” (belum aktif)
conversationId percakapan_id
messageUniqueID pesan_unique_id
channel channe;
whatsappSender dapat ditentukan dengan is_sent_from_ sleekflow , true berarti pesan keluar oleh perusahaan dan false berarti pesan masuk dari pelanggan
WhatsAppReceiver objek “kontak”.
messageType tipe_pesan
deliveryType tipe_pengiriman_pesan
messageContent isi pesan
uploadedFiles

Tergantung pada jenis file, ditemukan di:

  • “pesan_audio”
  • “pesan_dokumen”
  • “pesan_gambar”
  • “pesan_video”
     
createdAt dibuat_di
updatedAt diperbarui_di
timestamp stempel waktu_pesan (misal: 1704859931)
status status_pesan
channelName N/A
isSentFromSleekflow is_sent_from_ sleekflow
isSandbox
 
“is_sandbox” di bawah objek “kontak”.
channelIdentityId sflowan_id
isFromImport N/A
quotedMsgId
 
“message_id” di bawah objek “quoted_message”.
quotedMsgBody
 
“message_content” di bawah objek “quoted_message”.

 

Kirim webhook kontak

⚠️ Tindakan "Kirim webhook kontak" hanya akan tersedia untuk pengguna paket Premium dan Enterprise setelah periode beta Flow Builder

 

Tindakan "Kirim webhook kontak" memungkinkan Anda mengirim data terkait kontak yang terdaftar di flow ke sistem eksternal. Prasyarat untuk menggunakan blok ini adalah sistem eksternal harus dapat menerima webhook masuk dari SleekFlow.

Siapkan formulir blok tindakan "Kirim kontak webhook" dengan mengikuti langkah-langkah yang diuraikan di bawah ini:

  1. Siapkan formulir blok
  2. Preview payload webhook
     

Siapkan formulir blok

Untuk menyiapkan formulir blok “Kirim webhook kontak”:

  1. Klik pada blok tindakan "Kirim kontak webhook" untuk membuka formulirnya, yang akan muncul di sisi kanan layar


     
  2. Formulir blok berisi bidang berikut untuk Anda konfigurasikan agar SleekFlow mengirim data payload webhook dari kontak terdaftar ke sistem eksternal Anda:

    1. URL Webhook - Masukkan URL webhook yang disediakan oleh sistem eksternal Anda
    ingin mengirim data
    2. Header - Aktifkan ini untuk menyediakan data tambahan apa pun yang diperlukan oleh webhook
    melalui header permintaan. Silakan merujuk ke webhook sistem eksternal Anda dokumentasi untuk melihat apakah ada data tambahan yang perlu diteruskan melalui meminta header webhook Anda.


     

Preview muatan webhook

Untuk melihat preview payload:

  1. Klik tombol "Preview payload" di formulir blok untuk melihat contoh payload kontak dan parameternya yang akan dikirim ke webhook sistem eksternal Anda


     
  2. Modal akan menampilkan struktur data payload dalam sintaksis JSON

 

Perbedaan dari webhook kontak dalam aturan otomatisasi SleekFlow 1.0

Webhook kontak dapat dikirim ke sistem eksternal dari "Otomasi" SleekFlow 1.0 dan "Pembuat flow" di SleekFlow 2.0. Namun, sintaksis dan format muatan webhook mungkin berbeda di antara keduanya.

Pemetaan antara payload webhook yang dikirim dari "Automations" dan "Flow Builder" diuraikan dalam tabel di bawah:
 

Parameter muatan otomatisasi Parameter muatan Flow Builder
id contact_id
label labels di bawah objek "kontak".
contact_field_name bidang default tercantum di bawah objek "kontak".
custom_field_name
 
bidang khusus tercantum di bawah objek "kontak".

 

Kirim permintaan HTTP

⚠️ Tindakan "Kirim permintaan HTTP" hanya akan tersedia untuk pengguna paket Premium dan Perusahaan setelah periode beta Flow Builder

 

Tindakan "Kirim permintaan HTTP" memungkinkan Anda mengirim dan/atau menerima data antara SleekFlow dan API sistem eksternal Anda. Prasyarat untuk menggunakan blok ini adalah sistem eksternal harus menawarkan API yang tersedia untuk umum untuk memungkinkan integrasi dengan SleekFlow.

Siapkan formulir blok tindakan "Kirim permintaan HTTP" dengan mengikuti langkah-langkah yang diuraikan di bawah ini:

  1. Siapkan permintaan HTTP
  2. Konfigurasikan badan permintaan HTTP
  3. Konfigurasikan persistensi respons dari respons HTTP
     

Siapkan permintaan HTTP

Untuk mulai menyiapkan blok “Kirim permintaan HTTP”:

  1. Klik pada blok tindakan "Kirim permintaan HTTP" untuk membuka formulirnya, yang akan muncul di sisi kanan layar


     
  2. Formulir blok berisi bidang berikut untuk Anda konfigurasikan agar SleekFlow berinteraksi dengan sistem eksternal Anda untuk mengirim dan/atau mengambil data:

    1. Menangani kegagalan - Aktifkan ini untuk membuat dua cabang dalam flow, satu cabang
    untuk jika status respon HTTP berhasil dan yang lainnya untuk saat HTTP permintaan gagal. Ini akan memungkinkan Anda untuk mengonfigurasi cadangan jika ada permintaan HTTP gagal dijalankan dengan benar.
    2. Metode - Tentukan metode HTTP yang menjadi API sistem eksternal Anda mengharapkan. Pilih "GET" untuk meminta data dari API sistem eksternal, atau "POST" untuk mengirim data dari SleekFlow ke sistem eksternal melalui API-nya.
    3. URL - Masukkan URL untuk mengakses API sistem eksternal Anda dan berbagai macamnya
    fungsi
    4. Header - Konfigurasikan pasangan nilai kunci header yang diperlukan dari permintaan HTTP
    untuk mengakses API
    5. Query string - Konfigurasikan pasangan nilai kunci string query yang diperlukan untuk diakses APInya


     

Konfigurasikan badan permintaan HTTP

ℹ️ Permintaan HTTP "Badan" hanya tersedia ketika metode "POST" dikonfigurasi di blok "Kirim permintaan HTTP"

 

Bagian "Isi" formulir blok memungkinkan Anda mengonfigurasi data dan tipe konten yang akan dikirim melalui permintaan HTTP ke server API sistem eksternal. Lihat dokumentasi API sistem eksternal Anda untuk mengetahui konfigurasi dan parameter spesifik yang diperlukan untuk integrasi.



Bagian ini memiliki bidang berikut yang dapat Anda konfigurasi:

  • Tipe body - Tentukan tipe body yang diterima API sistem eksternal Anda. Anda dapat mengonfigurasi tipe konten dengan opsi yang diuraikan dalam tabel di bawah ini:
     
Tipe badan Keterangan
raw
 

Pilih tipe isi "mentah" jika API Anda menerima data teks biasa, JSON, atau string.



Tentukan “Jenis konten” yang diterima server API Anda, baik “Teks (teks/polos)”, “JSON (aplikasi/json)”, “XML (aplikasi/xml)”, “HTML (teks/html)”, atau “XML (teks/xml)”

Anda dapat memasukkan data ke dalam kotak “Minta konten” berwarna biru tua dengan sintaks tipe konten

form-data 

or

x-www-form-urlencoded
 
Pilih tipe isi yang memenuhi persyaratan API Anda dan masukkan data konten permintaan sebagai pasangan nilai kunci



Jika Anda memiliki lebih dari satu kumpulan data pasangan nilai kunci untuk ditambahkan, klik "+ Tambahkan kumpulan" untuk menambahkan kumpulan pasangan nilai kunci lainnya
 

 

Konfigurasikan persistensi respons dari respons HTTP

Bagian "Simpan respons HTTP" memungkinkan Anda menyimpan titik data tertentu yang dikembalikan dalam respons API sebagai variabel untuk digunakan nanti dalam flow
Ini memberi Anda fleksibilitas untuk membuat interaksi yang disesuaikan dengan kontak Anda melalui data dinamis.



Bagian ini mengharuskan Anda menambahkan pasangan nilai kunci untuk setiap nilai yang ingin Anda simpan, dengan menentukan dengan tepat nilai mana yang diberikan dalam respons HTTP yang ingin Anda simpan sebagai variabel untuk digunakan nanti dalam flow. Setiap pasangan nilai kunci terdiri dari 2 bidang berikut:

  • {{variable}} - Tentukan nama variabel yang akan digunakan sistem untuk menyimpan data yang diekstraksi dari payload respons HTTP. Anda dapat menggunakan nama variabel ini dalam kondisi berikutnya dan blok tindakan dalam flow untuk mereferensikan nilai yang diekstraksi. Gunakan tanda kurung kurawal ganda saat memasukkan nama variabel (yaitu {{nama_variabel}}).
  • $.response_variable - Tentukan variabel untuk mengekstrak nilai dari dalam payload respons HTTP JSON yang diterima dari API. Silakan gunakan notasi titik JSON di sini untuk menentukan bidang mana dari payload respons HTTP yang harus diekstraksi oleh sistem.
     

đź’ˇ Penjelasan notasi titik JSON

Notasi titik JSON adalah cara untuk menentukan bidang atau nilai tertentu dalam struktur data bertingkat seperti JSON. Ini memungkinkan Anda menavigasi struktur dengan menunjukkan jflow ke bidang yang diinginkan menggunakan tombol yang dipisahkan titik.

Format:
Notasi titik JSON dimulai dengan $., diikuti oleh semua nama bidang yang dicantumkan secara berurutan untuk menavigasi struktur data bertingkat untuk sampai ke bidang target Anda. Setiap nama field yang ditentukan dalam notasi dipisahkan dengan titik (misalnya $.key1.key2.key3)

Contoh:
Untuk payload yang ditentukan di bawah, bidang nomor telepon akan direpresentasikan seperti menggunakan notasi titik JSON: $.data.profile.phone
{
"data": {
"id": "12345",
"name": "Bob Chan",
"Profile": {
"email": "bob@ sleekflow .io",
"phone": "85298007899"
}
}

 



Â