Directory API'nin users.list()
yöntemini kullanarak belirli özelliklerle eşleşen kullanıcıları arayabilirsiniz. Bu yöntem, bir veya daha fazla arama yan tümcesini birleştiren bir arama sorgusu olan query
parametresini kabul eder. Her arama yan tümcesi 3 bölümden oluşur:
- Alan
- Arama yapılan kullanıcı özelliği. Örneğin,
givenName
. - Operatör
- Eşleşme sağlamak için veriler üzerinde gerçekleştirilen test. Örneğin,
:
operatörü bir metin özelliğinin değer içerip içermediğini test eder. - Değer
- Test edilen özelliğin içeriği. Örneğin,
Jane
.
Sorguda birden çok alanda arama yapmak için her arama yan tümcesini boşlukla ayırarak ekleyin. İşlem, dolaylı bir AND
işlemidir.
Alanlar
Alan | Değer Türü | Operatörler | Açıklama |
---|---|---|---|
Belirtilmedi | dize | givenName , familyName veya email içindeki değerle karşılaştırılır. |
|
name |
dize | =, : |
givenName ve familyName değerlerinin birleştirilmiş hali. |
email |
dize | = , : , :{PREFIX}* |
Takma adlar dahil olmak üzere kullanıcının e-posta adresleri. |
givenName |
dize | = , : , :{PREFIX}* |
Kullanıcının adı. |
familyName |
dize | = , : , :{PREFIX}* |
Kullanıcının aile adı veya soyadı. |
isAdmin |
boolean | = |
Kullanıcının süper yönetici ayrıcalıklarına sahip olup olmadığı. |
isDelegatedAdmin |
boolean | = |
Bir kullanıcıya yönetici ayrıcalıkları verilip verilmediği. |
isSuspended |
boolean | = |
Kullanıcı hesabının askıya alınıp alınmadığını belirtir. |
isArchived |
boolean | = |
Kullanıcının hesabının arşivlenip arşivlenmediği. |
im |
dize | =, : |
IM ağ kimliği. |
externalId |
dize | =, : |
Harici kimlik değeri. |
manager |
dize | = |
Kullanıcının doğrudan veya yönetim zincirinde üst yöneticisinin e-posta adresi. |
managerId |
dize | = |
Kullanıcının doğrudan veya yönetim zincirinde üst yöneticisinin kimliği. |
directManager |
dize | = |
Kullanıcının doğrudan yöneticisinin e-posta adresi. |
directManagerId |
dize | = |
Kullanıcının doğrudan yöneticisinin kimliği. |
address |
dize | : |
Tüm adres alanlarıyla eşleşir. |
addressPoBox |
dize | =, : |
Posta kutusu. |
addressExtended |
dize | =, : |
Alt bölge içeren bir adres gibi genişletilmiş bir adres. |
addressStreet |
dize | =, : |
Açık adrestir. |
addressLocality |
dize | =, : |
Adresin bulunduğu kasaba veya şehir. |
addressRegion |
dize | =, : |
Kısaltılmış il veya eyalet. |
addressPostalCode |
dize | =, : |
Posta kodu. |
addressCountry |
dize | =, : |
Ülke. |
orgName |
dize | =, : |
Kuruluş adı. |
orgTitle |
dize | =, : |
Kullanıcının kuruluştaki unvanı. |
orgDepartment |
dize | =, : |
Kuruluştaki bir departman. |
orgDescription |
dize | =, : |
Kuruluşun açıklaması. |
orgCostCenter |
dize | =, : |
Bir kuruluşun maliyet merkezi. |
phone |
dize | = |
Kullanıcının telefon numarası. |
orgUnitPath |
dize | = |
Bir kuruluş biriminin tam yolu. Bu, hedefin altındaki tüm kuruluş birimi zincirleriyle eşleşir. Örneğin, 'orgUnitPath=/' kuruluştaki tüm kullanıcıları döndürür. Bu alan yalnızca viewType=admin_view olduğunda kullanılabilir. |
isEnrolledIn2Sv |
boolean | = |
Kullanıcının 2 Adımlı Doğrulama'ya kaydolup kaydolmadığı. |
isEnforcedIn2Sv |
boolean | = |
Kullanıcı için 2 Adımlı Doğrulama'nın zorunlu kılınıp kılınmadığı. |
schemaName.fieldName |
? | ? | Şeması ve alan adıyla referans verilen bir özel kullanıcı özelliği. Alanın indexed özelliği true olarak ayarlanmalıdır. |
Değer Türleri
Değer Türü | Eşdeğer Şema fieldType | Notlar |
---|---|---|
dize | STRING , EMAIL , PHONE |
Sorgu boşluk içeriyorsa tek tırnak işareti ' içine alın. Sorgulardaki tek tırnak işaretlerini \' ile 'Valentine\'s Day' gibi bir karakterle tırnak içine alın. |
boolean | BOOL |
true veya false değerine sahip olmalıdır. Yalnızca = operatörünü destekler. |
sayı | INT64 , DOUBLE |
Ondalık ayırıcı olarak nokta kullanılmalıdır ve binlik ayırıcı kullanılmamalıdır (ör. 150430.25 ). |
tarih | DATE |
YYYY-AA-GG biçiminde belirtilir (ör. 2001-02-15 ). |
Operatörler
Operatör | Desteklenen Değer Türleri | Notlar |
---|---|---|
= |
dize, boole, sayı, tarih | Alan ve değer tam olarak eşleşir. Örneğin, givenName=Jane , givenName özelliği "Jane" olan tüm kullanıcılarla eşleşir ancak "Jane Ann" ile eşleşmez. Çoğu dize alanında desteklenir (yukarıya bakın). |
: |
dize | Alan, değerdeki kelimelerin tamamını sırayla içerir. Örneğin, givenName:Jane içeren bir sorgu, givenName değeri "Jane" ve "Jane Ann" olan kullanıcılarla eşleşir ancak "Janet" ile eşleşmez. 'givenName:Mary Ann' için çok kelimeli bir sorgu, "Mary Ann Evans" ve "Sarah Mary Ann" değerleriyle eşleşir ancak "Ann Mary" ile eşleşmez. Çoğu dize alanında desteklenir (yukarıya bakın). |
:{PREFIX}* |
dize | Alan, değerle başlar. Örneğin, givenName:Jane* içeren bir sorgu, givenName değeri "Jane" , "Jane Ann" ve "Janet" olan kullanıcılarla eşleşir ancak "Sarah Jane" ile eşleşmez. Yalnızca sınırlı sayıda dize alanında desteklenir (yukarıya bakın). Özel özelliklerde desteklenmez. |
:[{MIN},{MAX}] |
numara, tarih | Alan bir aralık içindedir. Eşleşme için alanın değeri {MIN} veya daha büyük ve {MAX} 'ten küçük olmalıdır. Özel sayı özellikleri, bu operatörü desteklemek için bir numericIndexingSpec belirtmelidir. |
> |
numara, tarih | Alan, değerden büyük. Özel sayı özellikleri, bu operatörü desteklemek için bir numericIndexingSpec belirtmelidir. |
>= |
numara, tarih | Alan, değerden büyük veya eşit. Özel sayı özellikleri, bu operatörü desteklemek için bir numericIndexingSpec belirtmelidir. |
< |
numara, tarih | Alan, değerden küçük. Özel sayı özellikleri, bu operatörü desteklemek için bir numericIndexingSpec belirtmelidir. |
<= |
numara, tarih | Alan, değerden küçük veya eşit. Özel sayı özellikleri, bu operatörü desteklemek için bir numericIndexingSpec belirtmelidir. |
Örnekler
Tüm sorgular, aşağıdakine benzer bir HTTP isteği içeren users.list
yöntemini kullanır (okunabilirlik için satır sonları dahil edilmiştir):
GET https://admin.googleapis.com/admin/directory/v1/users?domain=DOMAIN_NAME&query=QUERY_PARAMETERS
Kullanıcıları ada göre arama
name
sorgu alanı, givenName
ve familyName
değerlerinin birleştirilmiş değerini test eder. name='Jane'
için yapılan bir sorgu, givenName='Jane'
ve familyName='Smith'
özelliklerine sahip bir kullanıcı için sonuç döndürmez.
name='Jane Smith'
Değer içeren bir givenName
VEYA familyName
özelliğine sahip kullanıcıları arama
name:'Jane'
E-posta ön ekiyle eşleşen kullanıcıları arama
email:admin*
Tüm süper yöneticileri arama
isAdmin=true
orgTitles
değerinde "Yönetici" bulunan kullanıcıları arama
orgTitle:Manager
Raporlama zincirlerinde ortak bir yöneticisi olan kullanıcıları arama
manager='janesmith@example.com'
Aynı doğrudan yöneticiye sahip kullanıcıları arama
directManager='bobjones@example.com'
Belirli bir ülkedeki kullanıcıları arama
addressCountry='Sweden'
Belirli bir kuruluştaki kullanıcıları arama
orgName='Human Resources'
Belirli bir kuruluştaki yöneticileri arama
orgName=Engineering orgTitle:Manager
Özel kullanıcı özelliklerini arama
Belirli bir projede çalışan tüm çalışanları arama
EmploymentData.projects:'GeneGnomes'
Belirli bir konumdaki tüm çalışanları arama
EmploymentData.location='Atlanta'
7. iş seviyesinin üzerindeki tüm çalışanları arama
EmploymentData.jobLevel>=7
İş düzeyi >= 5 ve < 8 olan tüm çalışanları arayın
EmploymentData.jobLevel:[5,8]
2 Adımlı Doğrulama'ya kaydolan tüm çalışanları arama
isEnrolledIn2Sv=true
2 Adımlı Doğrulama'nın zorunlu kılındığı tüm çalışanları arama
isEnforcedIn2Sv=true