kirem.coDokumentasi API
Dokumentasi/Messages/Mengirim Pesan Templat (Template)
Messages

Mengirim Pesan Templat (Template)

Ringkasan Teknis (TL;DR)

Panduan mengirim pesan templat WhatsApp interaktif dengan parameter dinamis.

#messages#send#template

Mengirim Pesan Templat (Template)

Endpoint ini digunakan untuk mengirimkan pesan menggunakan templat pesan (Message Template) yang telah didaftarkan dan disetujui (APPROVED) oleh Meta. Templat pesan wajib digunakan untuk membuka sesi obrolan baru dengan pelanggan jika di luar jendela interaksi 24 jam.


🛜 1. HTTP Endpoint

  • Opsi A (Default): POST /v1/messages (Routing otomatis menggunakan saluran aktif pertama)
  • Opsi B (Spesifik): POST /v1/:phone_number_id/messages (Routing melalui nomor tertentu)
Info

Informasi mengenai perbedaan kedua opsi routing ini serta cara mendapatkan phone_number_id dapat dibaca selengkapnya pada Panduan Mengirim Pesan Teks.

Headers:

  • Authorization: Bearer <API_KEY>
  • Content-Type: application/json

📦 2. Payload Request (JSON)

Sertakan objek template dengan memetakan nilai variabel dinamis pada array components.

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "62812345678",
  "type": "template",
  "template": {
    "name": "promo_diskon_baru",
    "language": {
      "code": "id"
    },
    "components": [
      {
        "type": "header",
        "parameters": [
          {
            "type": "text",
            "text": "Budi"
          }
        ]
      },
      {
        "type": "body",
        "parameters": [
          {
            "type": "text",
            "text": "50"
          },
          {
            "type": "text",
            "text": "HEMAT50"
          }
        ]
      }
    ]
  }
}

Penjelasan Parameter:

  • template.name (String - Wajib): Nama unik templat pesan Anda yang sudah disetujui Meta.
  • template.language.code (String - Wajib): Kode bahasa templat (misal: "id" untuk Bahasa Indonesia, "en" untuk Bahasa Inggris).
  • template.components (Array - Opsional): Kumpulan komponen yang mendefinisikan nilai variabel dinamis ({{1}}, {{2}}, dst.) pada templat:
    • type: Jenis komponen (header, body, button).
    • parameters: Array nilai parameter yang disubstitusikan ke dalam variabel secara berurutan:
      • type: Tipe parameter (text, currency, date_time, image, document, video).
      • text: Isi nilai teks pengganti jika tipe parameter adalah "text".

🚦 3. Format Respons API

Respons Sukses (201 Created)

{
  "status": 201,
  "message": "Message sent successfully",
  "data": {
    "messaging_product": "whatsapp",
    "contacts": [
      {
        "input": "62812345678",
        "wa_id": "62812345678"
      }
    ],
    "messages": [
      {
        "id": "wamid.HBgLNjI4MTIzNDU2NzhGFgQ0NDMzMzc3RUQ1OEFG"
      }
    ]
  }
}
  • messages[0].id: ID pesan untuk memantau status pengantaran via webhook callback.

Butuh bantuan integrasi lanjutan?

Hubungi tim developer Kirem melalui tiket bantuan.

Buka Tiket Bantuan