Mendapatkan data konfigurasi pengguna

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 Email 1 Email Email
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"
    ]
  }
]