Sending interactive Messages
Gunakan api ini untuk mengirim pesan interactive messages.
API_TOKEN
Developers can authenticate their API calls with the API_TOKEN
generated in App Dashboard > Phone Numbers > Detail > Api
. Untuk mengirim pesan interactive message, lakukan panggilan POST
ke /messages
dan lampirkan objek pesan dengan type=interactive
.
Parameters
Ini adalah parameter utama yang digunakan untuk mengirim interactive message requests:
Name | Description |
---|---|
to | Required ID WhatsApp atau nomor telepon yang ingin Anda kirimi pesan. Nomor telepon dalam request ini dapat diberikan dalam format panggilan apa pun, asalkan menyertakan kode negaranya. Sebaiknya Anda secara eksplisit mengawali kode negara dengan tanda tambah (+). Berikut beberapa contoh format nomor telepon yang didukung:
|
reply_message_id | Optional Anda dapat mengirim pesan apa pun sebagai balasan untuk pesan sebelumnya dalam percakapan dengan menyertakan ID pesan sebelumnya. Penerima akan menerima pesan baru bersama dengan gelembung kontekstual yang menampilkan konten pesan sebelumnya. |
type | Required Jenis pesan yang ingin Anda kirim. Tetapkan ini sebagai individu interactive . |
interactive | Required Objek interactive |
interactive.type | Required Menjelaskan tipe interactive. Value yang didukung
|
interactive.header | Optional Required ketika interactive.type=product_list.Konten Header ditampilkan di atas pesan. Anda tidak dapat menyetel header jika objek interaktif bertipe product |
interactive.header.type | Optional Tipe header yang ingin Anda gunakan. Value yang didukung
|
interactive.header.text | Optional Required ketika type=text.Teks Pesan |
interactive.header.image | Optional Required ketika type=image.Konten Header ditampilkan di atas pesan. Anda tidak dapat menyetel header jika objek interaktif bertipe product |
interactive.header.image.id | Optional Required saat Anda tidak menggunakan tautan.ID objek media. |
interactive.header.image.link | Optional Required saat Anda tidak menggunakan ID media yang diunggah.Protokol dan URL media yang akan dikirim. Gunakan hanya dengan URL HTTP/HTTPS. |
interactive.header.image.caption | Optional Menjelaskan image. |
interactive.header.video | Optional Required ketika type=video.Jenis objek media video. |
interactive.header.video.id | Optional Required saat Anda tidak menggunakan tautan.saat Anda tidak menggunakan tautan. |
interactive.header.video.link | Optional Required saat Anda tidak menggunakan ID media yang diunggah.Protokol dan URL media yang akan dikirim. Gunakan hanya dengan URL HTTP/HTTPS. |
interactive.header.video.caption | Optional Menjelaskan video. |
interactive.header.document | Optional Required ketika type=document.Jenis objek media document. |
interactive.header.document.link | Optional Required saat Anda tidak menggunakan ID media yang diunggah.Protokol dan URL media yang akan dikirim. Gunakan hanya dengan URL HTTP/HTTPS. |
interactive.header.document.caption | Optional Menjelaskan document secara spesifik. |
interactive.header.document.filename | Optional Menjelaskan nama file dari document spesifik. |
interactive.body | Required Isi pesan. Emoji dan markdown didukung. Panjang maksimum: 1024 karakter. |
interactive.footer | Optional Konten footer. Emoji, markdown, dan tautan didukung. Panjang maksimum: 60 karakter. |
interactive.action | Required Tindakan yang Anda ingin pengguna lakukan setelah membaca pesan. |
interactive.action.title | Optional Required ketika interactive.type=list.Konten Button.Tidak diperbolehkan berupa string kosong dan harus unik di dalam pesan. Emoji didukung, markdown tidak didukung. Panjang maksimum: 20 karakter. |
interactive.action.list | Optional Required ketika interactive.type=list.Array list objek. Minimal 1 dan maksimal 10. |
interactive.action.list.*.id | Optional Pengidentifikasi unik untuk tombol Anda. ID ini dikembalikan di webhook saat tombol diklik oleh pengguna. Panjang maksimum: 256 karakter. |
interactive.action.list.*.title | Optional Judul tombol.Tidak diperbolehkan berupa string kosong dan harus unik di dalam pesan. Emoji didukung, markdown tidak didukung. Panjang maksimum: 20 karakter. |
interactive.action.list.*.description | Optional Deskripsi Tombol. Panjang maksimum: 72 karakter. |
interactive.action.button | Optional Required ketika interactive.type=button.Array objek button. Anda dapat memiliki hingga 3 tombol. Anda tidak dapat memiliki spasi awal atau akhir saat menyetel ID. |
interactive.action.button.*.id | Optional Pengidentifikasi unik untuk tombol Anda. ID ini dikembalikan di webhook saat tombol diklik oleh pengguna. Panjang maksimum: 256 karakter. |
interactive.action.button.*.title | Optional Judul tombol.Tidak diperbolehkan berupa string kosong dan harus unik di dalam pesan. Emoji didukung, markdown tidak didukung. Panjang maksimum: 20 karakter. |
interactive.action.catalog | Optional Required ketika interactive.type=catalog_message, product, product_list.Objek catalog |
interactive.action.catalog.id | Optional Required ketika interactive.type=product/product_list.Pengidentifikasi unik dari katalog Facebook yang terhubung ke akun WhatsApp Business anda. |
interactive.action.catalog.product | Optional Required ketika interactive.type=product. |
interactive.action.catalog.product.id | Optional Required ketika interactive.type=product.Pengidentifikasi unik dari produk di dalam katalog. |
interactive.action.catalog.products | Optional Required ketika interactive.type=product_list.Array list objek. Minimal 1 dan maksimal 10. |
interactive.action.catalog.products.*.title | Optional Required ketika interactive.type=product_list.Judul untuk catalog product anda. Maksimal 24 karakter. |
interactive.action.catalog.products.*.product_items | Optional Required ketika interactive.type=product_list.Array object product item. Minimal 1 dan maksimal 30. |
interactive.action.catalog.products.*.product_items*.id | Optional Required ketika interactive.type=product_list.Pengidentifikasi unik dari produk di dalam katalog. |
Contoh
Sampel request
curl -X POST 'https://waofficial.botika.online/api/whatsapp/v1/messages' \ -H 'Authorization: Bearer {{ API_TOKEN }}' \ -H 'Content-Type: application/json' \ -d '{ "to": "+62821xxxxxx", "reply_message_id": "{{ MESSAGE_ID }}", "type": "interactive", "interactive": { "type": "list" | "button" | "product" | "product_list", "header": { "type": "text" | "image" | "video" | "document", "text": "your text", # OR "document": { "id": "your-media-id", # OR "link": "http(s)://document-url" "filename": "some-file-name" } # OR "video": { "id": "your-media-id", # OR "link": "http(s)://video-url" } # OR "image": { "id": "your-media-id", # OR "link": "http(s)://image-url", } }, "body": "your-text-message-content-here", "footer": "your-footer-content-here", "action": { # list type "title": "cta-button-content-here", "list": [ { "id": "unique-button-identifier-here", "title": "button-title-content-here", "description": "button-description-content-here", }, ... ] # button type "button": [ { "id": "unique-button-identifier-here", "title": "button-title-content-here", }, ... ] # product , product_list or catalog_message type "catalog": { "id": "your-catalog-id", # product type "product": { "id": "your-product-content-id" }, # product_list type "products": [ { "title": "title-of-the-section", "product_items" : [ { "id": "your-product-content-id" }, { "id": "your-product-content-id" } ... ] }, ... ] } }, } }'
response yang berhasil menyertakan objek dengan pengidentifikasi untuk pesan:
{ "data": { "id": "{{ MESSAGE_ID }}" } }