Atur pengenal saluran

Pengenal saluran adalah nilai pengenal pada saluran jangkauan dan dapat digunakan sebagai target saluran tersebut. Pengaturan dan pelepasan dilakukan berdasarkan EUID dan ID saluran.

Alamat panggilan lengkap adalah Base URL pusat data ditambah path API di bawah ini. Lihat Ikhtisar REST API untuk cara mendapatkan Base URL, API Key, dan API Secret.

Autentikasi Permintaan

EngageLab REST API menggunakan HTTP Basic Authentication sebagai metode autentikasi. Tambahkan Authorization pada Header HTTP:

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

            
Tampilkan blok kode ini di jendela mengambang

base64_auth_string dihasilkan dengan algoritma: base64(api_key:api_secret).

  • Nama header: "Authorization", nilainya adalah pasangan "username:password" yang telah dienkode base64 (dipisahkan titik dua).
  • Untuk MA API, username adalah APIKey, password adalah APISecret. Silakan konfigurasikan sumber data tipe API untuk mendapatkan APIKey dan API Secret.

Mengatur pengenal saluran

Alamat Endpoint

POST /v1/user/channel

Contoh Permintaan

Header Permintaan

> POST /v1/user/channel > Content-Type: application/json > Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
              
              > POST /v1/user/channel
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==

            
Tampilkan blok kode ini di jendela mengambang

Body Permintaan

{ "euid": 10362473, "channel_id": 8801, "ma_rid": "1a0018970d1c9f8f8e2", "value": [ "channel_identifier_1", "channel_identifier_2" ] }
              
              {
  "euid": 10362473,
  "channel_id": 8801,
  "ma_rid": "1a0018970d1c9f8f8e2",
  "value": [
    "channel_identifier_1",
    "channel_identifier_2"
  ]
}

            
Tampilkan blok kode ini di jendela mengambang

Parameter Permintaan

Field Tipe Wajib Deskripsi
euid Long Ya ID unik pengguna. Pengguna harus sudah ada di proyek saat ini.
channel_id Long Ya ID saluran jangkauan. Saluran harus sudah ada di proyek saat ini.
ma_rid String Tidak MA Registration ID. Jika diisi, pengenal saluran yang ditulis permintaan ini diikat ke MA RID tersebut dan platformnya dicatat. Saat MA RID ini dipindahkan ke EUID lain, pengenal saluran yang terikat padanya ikut berpindah. Jika tidak diisi, berupa string kosong, atau hanya spasi, penulisan ini tidak membuat ikatan; ikatan yang sudah ada pada pengenal yang ditulis permintaan ini akan dihapus. Jika platform tidak dapat dibaca dari nilainya, pengaturan gagal.
value Array<String> Ya Daftar nilai pengenal saluran yang akan diatur. Daftar tidak boleh kosong, dan setiap item tidak boleh kosong atau hanya berisi spasi. Nilai disimpan apa adanya: pencocokan peka huruf besar/kecil, dan spasi di awal atau akhir tidak dihapus. Nilai duplikat dalam permintaan yang sama dihapus.

Pada euid + channel_id yang sama, pengenal yang sama ditulis ulang sesuai permintaan ini: catatan lama dihapus dan catatan baru ditulis, dengan waktu pembaruan diatur ke waktu saat ini. Pengenal yang sudah tersimpan tetapi tidak ada dalam daftar ini tetap dipertahankan. Nilai baru ditambahkan.

Untuk saluran AppPush/WebPush, pengenal saluran yang sama pada channel_id yang sama hanya boleh dimiliki satu EUID. Setelah nilai berhasil ditulis ke EUID baru, sistem menghapusnya dari setiap EUID lain yang masih memilikinya. Jenis saluran lain tidak menggunakan pemindahan kepemilikan unik ini.

Parameter Balasan

Field Tipe Wajib Deskripsi
code Int Ya Apakah pemanggilan API berhasil. 0 berarti berhasil.
message String Ya Deskripsi hasil pemanggilan API.

Contoh berhasil

