logoDokumen
Cari

API Manajemen Template

Ikhtisar

Dengan API manajemen template, Anda dapat menambah, menghapus, dan memeriksa template WABA.

Validasi Panggilan

EngageLab REST API menggunakan HTTP basic authentication sebagai metode verifikasi: tambahkan HTTP Header Authorization:

Authorization: Basic ${base64_auth_string}
              
              Authorization: Basic ${base64_auth_string}

            
Tampilkan blok kode ini di jendela mengambang

Algoritma pembuatan base64_auth_string: base64(dev_key:dev_secret)

  • Nama Header adalah "Authorization" dan nilainya adalah pasangan "username:password" yang telah dikonversi ke base64 (dengan tanda titik dua di tengah).
  • Untuk API WhatsApp, username adalah DevKey dan password adalah DevSecret. Dapatkan di konsol pada menu manajemen konfigurasi - API key.

Mendapatkan Template

Alamat Panggilan

GET https://wa.api.engagelab.cc/v1/templates

Parameter Permintaan

Parameter Tipe Opsi Deskripsi
name String Opsional Nama template, pencarian menggunakan pencocokan samar
language_code String Opsional Bahasa template, lihat Kode Bahasa
category String Opsional Kategori template.
● AUTHENTICATION: Kode verifikasi
● MARKETING: Pemasaran
● UTILITY: Notifikasi layanan
status String Opsional Status template:
  • APPROVED - Disetujui
  • PENDING - Menunggu
  • REJECTED - Ditolak
  • PENDING_DELETION - Menunggu penghapusan
  • DELETED - Dihapus
  • DISABLED - Dinonaktifkan
  • IN_APPEAL - Dalam banding
  • PAUSED - Dijeda
    Umumnya fokus pada APPROVED/PENDING/REJECTED/DISABLED
  • Parameter Respons

    Parameter Tipe Opsi Deskripsi
    id String wajib ID template
    name String wajib Nama template
    language String wajib Bahasa template, lihat kode bahasa
    category String wajib Jenis template.
  • OTP: kata sandi sekali pakai
  • MARKETING: pemasaran
  • TRANSACTIONAL: transaksi
    Catatan: Kategori template akan diperbarui:
  • AUTHENTICATION
  • MARKETING
  • UTILITY
  • components Object Array wajib Detail isi template, lihat membuat objek komponen dalam template
    status String wajib Status template:
  • APPROVED
  • IN_APPEAL
  • PENDING
  • REJECTED
  • PENDING_DELETION
  • DELETED
  • DISABLED
  • PAUSED
  • LIMIT_EXCEEDED
  • Contoh respons

    [ { "id": "406979728071589", "name": "code", "language": "zh_CN", "status": "APPROVED", "category": "OTP", "components": [ { "type": "HEADER", "format": "text", "text": "Kode Verifikasi Registrasi" }, { "type": "BODY", "text": "Kode verifikasi Anda adalah {{1}}, silakan masukkan dalam waktu 5 menit." } ] } ]
                  
                  [
        {
            "id": "406979728071589",
            "name": "code",
            "language": "zh_CN",
            "status": "APPROVED",
            "category": "OTP",
            "components": [
                {
                    "type": "HEADER",
                    "format": "text",
                    "text": "Kode Verifikasi Registrasi"
                },
                {
                    "type": "BODY",
                    "text": "Kode verifikasi Anda adalah {{1}}, silakan masukkan dalam waktu 5 menit."
                }
            ]
        }
    ]
    
                
    Tampilkan blok kode ini di jendela mengambang

    Cek Informasi Template

    Endpoint API

    GET https://wa.api.engagelab.cc/v1//{template_id}

    Dimana {template_id} adalah ID template yang ingin dicek.

    Parameter Permintaan

    Tidak ada

    Contoh Permintaan

    GET https://wa.api.engagelab.cc/v1/templates/406979728071589

    Parameter Respons

    Parameter Tipe Wajib Deskripsi
    id String Wajib ID Template
    name String Wajib Nama Template
    language String Wajib Bahasa template, lihat Kode Bahasa
    category String Wajib Kategori Template.
  • OTP: Kata sandi sekali pakai
  • MARKETING: Pemasaran
  • TRANSACTIONAL: Transaksional
    Catatan: Kategori template akan diperbarui per 1 Mei 2023 menjadi:
  • AUTHENTICATION
  • MARKETING
  • UTILITY
  • components Object Array Wajib Komponen isi template, lihat Objek Komponen pada Buat Template
    status String Wajib Status template:
    APPROVED, IN_APPEAL, PENDING, REJECTED, PENDING_DELETION, DELETED, DISABLED, PAUSED, LIMIT_EXCEEDED

    Contoh Respons

    { "id": "406979728071589", "name": "code", "language": "en", "status": "APPROVED", "category": "OTP", "components": [ { "type": "HEADER", "format": "text", "text": "Kode Verifikasi Registrasi" }, { "type": "BODY", "text": "Kode verifikasi Anda adalah {{1}}, silakan masukkan dalam waktu 5 menit." } ] }
                  
                  {
        "id": "406979728071589",
        "name": "code",
        "language": "en",
        "status": "APPROVED",
        "category": "OTP",
        "components": [
            {
                "type": "HEADER",
                "format": "text",
                "text": "Kode Verifikasi Registrasi"
            },
            {
                "type": "BODY",
                "text": "Kode verifikasi Anda adalah {{1}}, silakan masukkan dalam waktu 5 menit."
            }
        ]
    }
    
                
    Tampilkan blok kode ini di jendela mengambang

    Membuat Template

    Alamat Panggilan

    POST https://wa.api.engagelab.cc/v1/templates

    Contoh Panggilan

    { "name": "template_name", "language": "zh_CN", "category": "OTP", "components": [ { "type": "BODY", "text": "define var as {{1}}", "example": { "body_text": [ [ "var1" ] ] } }, { "type": "HEADER", "format": "image", "example": { "header_handle": [ "https://jiguang.cn/demopic.jpg" ] } }, { "type": "FOOTER", "text": "footer hanya mendukung teks tanpa variabel" }, { "type": "BUTTONS", "buttons": [ { "type": "PHONE_NUMBER", "text": "ini adalah nomor telepon", "phone_number": "8613800138000" } ] } ] }
                  
                  {
        "name": "template_name",
        "language": "zh_CN",
        "category": "OTP",
        "components": [
            {
                "type": "BODY",
                "text": "define var as {{1}}",
                "example": {
                    "body_text": [
                        [
                            "var1"
                        ]
                    ]
                }
            },
            {
                "type": "HEADER",
                "format": "image",
                "example": {
                    "header_handle": [
                        "https://jiguang.cn/demopic.jpg"
                    ]
                }
            },
            {
                "type": "FOOTER",
                "text": "footer hanya mendukung teks tanpa variabel"
            },
            {
                "type": "BUTTONS",
                "buttons": [
                    {
                        "type": "PHONE_NUMBER",
                        "text": "ini adalah nomor telepon",
                        "phone_number": "8613800138000"
                    }
                ]
            }
        ]
    }
    
                
    Tampilkan blok kode ini di jendela mengambang

    Parameter Permintaan

    Parameter Tipe Opsi Deskripsi
    name String wajib nama template. Hanya huruf kecil, angka, dan garis bawah. Maksimal 512 karakter.
    language String wajib bahasa template, lihat kode bahasa
    category String wajib jenis template.
  • OTP: kata sandi sekali pakai
  • MARKETING: pemasaran
  • TRANSACTIONAL: transaksi
    Catatan: Kategori template akan diperbarui paling lambat 1 Mei 2023 menjadi:
  • AUTHENTICATION
  • MARKETING
  • UTILITY
  • components Object Array Komponen isi template. Lihat objek komponen

    objek komponen

    Objek ini mendeskripsikan isi template. Template dibagi menjadi beberapa komponen: HEADER, BODY, FOOTER, BUTTONS. Setiap tipe mendukung parameter berbeda sebagai berikut:

    header dan komponen header

    Komponen header opsional. Jangan diisi jika tidak digunakan.

    Parameter Tipe Opsi Deskripsi
    type String wajib tipe komponen. Nilai: HEADER.
    format String wajib format header. Nilai: text, image, video, document.
    text String opsional isi teks header. Wajib jika format = text. Hanya satu variabel diperbolehkan, ditandai {{1}}.
    example JSON Object opsional contoh header. Wajib jika teks mengandung variabel atau format media. Lihat deskripsi objek contoh
    deskripsi objek contoh
    Parameter Tipe Opsi Deskripsi
    header_handle String Array opsional Jika format image, video, document, masukkan url media yang valid.
    Contoh: "header_handle": ["https://jiguang.cn/demopic.jpg"]
    header_text String Array opsional Jika format text dan mengandung variabel, isi variabel di sini. Contoh: "header_text": ["var1"]
    header_url String Array opsional Sama dengan header_handle. Catatan: field ini tidak akan didukung di versi WhatsApp mendatang. Hindari penggunaan field ini.
    komponen body

    Komponen body wajib diisi.

    Parameter Tipe Opsi Deskripsi
    type String wajib tipe komponen. Nilai: BODY.
    text String wajib isi body. Maksimal 1024 karakter. Bisa mengandung beberapa variabel. Variabel ditulis {{1}}, {{2}}, dst.
    example JSON Object opsional contoh body. Wajib jika text mengandung variabel. Lihat deskripsi objek contoh
    deskripsi objek contoh
    Parameter Tipe Opsi Deskripsi
    body_text String Array opsional Jika text mengandung variabel, wajib diisi. Semua variabel diurutkan sesuai nomor variabel. Contoh: "body_text": [["var1","var2","var3"]]

    Komponen footer opsional.

    Parameter Tipe Opsi Deskripsi
    type String wajib tipe komponen. Nilai: FOOTER.
    text String wajib isi footer. Hanya teks biasa, tidak bisa pakai variabel.
    komponen tombol (buttons)

    Komponen tombol opsional.

    Parameter Tipe Opsi Deskripsi
    type String wajib tipe komponen. Nilai: BUTTONS.
    buttons Object Array wajib info tombol, lihat deskripsi objek tombol
    deskripsi objek tombol
    Parameter Tipe Opsi Deskripsi
    type String wajib tipe tombol. Nilai: QUICK_REPLY, URL, PHONE_NUMBER.
    text String wajib teks pada tombol, tidak boleh pakai variabel. Maksimal 25 karakter.
    url String opsional Wajib jika type = URL. Bisa menambah satu variabel di akhir URL, ditandai {{1}}.
    phone_number String opsional Wajib jika type = PHONE_NUMBER. Tidak boleh pakai variabel, isi dengan nomor telepon beserta kode negara.
    example String Array opsional Wajib jika type = QUICK_REPLY dan type = URL

    Parameter Respons

    Respons Berhasil

    Parameter Tipe Opsi Deskripsi
    template_id String wajib ID template. Dikembalikan jika template berhasil dibuat.
    { "template_id": "1275172986566180" }
                  
                  {
        "template_id": "1275172986566180"
    }
    
                
    Tampilkan blok kode ini di jendela mengambang

    Respons Gagal

    Parameter Tipe Opsi Deskripsi
    code int wajib kode error. Jika gagal, kode error dikembalikan.
    message String wajib pesan error jika gagal.
    { "code": 5002, "message": "Parameter tidak valid. code:100:2388042" }
                  
                  {
        "code": 5002,
        "message": "Parameter tidak valid. code:100:2388042"
    }
    
                
    Tampilkan blok kode ini di jendela mengambang

    Update Template

    Alamat Panggilan

    PUT https://wa.api.engagelab.cc/v1/templates/{templateId}

    Contoh Panggilan

    { "components": [ { "type": "BODY", "text": "define var as {{1}}", "example": { "body_text": [ [ "var1" ] ] } }, { "type": "HEADER", "format": "image", "example": { "header_url": [ "https://jiguang.cn/demopic.jpg" ] } }, { "type": "FOOTER", "text": "footer hanya mendukung teks tanpa variabel" }, { "type": "BUTTONS", "buttons": [ { "type": "PHONE_NUMBER", "text": "ini adalah nomor telepon", "phone_number": "8613800138000" } ] } ] }
                  
                  {
        "components": [
            {
                "type": "BODY",
                "text": "define var as {{1}}",
                "example": {
                    "body_text": [
                        [
                            "var1"
                        ]
                    ]
                }
            },
            {
                "type": "HEADER",
                "format": "image",
                "example": {
                    "header_url": [
                        "https://jiguang.cn/demopic.jpg"
                    ]
                }
            },
            {
                "type": "FOOTER",
                "text": "footer hanya mendukung teks tanpa variabel"
            },
            {
                "type": "BUTTONS",
                "buttons": [
                    {
                        "type": "PHONE_NUMBER",
                        "text": "ini adalah nomor telepon",
                        "phone_number": "8613800138000"
                    }
                ]
            }
        ]
    }
    
                
    Tampilkan blok kode ini di jendela mengambang

    Parameter Permintaan

    Sama seperti parameter permintaan pada pembuatan template.

    Parameter Respons

    Respons Berhasil

    Parameter Tipe Opsi Deskripsi
    code int wajib kode balikan, tetap 0
    message String wajib informasi balikan, selalu "success".
    { "code": 0, "message": "success" }
                  
                  {
        "code": 0,
        "message": "success"
    }
    
                
    Tampilkan blok kode ini di jendela mengambang

    Respons Gagal

    Parameter Tipe Opsi Deskripsi
    code int wajib kode error. Jika gagal, kode error dikembalikan.
    message String wajib pesan error jika gagal.
    { "code": 5002, "message": "Parameter tidak valid. code:100:2593002" }
                  
                  {
        "code": 5002,
        "message": "Parameter tidak valid. code:100:2593002"
    }
    
                
    Tampilkan blok kode ini di jendela mengambang

    Hapus Template

    Alamat Panggilan

    DELETE https://wa.api.engagelab.cc/v1/templates/{template_name}

    Catatan: Nama template, bukan ID template, yang digunakan di sini dan akan menghapus seluruh konten template untuk semua bahasa dari nama template tersebut.

    Parameter Respons

    Respons Berhasil

    Parameter Tipe Opsi Deskripsi
    code int wajib kode balikan, tetap 0
    message String wajib informasi balikan, selalu "success".
    { "code": 0, "message": "success" }
                  
                  {
        "code": 0,
        "message": "success"
    }
    
                
    Tampilkan blok kode ini di jendela mengambang

    Respons Gagal

    Parameter Tipe Opsi Deskripsi
    code int wajib kode error. Jika gagal, kode error dikembalikan.
    message String wajib pesan error jika gagal.
    { "code": 2004, "message": "terjadi kesalahan" }
                  
                  {
        "code": 2004,
        "message": "terjadi kesalahan"
    }
    
                
    Tampilkan blok kode ini di jendela mengambang

    Kode Error

    Kode Http Code Deskripsi
    1000 500 kesalahan internal
    2001 401 Autentikasi EngageLab gagal tanpa token yang valid.
    2002 401 Autentikasi di sisi EngageLab gagal. Token telah kedaluwarsa atau dinonaktifkan.
    2003 400 Autentikasi WhatsApp gagal, silakan hubungi layanan pelanggan EngageLab
    2004 403 Anda tidak berwenang memanggil API ini.
    3001 400 Format parameter permintaan tidak valid. Pastikan format JSON sudah benar.
    3002 400 Parameter permintaan salah. Pastikan parameter sudah sesuai.
    3003 400 Error karena parameter permintaan tidak valid.
    4001 400 Template tidak ditemukan.
    5002 400 Permintaan template gagal diproses oleh Meta. Lihat detail error pada field message.

    Catatan

    Persyaratan Format Pesan Media

    | Tipe Media | Format Content-Type yang Didukung | Batas Ukuran | | --- | --- | --- | --- | | image | image/jpeg, image/png, tidak mendukung latar belakang transparan | 5MB | | video | video/mp4 | 16MB | | document | Hanya PDF | 100MB |

    kode bahasa

    Bahasa Kode
    Afrikaans af
    Albania sq
    Arab ar
    Azerbaijan az
    Bengali bn
    Bulgaria bg
    Catalan ca
    Tionghoa (CHN) zh_CN
    Tionghoa (HKG) zh_HK
    Tionghoa (TAI) zh_TW
    Kroasia hr
    Ceko cs
    Denmark da
    Belanda nl
    Inggris en
    Inggris (UK) en_GB
    Inggris (US) en_US
    Estonia et
    Filipina fil
    Finlandia fi
    Prancis fr
    Georgia ka
    Jerman de
    Yunani el
    Gujarat gu
    Hausa ha
    Ibrani he
    Hindi hi
    Hungaria hu
    Indonesia id
    Irlandia ga
    Italia it
    Jepang ja
    Kannada kn
    Kazakh kk
    Kinyarwanda rw_RW
    Korea ko
    Kirgizstan ky_KG
    Lao lo
    Latvia lv
    Lituania lt
    Makedonia mk
    Melayu ms
    Malayalam ml
    Marathi mr
    Norwegia nb
    Persia fa
    Polandia pl
    Portugis (BR) pt_BR
    Portugis (POR) pt_PT
    Punjabi pa
    Rumania ro
    Rusia ru
    Serbia sr
    Slovakia sk
    Slovenia sl
    Spanyol es
    Spanyol (ARG) es_AR
    Spanyol (SPA) es_ES
    Spanyol (MEX) es_MX
    Swahili sw
    Swedia sv
    Tamil ta
    Telugu te
    Thai th
    Turki tr
    Ukraina uk
    Urdu ur
    Uzbek uz
    Vietnam vi
    Zulu zu

    Untuk info lebih lanjut tentang hubungan bahasa dan kode, Anda dapat unduh file berikut:
    Kode Bahasa Template.xlsx

    icon
    Hubungi Sales