Kode Error
Dokumen ini berlaku untuk MA Web SDK versi mandiri 2.x.
Definisi Kode Error Sisi Klien
Callback code yang dihasilkan secara lokal oleh Web SDK memiliki tiga nilai berikut:
| Code | Deskripsi | Penjelasan Detail |
|---|---|---|
| 0 | Permintaan berhasil | Permintaan antarmuka berhasil (message selalu success) |
| -1 | Permintaan gagal | Validasi parameter lokal gagal, SDK belum siap (belum init / belum memperoleh RID/EUID), gangguan jaringan, respons tidak dapat diurai, atau server mengembalikan respons yang tidak valid. Alasan spesifiknya lihat message pada callback |
| -8 | Pengumpulan data telah dinonaktifkan | Sejak 2.2.0. Setelah pengumpulan dinonaktifkan melalui Sakelar Pengumpulan Data, antarmuka kategori properti pengguna (setProperty, increaseProperty, addProperty, deleteProperty, removeProperty, updateProperty) dicegat dan operasi ini tidak dijalankan; message selalu data collection disabled. Antarmuka tanpa callback seperti event dan UTM dibuang secara diam-diam selama nonaktif dan tidak mengembalikan kode ini |
message -1 lokal yang umum (dikembalikan ke aplikasi dalam teks asli bahasa Inggris):
| message | Skenario pemicu |
|---|---|
invalid argument: enabled must be boolean |
Parameter setDataCollectionEnabled bukan boolean |
sdk hasn't registered yet, request will be cancel |
init belum selesai atau /get-rid belum berhasil, sehingga antarmuka kategori pengguna dicegat |
MA EUID is not a valid Long |
EUID lokal hilang atau tidak valid (biasanya /get-euid belum berhasil) |
identifyAccount fail loginID and mobile are nil |
identifyAccount dipanggil dengan objek identitas kosong (teks dipertahankan identik byte demi byte dengan v1) |
user_id cannot be "0" / email format is invalid / phone must be E.164 format (+[1-9] followed by 1-14 digits) dll. |
Pra-validasi aturan field identifikasi pengguna gagal (aturan lihat "Panduan API - Atur Identifikasi Pengguna") |
channelId must be greater than 0 / channel values cannot be empty / channel value element cannot be empty |
Validasi parameter setChannelValue gagal |
userIdentity is invalid: ... |
Seluruh field userIdentity yang dibawa pada init ulang tidak valid (sejak 2.1.0, init ulang dengan AppKey yang berbeda akan beralih sumber data dan tidak lagi mengembalikan error) |
network exception |
Permintaan jaringan gagal atau respons tidak valid |
Kode Bisnis Sisi Server
Saat server secara eksplisit mengembalikan kegagalan bisnis, SDK tidak melipatnya menjadi -1, melainkan meneruskan code dan teks dari server apa adanya ke callback, sehingga code positif dapat muncul di callback.
Kode bisnis sisi server hanya digunakan untuk penelusuran masalah dan bukan bagian dari kontrak eksternal SDK yang stabil. Jangan menulis percabangan bisnis berdasarkan code positif tertentu; gunakan code === 0 secara seragam untuk menentukan keberhasilan, dan saat terjadi kegagalan yang tidak diharapkan, berikan code dan message asli kepada dukungan teknis.
Saat init dipanggil berulang (sejak 2.1.0 setiap pemanggilan mengambil ulang EUID), kegagalan permintaan ulang EUID yang bersangkutan juga diteruskan apa adanya sebagai kode bisnis sisi server sesuai aturan di atas.
Lampiran: Kode Bisnis Sisi Server yang Umum
Nilai berikut hanya sebagai referensi penelusuran masalah dan tidak dijamin tetap stabil seiring versi SDK atau server:
| Code | Arti |
|---|---|
| 55004 | Parameter bisnis tidak valid, misal AppKey channel belum dipetakan di proyek saat ini, channelId tidak ada di proyek saat ini, nilai channel sama dengan MA RID, atau updateProperty / removeProperty dipanggil pada properti object_array yang belum didefinisikan |
| 55100 | Registrasi pengguna gagal |
| 55101 | Jumlah identifikasi pengguna melebihi batas maksimum |
| 55102 | Terdapat nama properti pengguna yang tidak valid |
| 55103 | Nilai properti pengguna kosong |
| 55105 | Nilai identifikasi pengguna melebihi 256 karakter |
| 55106 | Nama identifikasi pengguna di luar cakupan yang didukung |
| 55107 | Nilai identifikasi pengguna kosong |
| 55108 | EUID tidak valid, misal maEuid dan maRid bukan milik pengguna MA yang sama |
| 55110 | Permintaan terlalu sering, coba lagi nanti |
| 55000 | Error sistem sisi server |
| 40007 | EUID kosong |










