Sinkronisasi Data Pengguna melalui HTTP API

Sinkronisasi Data PenggunaCommunity Edition+

Mendapatkan API Key

Lihat API Keys. Anda perlu memastikan role yang ditetapkan untuk API Key memiliki izin sinkronisasi data pengguna.

Penjelasan API

Contoh

curl 'https://localhost:13000/api/userData:push' \
  -H 'Authorization: Bearer <token>' \
  --data-raw '{"dataType":"user","records":[]}' # Lihat penjelasan detail body request di bawah

Endpoint

POST /api/userData:push

Format Data Pengguna

UserData

Nama ParameterTipeKeterangan
dataType'user' | 'department'Wajib, tipe data yang di-push, untuk push data pengguna isi user
matchKey'username' | 'email' | 'phone'Opsional, akan mencari pengguna yang sudah ada di sistem berdasarkan field yang disediakan dan nilai field yang sesuai dalam data yang di-push, untuk mencocokkan
recordsUserRecord[]Wajib, array record data pengguna

UserRecord

Nama ParameterTipeKeterangan
uidstringWajib, identifier unik dari sumber data pengguna, digunakan untuk mengaitkan data asli sumber dengan pengguna sistem. Tidak dapat berubah untuk pengguna yang sama.
nicknamestringOpsional, nickname pengguna
usernamestringOpsional, username
emailstringOpsional, email pengguna
phonestringOpsional, nomor telepon
departmentsstring[]Opsional, array uid departemen yang diikuti pengguna
isDeletedbooleanOpsional, apakah record dihapus
<field>anyOpsional, data field kustom lain di tabel pengguna

Format Data Departemen

Info

Prasyarat untuk push data departemen adalah menginstal dan mengaktifkan plugin Departemen.

DepartmentData

Nama ParameterTipeKeterangan
dataType'user' | 'department'Wajib, tipe data yang di-push, untuk push data departemen isi department
recordsDepartmentRecord[]Wajib, array record data departemen

DepartmentRecord

Nama ParameterTipeKeterangan
uidstringWajib, identifier unik dari sumber data departemen, digunakan untuk mengaitkan data asli sumber dengan departemen sistem. Tidak dapat berubah untuk departemen yang sama.
titlestringWajib, judul departemen
parentUidstringOpsional, uid departemen induk
isDeletedbooleanOpsional, apakah record dihapus
<field>anyOpsional, data field kustom lain di tabel departemen

:::info

  1. Push data idempoten saat dilakukan beberapa kali.
  2. Jika saat push departemen, departemen induk belum dibuat, maka tidak dapat dikaitkan. Anda dapat melakukan push ulang data.
  3. Jika saat push pengguna, departemen belum dibuat, maka tidak dapat dikaitkan dengan departemen yang diikuti. Setelah melakukan push data departemen, Anda dapat melakukan push data pengguna lagi. :::