Sending Template Messages
Gunakan api ini untuk mengirim pesan template.
API_TOKEN
Developers can authenticate their API calls with the API_TOKEN
generated in App Dashboard > Phone Numbers > Detail > Api
. Untuk mengirim pesan template message, lakukan panggilan POST
ke /messages
dan lampirkan objek pesan dengan type=template
.
Parameters
Ini adalah parameter utama yang digunakan untuk mengirim template 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 template . |
template | Required Objek template. |
template.name | Required Nama template. |
template.language | Required Berisi objek language. Menentukan bahasa untuk merender template. |
template.param | Optional Objek template param. |
template.param.header | Optional Objek template param header. |
template.param.header.type | Optional Menjelaskan parameter jenis header. Value yang didukung
|
template.param.header.text | Optional Required ketika type=text.Teks Pesan |
template.param.header.image | Optional Required ketika type=image.Jenis objek media image. |
template.param.header.image.id | Optional Required saat Anda tidak menggunakan tautan.ID objek media. |
template.param.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. |
template.param.header.video | Optional Required ketika type=video.Jenis objek media video. |
template.param.header.video.id | Optional Required saat Anda tidak menggunakan tautan.ID objek media. |
template.param.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. |
template.param.header.document | Optional Required ketika type=document.Jenis objek media document. |
template.param.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. |
template.param.header.document.caption | Optional Menjelaskan document secara spesifik. |
template.param.header.document.filename | Optional Menjelaskan nama file dari document spesifik. |
template.param.body | Optional Array objek body berisi parameter dari pesan. |
template.param.button | Optional Array objek button berisi parameter dari pesan. |
template.param.button.*.type | Optional Menunjukkan jenis parameter untuk tombol. Value yang didukung
|
template.param.button.*.index | Optional Indeks posisi tombol. Anda dapat memiliki hingga 10 tombol menggunakan nilai indeks 0 hingga 9. |
template.param.button.*.value | Optional Payload: payload yang didefiniskan oleh developer untuk dikembalikan saat tombol diklik selain teks tampilan pada tombol. Url: suffix yang disediakan developer untuk ditambahkan ke prefix URL yang telah ditentukan sebelumnya di template. copy_code: Kode yang ditentukan pengembang untuk disalin ke papan klip perangkat saat diketuk oleh pengguna aplikasi. |
template.param.limited_time_offer | Optional Object limited time offer Required ketika limited time offer expiration time disetel true |
template.param.limited_time_offer.expiration_time_ms | Optional Waktu kadaluwarsa kode penawaran dalam bentuk UNIX timestamp dalam milliseconds. Required ketika limited time offer expiration time disetel true |
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": "template", "template": { "name": "TEMPLATE_NAME", "language": "LANGUAGE_AND_LOCALE_CODE", "param": { "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": [ "PARAM_BODY_1", "PARAM_BODY_2", ... ], "button": [ { "type": "payload" | "url" | "copy_code", "index": 0, "value": "PAYLOAD", }, { "type": "payload" | "url" | "copy_code", "index": 2, "value": "PAYLOAD", }, { "type": "payload" | "url" | "copy_code", "index": 3, "value": "PAYLOAD", } ... ], # if limited time offer expiration time is set true "limited_time_offer": { "expiration_time_ms": "<unix_timestamp_in_miliseconds>" } } } }'
Response yang berhasil menyertakan objek dengan pengidentifikasi untuk pesan:
{ "data": { "id": "{{ MESSAGE_ID }}" } }