Apps API dirancang untuk mengambil data konfigurasi pengguna. Anda dapat membaca konfigurasi pengguna saat ini untuk semua pengguna, atau untuk satu pengguna, terlepas dari peran atau status mereka. Peran sistem dan peran khusus disertakan dalam output ini.
Endpoint ini berbeda dengan endpoint yang digunakan dalam proses Upload Pengguna Massal, dan memberikan informasi yang diperlukan untuk mendukung operasi massal. Untuk informasi selengkapnya tentang cara melakukan proses pengelolaan pengguna massal, lihat Bulk User Management API.
Kemampuan dan batasan API
Saat mengambil data pengguna, Anda dapat menyertakan parameter untuk menyesuaikan respons API dengan kebutuhan Anda. Parameter berikut didukung:
Pengguna Tertentu
- Opsi ID: Email, ID Sistem, atau ID pengguna kustom. Pengguna dapat menentukan satu atau beberapa ID. Jika beberapa ID pengguna mengarah ke pengguna yang sama, pengguna tersebut hanya boleh ditampilkan satu kali dalam respons.
Penomoran halaman
Pengguna dapat mengambil hasil dalam set yang dipaginasi untuk mengelola set data yang besar. Respons API harus menunjukkan apakah ada halaman tambahan yang akan diambil.
Parameter API memungkinkan pengguna meminta halaman hasil tertentu.
Pengguna dapat menentukan ukuran halaman. Ukuran halaman default adalah 100, dan maksimumnya adalah 1.000. Jika nomor halaman tertentu diberikan, ID pengguna tidak dapat disertakan dalam permintaan.
Respons API mencakup semua kolom profil dan konfigurasi pengguna, kecuali kolom 'Status'. Sebagai ganti kolom 'Status', API akan menyediakan kolom deactivated_at. Kolom ini akan berisi:
Tidak ada nilai untuk pengguna aktif.
Tanggal dan waktu saat pengguna dinonaktifkan.
Tabel berikut mencantumkan kolom profil pengguna yang akan disertakan dalam respons API:
Tabel 1. Tabel kolom profil pengguna
| Memesan | Jenis Kolom | Jumlah Kolom | Nama Kolom | Nilai yang Valid |
| 1 | 1 | |||
| 2 | ID Agen | 1 | ID Agen | String |
| 3 | Nama depan | 1 | Nama depan | String |
| 4 | Nama belakang | 1 | Nama belakang | String |
| 5 | Alias | 1 | Alias | String |
| 6 | Dinonaktifkan pada | 1 | Dinonaktifkan pada | Tidak ada nilai, Tanggal/waktu |
| 7 | Lokasi | 1 | Lokasi | String yang merupakan nama lokasi, Kosong (tidak ada perubahan), Null (menghapus lokasi saat ini). |
| 8 | Serentak menggunakan chat | 1 | Serentak menggunakan chat | 1 hingga X (dengan X adalah nilai yang dikonfigurasi), Kosong |
| 9 | Status konkurensi chat | 1 | Status konkurensi chat | 0, 1, Kosong |
| 10 | Panggilan internasional tanpa batasan | 1 | Panggilan internasional tanpa batasan | (Benar/Salah) |
| 11 | Pengguna Eksternal | 1 | Pengguna Eksternal | (Ya/Tidak) |
| 12 | URI SIP eksternal | 1 | URI SIP eksternal | String |
| 13 | Nama Pengguna UCaaS | 1 | Nama Pengguna UCaaS | String |
| 14 | Ekstensi Agen | 1 | Ekstensi Agen | |
| 15 | Peran | Beberapa | Peran: Nama Peran A Peran: Nama Peran B Peran: Nama Peran C, dll. | 0, 1, Kosong |
| 16 | Tim | Beberapa | Tim: Nama Tim A,
Tim: Nama Tim B, Tim: Team Name C, dll. |
0, 1, Kosong |
| 17 | Nomor telepon | Beberapa | Nomor Masuk Langsung: 1,
Nomor Masuk Langsung: 2, Nomor Masuk Langsung: 3 |
Nomor telepon dalam format E. 164 |
| 18 | Filter | Sekali | Filter | String |
| 19 | Waktu Tunggu Filter | Sekali | Waktu Tunggu Filter | Nilai numerik antara 0 - 1.440 |
Batasan
Hanya satu jenis ID pengguna yang didukung per permintaan.
Jumlah maksimum ID per permintaan API adalah 1.000.
Pengguna tidak dapat memberikan ID pengguna dan permintaan nomor halaman dalam satu permintaan API. API akan menampilkan semua pengguna berdasarkan permintaan, hingga 1.000 pengguna.
Pesan error API
API akan memberikan pesan error berikut untuk skenario tertentu:
Ukuran halaman: "Melebihi permintaan ukuran halaman maksimum (1.000 adalah maksimum)"
Ukuran halaman (persyaratan input angka): "Permintaan ukuran halaman tidak valid; harus berupa nilai numerik"
Permintaan penomoran halaman dan ID pengguna gabungan: "Kombinasi ID pengguna dan permintaan penomoran halaman tidak didukung"
ID Pengguna (terlampaui): "Melampaui jumlah maksimum ID pengguna (maksimum 1.000)"
Contoh permintaan dan respons
Contoh ini menunjukkan cara mengambil halaman pertama pengguna dengan 100 pengguna per halaman. Isi respons mencakup array objek pengguna, yang masing-masing berisi data konfigurasi pengguna yang mendetail.
Permintaan:
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/apps/api/v1/users?page=1&per_page=100
Respons:
[
{
"email": "email",
"agent_number": "number",
"first_name": "first",
"last_name": "last",
"status": "Active",
"location": "location",
"max_chat_limt": 3,
"max_chat_limit_enabled": true,
"deleted_at": "2024-07-16T15:57:12.000Z",
"ucaas_user_name": "username",
"external_user": true,
"ucaas_sip_uri": "sip uri",
"unrestricted_international_calling": false,
"roles": [
{ "name": "Admin" },
{ "name": "Manager" }
],
"teams": [
{ "name": "name" }
],
"phone_numbers": [
"123-456-7890",
"098-765-4321"
]
},
...
]
Contoh ini menunjukkan pengambilan detail satu pengguna dengan meneruskan parameter email. Isi respons mencakup objek pengguna yang berisi data konfigurasi pengguna yang mendetail.
Permintaan:
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/apps/api/v1/users?email[]=email
Respons:
[
{
"email": "email",
"agent_number": "number",
"first_name": "first",
"last_name": "last",
"status": "Active",
"location": "location",
"max_chat_limt": 3,
"max_chat_limit_enabled": true,
"deleted_at": "2024-07-16T15:57:12.000Z",
"ucaas_user_name": "username",
"external_user": true,
"ucaas_sip_uri": "sip uri",
"unrestricted_international_calling": false,
"roles": [
{ "name": "Admin" },
{ "name": "Manager" }
],
"teams": [
{ "name": "name" }
],
"phone_numbers": [
"123-456-7890",
"098-765-4321"
]
}
]