Anda dapat menelusuri pengguna yang cocok dengan atribut tertentu menggunakan
metode users.list()
dari
Directory API. Metode ini menerima parameter query
yang merupakan kueri penelusuran yang menggabungkan satu atau beberapa klausa penelusuran. Setiap klausa penelusuran terdiri dari
3 bagian:
- Kolom
- Atribut pengguna yang ditelusuri. Misalnya,
givenName
. - Operator
- Pengujian yang dilakukan pada data untuk memberikan kecocokan. Misalnya, operator
:
menguji apakah atribut teks berisi nilai. - Nilai
- Konten atribut yang diuji. Misalnya,
Jane
.
Untuk menelusuri beberapa kolom dalam kueri, tambahkan setiap klausa penelusuran, yang dipisahkan oleh
spasi. Operasi ini adalah AND
implisit.
Kolom
Kolom | Jenis Nilai | Operator | Deskripsi |
---|---|---|---|
Tidak satu pun ditetapkan | string | Bandingkan dengan nilai di givenName , familyName , atau email . |
|
name |
string | =, : |
Nilai gabungan givenName dan familyName . |
email |
string | = , : , :{PREFIX}* |
Alamat email pengguna, termasuk alias. |
givenName |
string | = , : , :{PREFIX}* |
Nama depan atau nama panggilan pengguna. |
familyName |
string | = , : , :{PREFIX}* |
Nama keluarga atau nama belakang pengguna. |
isAdmin |
boolean | = |
Apakah pengguna memiliki hak istimewa administrator super. |
isDelegatedAdmin |
boolean | = |
Apakah pengguna telah mendelegasikan hak istimewa administrator. |
isSuspended |
boolean | = |
Apakah akun pengguna ditangguhkan. |
isArchived |
boolean | = |
Apakah akun pengguna diarsipkan. |
im |
string | =, : |
ID jaringan IM. |
externalId |
string | =, : |
Nilai ID eksternal. |
manager |
string | = |
Alamat email pengelola pengguna, baik secara langsung maupun di rantai manajemen. |
managerId |
string | = |
ID pengelola pengguna secara langsung atau di rantai pengelolaan. |
directManager |
string | = |
Alamat email pengelola langsung pengguna. |
directManagerId |
string | = |
ID pengelola langsung pengguna. |
address |
string | : |
Mencocokkan semua kolom alamat. |
addressPoBox |
string | =, : |
Kotak pos. |
addressExtended |
string | =, : |
Alamat yang diperluas, seperti alamat yang menyertakan sub-wilayah. |
addressStreet |
string | =, : |
Alamat. |
addressLocality |
string | =, : |
Kota atau kota kecil alamat. |
addressRegion |
string | =, : |
Provinsi atau negara bagian yang disingkat. |
addressPostalCode |
string | =, : |
Kode pos. |
addressCountry |
string | =, : |
Negara. |
orgName |
string | =, : |
Nama organisasi. |
orgTitle |
string | =, : |
Jabatan pengguna dalam organisasi. |
orgDepartment |
string | =, : |
Departemen dalam organisasi. |
orgDescription |
string | =, : |
Deskripsi organisasi. |
orgCostCenter |
string | =, : |
Pusat biaya organisasi. |
phone |
string | = |
Nomor telepon pengguna. |
orgUnitPath |
string | = |
Jalur lengkap unit organisasi. Ini cocok dengan semua rantai unit organisasi dalam target. Misalnya, 'orgUnitPath=/' menampilkan semua pengguna di organisasi. Kolom ini hanya dapat digunakan jika viewType=admin_view . |
isEnrolledIn2Sv |
boolean | = |
Apakah pengguna terdaftar dalam Verifikasi 2 Langkah. |
isEnforcedIn2Sv |
boolean | = |
Apakah Verifikasi 2 Langkah diterapkan untuk pengguna. |
schemaName.fieldName |
? | ? | Atribut pengguna kustom, yang dirujuk oleh skema dan nama kolomnya. Kolom harus memiliki properti indexed yang ditetapkan ke true . |
Jenis Nilai
Jenis Nilai | fieldType Skema yang Setara | Catatan |
---|---|---|
string | STRING , EMAIL , PHONE |
Apit dengan tanda kutip tunggal ' jika kueri berisi spasi kosong. Escape tanda kutip tunggal dalam kueri dengan \' , misalnya 'Valentine\'s Day' . |
boolean | BOOL |
Harus memiliki nilai true atau false . Hanya mendukung operator = . |
angka | INT64 , DOUBLE |
Harus menggunakan titik sebagai pemisah desimal dan tidak boleh menggunakan pemisah ribuan, misalnya 150430.25 . |
tanggal | DATE |
Ditentukan dalam format YYYY-MM-DD, misalnya 2001-02-15 . |
Operator
Operator | Jenis Nilai yang Didukung | Catatan |
---|---|---|
= |
string, boolean, angka, tanggal | Kolom dan nilai sama persis. Misalnya, givenName=Jane cocok dengan semua pengguna dengan atribut givenName "Jane" , tetapi tidak dengan "Jane Ann" . Didukung di sebagian besar kolom string (lihat di atas). |
: |
string | Kolom ini berisi seluruh kata dalam nilai, secara berurutan. Misalnya, kueri dengan givenName:Jane cocok dengan pengguna dengan nilai givenName "Jane" dan "Jane Ann" , tetapi tidak dengan "Janet" . Kueri multi-kata untuk 'givenName:Mary Ann' akan cocok dengan nilai "Mary Ann Evans" dan "Sarah Mary Ann" , tetapi tidak cocok dengan "Ann Mary" . Didukung di sebagian besar kolom string (lihat di atas). |
:{PREFIX}* |
string | Kolom diawali dengan nilai. Misalnya, kueri dengan givenName:Jane* cocok dengan pengguna dengan nilai givenName "Jane" , "Jane Ann" , dan "Janet" , tetapi tidak dengan "Sarah Jane" . Hanya didukung pada kumpulan kolom string terbatas (lihat di atas). Tidak didukung pada atribut kustom. |
:[{MIN},{MAX}] |
number, date | Kolom berada dalam rentang. Agar cocok, nilai kolom harus lebih besar dari atau sama dengan {MIN} dan kurang dari {MAX} . Atribut nomor kustom harus menentukan numericIndexingSpec untuk mendukung operator ini. |
> |
number, date | Kolom lebih besar dari nilai. Atribut nomor kustom harus menentukan numericIndexingSpec untuk mendukung operator ini. |
>= |
number, date | Kolom lebih besar dari atau sama dengan nilai. Atribut nomor kustom harus menentukan numericIndexingSpec untuk mendukung operator ini. |
< |
number, date | Kolom kurang dari nilai. Atribut nomor kustom harus menentukan numericIndexingSpec untuk mendukung operator ini. |
<= |
number, date | Kolom kurang dari atau sama dengan nilai. Atribut nomor kustom harus menentukan numericIndexingSpec untuk mendukung operator ini. |
Contoh
Semua kueri menggunakan metode users.list
, yang memiliki permintaan HTTP yang mirip dengan berikut (jeda baris disertakan agar mudah dibaca):
GET https://admin.googleapis.com/admin/directory/v1/users?domain=DOMAIN_NAME&query=QUERY_PARAMETERS
Menelusuri pengguna menurut nama
Kolom kueri name
menguji nilai gabungan givenName
dan familyName
. Kueri untuk name='Jane'
tidak menampilkan hasil untuk pengguna dengan
givenName='Jane'
dan familyName='Smith'
.
name='Jane Smith'
Menelusuri pengguna dengan givenName
ATAU familyName
yang berisi nilai
name:'Jane'
Menelusuri pengguna yang cocok dengan awalan email
email:admin*
Menelusuri semua administrator super
isAdmin=true
Menelusuri pengguna dengan orgTitles
yang berisi "Pengelola"
orgTitle:Manager
Menelusuri pengguna dengan manajer yang sama dalam rantai pelaporan mereka
manager='janesmith@example.com'
Menelusuri pengguna dengan pengelola langsung yang sama
directManager='bobjones@example.com'
Menelusuri pengguna di negara tertentu
addressCountry='Sweden'
Menelusuri pengguna di organisasi tertentu
orgName='Human Resources'
Menelusuri pengelola di organisasi tertentu
orgName=Engineering orgTitle:Manager
Menelusuri atribut pengguna kustom
Menelusuri semua karyawan yang bekerja pada project tertentu
EmploymentData.projects:'GeneGnomes'
Menelusuri semua karyawan di lokasi tertentu
EmploymentData.location='Atlanta'
Menelusuri semua karyawan di atas tingkat jabatan 7
EmploymentData.jobLevel>=7
Telusuri semua karyawan dengan tingkat pekerjaan >= 5 dan < 8
EmploymentData.jobLevel:[5,8]
Menelusuri semua karyawan yang terdaftar di Verifikasi 2 Langkah
isEnrolledIn2Sv=true
Menelusuri semua karyawan yang telah menerapkan Verifikasi 2 Langkah
isEnforcedIn2Sv=true