Logo Site EngageLab Mark Colored TransparentDokumen
Cari

Pengiriman Kode OTP Kustom

Jika Anda ingin membuat kode verifikasi sendiri alih-alih menggunakan kode yang dibuat oleh platform EngageLab, Anda dapat memanggil API ini.

API ini secara khusus digunakan untuk mengirim kode verifikasi yang telah dibuat sebelumnya dan tidak membuat kode verifikasi secara otomatis. Setelah mengirim kode verifikasi, Anda tidak perlu memanggil API verifikasi untuk memvalidasinya.

Jika Anda ingin platform EngageLab membuat kode verifikasi, Anda dapat memanggil API Pengiriman Kode Verifikasi OTP EngageLab.

Endpoint

POST https://otp.api.engagelab.cc/v1/codes

Autentikasi

Gunakan Autentikasi Dasar HTTP dengan menambahkan Authorization ke header HTTP:

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

            
Tampilkan blok kode ini di jendela mengambang

Algoritme pembentukan base64_auth_string di atas adalah: base64(dev_key:dev_secret)

Contoh Permintaan

Header Permintaan

POST /v1/codes HTTP/1.1 Content-Type: application/json Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
              
              POST /v1/codes HTTP/1.1
Content-Type: application/json
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0

            
Tampilkan blok kode ini di jendela mengambang

Body Permintaan

{ "to": "+6591234567", "code": "398210", "template": { "id": "test-template-1", "language": "default", "params": { "key1": "value1", "key2": "value2" } } }
              
              {
  "to": "+6591234567",
  "code": "398210",
  "template": {
    "id": "test-template-1",
    "language": "default",
    "params": {
      "key1": "value1",
      "key2": "value2"
    }
  }
}

            
Tampilkan blok kode ini di jendela mengambang

Parameter Permintaan

Objek permintaan dinyatakan dalam format JSON, sehingga header permintaan harus menyertakan Content-Type: application/json.

Parameter Type Required Description
to String Required Target pengiriman: nomor telepon atau alamat email, misalnya +6598765432 atau support@engagelab.com
code String Required Kode verifikasi kustom yang akan dikirim
template JSON Object Required Informasi template. Lihat parameter tingkat kedua di bawah
|_ id String Required ID template
|_ language String Optional Bahasa template. Bahasa berikut didukung:
default Bahasa default
zh_CN Tionghoa Sederhana
zh_HK Tionghoa Tradisional
en Inggris
ja Jepang
th Thailand
es Spanyol
Jika tidak diberikan, nilai default adalah default (bahasa bawaan).
|_ params JSON Object Optional Nilai untuk key variabel template kustom. Jika Anda mendefinisikan variabel kustom saat membuat template, tetapkan nilainya di sini. Jika tidak diberikan, key variabel akan dikirim secara langsung, seperti {{var}}.

Deskripsi params

  1. Untuk field template preset seperti from_id, jika nilai field param_vars tidak diberikan, from_id preset dalam template akan digunakan saat pesan dikirim.
  2. Jika nilai field param_vars diberikan, seperti param_vars:{"from_id":"12345"}, maka from_id pada template akan diganti menjadi 12345 saat pesan dikirim.
  3. Field variabel kustom dalam konten template yang dibuat saat pembuatan template juga diberi nilai melalui param_vars. Sebagai contoh, jika konten template adalah Hi {{name}}, your verify code is {{code}}, maka diperlukan parameter param_vars:{"name":"Bob"}.

Parameter Respons

Respons Berhasil

Field Type Required Description
message_id String Required ID pesan yang secara unik mengidentifikasi sebuah pesan
send_channel String Required Menunjukkan saluran pengiriman saat ini. Nilai yang mungkin: whatsapp/sms/email/voice
{ "message_id": "1725407449772531712", "send_channel": "sms" }
              
              {
  "message_id": "1725407449772531712",
  "send_channel": "sms"
}

            
Tampilkan blok kode ini di jendela mengambang

Harap diperhatikan bahwa nilai send_channel yang dikembalikan tidak mewakili saluran akhir yang digunakan untuk mengirimkan pesan kepada pengguna; nilai tersebut hanya mewakili saluran yang sedang digunakan saat ini. Sebagai contoh, jika strategi template dikonfigurasi sehingga pengiriman melalui saluran WhatsApp akan otomatis mencoba ulang melalui saluran SMS jika gagal, maka respons API akan mengembalikan nilai whatsapp. Setelah jangka waktu tertentu, jika kegagalan pengiriman terdeteksi, sistem akan mengirim melalui saluran SMS.

Respons Gagal

Kode status HTTP adalah 4xx atau 5xx, dan body respons berisi field berikut:

Field Type Required Description
code int Required Kode kesalahan. Untuk detail, lihat Kode Kesalahan
message String Required Detail kesalahan
{ "code": 5001, "message": "sms send fail" }
              
              {
  "code": 5001,
  "message": "sms send fail"
}

            
Tampilkan blok kode ini di jendela mengambang

Kode Kesalahan

Error Code HTTP Code Description
1000 500 Kesalahan internal
2001 401 Autentikasi gagal. Token yang benar tidak diberikan.
2002 401 Autentikasi gagal. Token telah kedaluwarsa atau dinonaktifkan.
2004 403 Tidak memiliki izin untuk memanggil API ini
3001 400 Format parameter permintaan tidak valid. Harap periksa apakah konten JSON sesuai dengan format parameter yang diperlukan.
3002 400 Parameter permintaan tidak valid. Harap periksa apakah parameter permintaan memenuhi persyaratan.
3003 400 Parameter permintaan tidak valid. Validasi bisnis terkait gagal. Lihat deskripsi kesalahan pada field message untuk detail.
3004 400 Batas frekuensi terlampaui. Untuk template yang sama dan pengguna target yang sama, pengiriman tidak dapat dilakukan lagi selama masa berlaku kode verifikasi.
4001 400 Sumber daya terkait tidak ditemukan, misalnya saat menggunakan template yang tidak ada untuk mengirim pesan template.
5001 400 Pengiriman gagal (umum/lainnya)
5011 400 Format nomor telepon tidak valid
5012 400 Target tidak dapat dijangkau
5013 400 Nomor masuk daftar hitam
5014 400 Konten tidak sesuai spesifikasi
5015 400 Pesan dicegat/ditolak
5016 400 Kesalahan internal saat pengiriman
5017 400 Tidak ada izin pengiriman untuk Tiongkok daratan
5018 400 Gangguan pada telepon (dimatikan/layanan ditangguhkan)
5019 400 Pengguna telah berhenti berlangganan
5020 400 Nomor tidak terdaftar/nomor tidak valid
Icon Solid Transparent White Qiyu
Hubungi Sales