Atur Atribut Pengguna
Alamat Endpoint
POST /v1/user/property
Verifikasi Permintaan
EngageLab REST API menggunakan HTTP Basic Authentication sebagai metode verifikasi. Tambahkan Authorization pada HTTP Header:
Authorization: Basic ${base64_auth_string}
base64_auth_string dihasilkan dengan algoritma: base64(api_key:api_secret).
- Nama header adalah "Authorization", dan nilainya berupa pasangan "username:password" yang telah dienkode base64 (dipisahkan dengan titik dua).
- Untuk MA API, username adalah APIKey dan password adalah APISecret. Silakan konfigurasikan sumber data tipe API untuk mendapatkan APIKey dan API Secret.
Contoh Permintaan
Header Permintaan
> POST /v1/user/property
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
Body Permintaan
{
"euid": 10362473,
"type": "set",
"properties": {
"user_number_once": 46.2,
"user_string_once": "refef",
"user_datetime_once": "2023-12-12 00:56:23"
}
}
Parameter Permintaan
| Field | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| euid | Long | Ya | ID unik pengguna EngageLab MA |
| type | String | Ya | Jenis operasi untuk memperbarui properti |
| properties | JSON | Ya | Daftar properti pengguna, key adalah nama properti dan value adalah nilai properti |
Jenis Operasi
Semua properti dalam satu permintaan menggunakan type yang sama. Nilai yang didukung adalah set, increase, add, remove, delete, setOnce, dan update.
| Operasi | Jenis properti yang berlaku | Deskripsi |
|---|---|---|
set |
Semua jenis | Memperbarui nilai; object_array harus berupa array objek dan menggantikan array yang ada. |
increase |
Angka | Menambahkan angka yang diberikan ke nilai yang ada; properti yang belum ada dimulai dari 0. |
add |
Daftar, array objek | Menambahkan elemen daftar tanpa duplikat, atau menambahkan satu objek ke array objek. |
remove |
Daftar, array objek | Menghapus elemen daftar, atau satu elemen array objek berdasarkan pengenal. |
delete |
Semua jenis | Menghapus semua nilai properti. |
setOnce |
Semua jenis | Menulis hanya jika properti belum pernah ditetapkan. |
update |
Array objek | Memperbarui sebagian satu elemen array objek berdasarkan pengenal. |
Operasi Array Objek
Untuk object_array, nilai add adalah satu objek JSON dan nilai set adalah array objek JSON. remove dan update mencari elemen dengan $identifier_key dan $identifier_value; kolom pengenal harus merupakan subkolom string atau number yang sudah didefinisikan.
Nilai remove hanya boleh berisi kedua kolom pengenal tersebut:
{
"euid": 10362473,
"type": "remove",
"properties": {
"devices": {
"$identifier_key": "device_id",
"$identifier_value": "ios-001"
}
}
}
update juga harus menyertakan $new_object yang tidak kosong. Objek tersebut tidak boleh berisi kolom pengenal; kolom dengan nilai null dihapus dari elemen yang cocok. Pengenal harus cocok dengan tepat satu elemen array.
{
"euid": 10362473,
"type": "update",
"properties": {
"devices": {
"$identifier_key": "device_id",
"$identifier_value": "ios-001",
"$new_object": {
"model": "iPhone 16",
"legacy_field": null
}
}
}
}
Parameter Respons
| Field | Tipe | Wajib | Deskripsi |
|---|---|---|---|
| code | Int | Ya | Status pemanggilan API. 0 berarti berhasil/berhasil sebagian, nilai lain berarti gagal |
| message | String | Ya | Deskripsi hasil pemanggilan API, menjelaskan kode balikan |
Semua Berhasil
{
"code": 0,
"message": "success"
}
Semua Gagal
{
"code": 55102,
"message": "Atribut pengguna tidak valid"
}
Kode Error
| Kode | Deskripsi | Penjelasan Detail |
|---|---|---|
| 40050 | Autentikasi antarmuka gagal. | Pastikan project ID dan secret key sudah benar. |
| 40007 | EUID kosong. | Silakan periksa nilai EUID. |
| 50031 | Project ID tidak valid. | Silakan periksa apakah APIKey dan APISecret sudah benar. |
| 50034 | Project ID tidak ada. | Silakan periksa apakah APIKey dan APISecret sudah benar, dan cek apakah project sudah dihapus. |
| 50074 | Sumber data API tidak ada. | Silakan periksa apakah APIKey dan APISecret sudah benar, dan cek apakah sumber data API sudah dihapus. |
| 55004 | Parameter bisnis tidak valid. | Silakan periksa apakah field pada parameter permintaan sudah benar. |
| 55101 | Jumlah identifier pengguna melebihi batas. | Pastikan jumlah nilai identifier pengguna tidak melebihi 100. |
| 55102 | Ada nama atribut pengguna yang tidak valid. | Pastikan nama atribut sesuai ketentuan penamaan, tidak kosong/tidak menggunakan karakter yang dilarang/tidak melebihi batas panjang. |
| 55103 | Nilai atribut pengguna tidak boleh kosong. | Pastikan nilai atribut pengguna pada body permintaan tidak kosong. |
| 55105 | Nilai identifier pengguna tidak boleh melebihi 256 karakter. | Pastikan nilai identifier pengguna tidak melebihi 256 karakter. |
| 55106 | Nama identifier pengguna tidak didukung. | Pastikan nama identifier pengguna adalah user_id, anonymous_id, atau registration_id. |
| 55107 | Nilai identifier pengguna kosong. | Pastikan nilai identifier pengguna pada body permintaan tidak kosong. |
| 55108 | EUID tidak valid. | Silakan periksa nilai EUID. |
| -1 | Kesalahan server internal. | Silakan hubungi dukungan teknis EngageLab. |