{ "code": 0, "message": "success" }
              
              {
  "code": 0,
  "message": "success"
}

            
Tampilkan blok kode ini di jendela mengambang

Melepas pengenal saluran

Alamat Endpoint

POST /v1/user/channel/unbind

Contoh Permintaan

Header Permintaan

> POST /v1/user/channel/unbind > Content-Type: application/json > Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
              
              > POST /v1/user/channel/unbind
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==

            
Tampilkan blok kode ini di jendela mengambang

Body Permintaan

{ "euid": 10362473, "channel_id": 8801, "value": [ "channel_identifier_1", "channel_identifier_2" ] }
              
              {
  "euid": 10362473,
  "channel_id": 8801,
  "value": [
    "channel_identifier_1",
    "channel_identifier_2"
  ]
}

            
Tampilkan blok kode ini di jendela mengambang

Parameter Permintaan

Field Tipe Wajib Deskripsi
euid Long Ya ID unik pengguna.
channel_id Long Ya ID saluran jangkauan.
value Array<String> Ya Daftar nilai pengenal saluran yang akan dilepas. Setiap nilai harus sama persis dengan pengenal yang tersimpan. Pencocokan peka huruf besar/kecil, dan spasi di awal atau akhir tidak dihapus.

Pelepasan mencocokkan nilai pengenal saluran, bukan ma_rid. Permintaan pelepasan tidak memiliki field ma_rid. API menghapus catatan yang sama persis dengan euid + channel_id + value. Jika pengguna tidak ada, atau pengguna tidak memiliki pengenal yang sama persis, data tidak diubah dan API tetap mengembalikan keberhasilan. Pelepasan tidak memeriksa apakah channel_id milik proyek saat ini.

Parameter Balasan

Field Tipe Wajib Deskripsi
code Int Ya Apakah pemanggilan API berhasil. 0 berarti berhasil.
message String Ya Deskripsi hasil pemanggilan API.

Contoh berhasil

{ "code": 0, "message": "success" }
              
              {
  "code": 0,
  "message": "success"
}

            
Tampilkan blok kode ini di jendela mengambang

Kode Error

Jika validasi bisnis gagal, API pengaturan mengembalikan kode error berikut dengan status HTTP 400. Field message pada isi respons adalah penjelasan bahasa Inggris, bukan deskripsi pada tabel di bawah. API pelepasan mengembalikan 55004 hanya ketika bidang wajib tidak valid atau isi permintaan tidak dapat diurai. Jika pengguna atau pengenal tidak ada, pelepasan tetap mengembalikan keberhasilan.

Kode Deskripsi Detail
55004 Parameter bisnis tidak valid Saat mengatur, jika channel_id tidak ada di proyek saat ini, message adalah channel_id does not exist in current project: {channel_id}. Saat mengatur, jika platform tidak dapat dibaca dari ma_rid, message adalah ma_rid is invalid. Saat mengatur dan melepas, bidang wajib yang hilang, value kosong, item kosong, atau isi permintaan yang tidak dapat diurai (message saat itu adalah Invalid request payload format) juga mengembalikan kode ini.
55108 EUID tidak valid Hanya dikembalikan oleh API pengaturan. EUID tidak ada di proyek saat ini. message adalah EUID does not exist: {euid}.

Contoh gagal

channel_id tidak ada:

{ "code": 55004, "message": "channel_id does not exist in current project: 8801" }
              
              {
  "code": 55004,
  "message": "channel_id does not exist in current project: 8801"
}

            
Tampilkan blok kode ini di jendela mengambang

ma_rid tidak dapat diurai:

{ "code": 55004, "message": "ma_rid is invalid" }
              
              {
  "code": 55004,
  "message": "ma_rid is invalid"
}

            
Tampilkan blok kode ini di jendela mengambang

EUID tidak ada:

{ "code": 55108, "message": "EUID does not exist: 10362473" }
              
              {
  "code": 55108,
  "message": "EUID does not exist: 10362473"
}

            
Tampilkan blok kode ini di jendela mengambang
Icon Solid Transparent White Qiyu
Hubungi Sales