Directory API'nin users.list()
yöntemiyle belirli özelliklerle eşleşen kullanıcıları arayabilirsiniz. Bu yöntem, bir veya daha fazla arama ifadesini birleştiren bir arama sorgusu olan query
parametresini kabul eder. Her arama ifadesi 3 bölümden oluşur:
- Alan
- Aranan 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çeren olup olmadığını test eder. - Değer
- Test edilen özelliğin içeriği. Örneğin,
Jane
.
Bir sorguda birden çok alanda arama yapmak için her bir arama ifadesini boşlukla ayırarak ekleyin. İşlem, örtülü bir AND
işlemidir.
Alanlar
Alan | Değer Türü | Operatörler | Açıklama |
---|---|---|---|
Belirtilmedi | dize | givenName , familyName veya email değerleriyle karşılaştırın. |
|
name |
dize | =, : |
givenName ve familyName değerlerinin birleştirilmiş değeri. |
email |
dize | = , : , :{PREFIX}* |
Takma adlar da dahil olmak üzere kullanıcının e-posta adresleri. |
givenName |
dize | = , : , :{PREFIX}* |
Bir kullanıcının adı veya adı. |
familyName |
dize | = , : , :{PREFIX}* |
Kullanıcının ailesi veya soyadı. |
isAdmin |
boolean | = |
Kullanıcının süper yönetici ayrıcalıklarına sahip olup olmadığı. |
isDelegatedAdmin |
boolean | = |
Bir kullanıcının yönetici ayrıcalıklarına sahip olup olmadığı. |
isSuspended |
boolean | = |
Kullanıcı hesabının askıya alınıp alınmadığı. |
isArchived |
boolean | = |
Kullanıcı hesabının arşivlenip arşivlenmediği. |
im |
dize | =, : |
IM ağ kimliği. |
externalId |
dize | =, : |
Harici kimlik değeri. |
manager |
dize | = |
Doğrudan veya yönetim zincirinde yer alan bir kullanıcının yöneticisinin e-posta adresi. |
managerId |
dize | = |
Doğrudan veya yönetim zincirindeki bir kullanıcının yöneticisinin kimliği. |
directManager |
dize | = |
Bir kullanıcının doğrudan yöneticisinin e-posta adresi. |
directManagerId |
dize | = |
Bir 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ış bir il veya eyalet. |
addressPostalCode |
dize | =, : |
Posta kodu. |
addressCountry |
dize | =, : |
Bir ülke. |
orgName |
dize | =, : |
Kuruluş adı. |
orgTitle |
dize | =, : |
Kullanıcının kuruluştaki unvanı. |
orgDepartment |
dize | =, : |
Kurum içindeki bir departman. |
orgDescription |
dize | =, : |
Bir kuruluşun açıklaması. |
orgCostCenter |
dize | =, : |
Bir kuruluşun maliyet merkezidir. |
phone |
dize | = |
Kullanıcının telefon numarası. |
orgUnitPath |
dize | = |
Bir kuruluş biriminin tam yolu. Bu, hedef 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ı tarafından referans verilen özel kullanıcı özelliği. Alanın indexed özelliği true olarak ayarlanmış olmalıdır. |
Değer Türleri
Değer Türü | Eşdeğer Şema fieldType | Notlar |
---|---|---|
dize | STRING , EMAIL PHONE |
Sorguda boşluk varsa tek tırnak işaretleri ' içine alın. \' kullanan sorgularda tek tırnak için çıkış yapın (örneğin, 'Valentine\'s Day' ). |
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ı ve binlik ayırıcı kullanılmamalıdır (örneğin, 150430.25 ). |
tarih | DATE |
YYYY-AA-GG biçiminde belirtilir, örneğin 2001-02-15 . |
Operatörler
Operatör | Desteklenen Değer Türleri | Notlar |
---|---|---|
= |
string, boolean, number, date | Alan ve değer tam olarak eşleşiyor. Örneğin givenName=Jane , "Jane" givenName özelliğine sahip tüm kullanıcıları eşleştirir ancak "Jane Ann" ile eşleşmez. Çoğu dize alanında desteklenir (yukarıya bakın). |
: |
dize | Alan, değer içindeki tüm kelimeleri sırayla içerir. Örneğin, givenName:Jane içeren bir sorgu, givenName değerleri "Jane" ve "Jane Ann" olan kullanıcılarla eşleşir ancak "Janet" ile eşleşmez. 'givenName:Mary Ann' için birden fazla kelime içeren 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ğerleri "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ı grubunda desteklenir (yukarıya bakın). Özel özelliklerde desteklenmez. |
:[{MIN},{MAX}] |
sayı, tarih | Bu alan bir aralık dahilinde. Eşleştirmek için, alanın değerinin {MIN} değerine eşit ya da ondan daha büyük ve {MAX} değerinden küçük olması gerekir. Özel numara özelliklerinin bu operatörü desteklemesi için bir numericIndexingSpec belirtmesi gerekir. |
> |
sayı, tarih | Alan, değerden büyük. Özel numara özelliklerinin bu operatörü desteklemesi için bir numericIndexingSpec belirtmesi gerekir. |
>= |
sayı, tarih | Alan, değerden büyük veya değere eşit. Özel numara özelliklerinin bu operatörü desteklemesi için bir numericIndexingSpec belirtmesi gerekir. |
< |
sayı, tarih | Alan, değerden küçük. Özel numara özelliklerinin bu operatörü desteklemesi için bir numericIndexingSpec belirtmesi gerekir. |
<= |
sayı, tarih | Alan, değerden küçük veya değere eşit. Özel numara özelliklerinin bu operatörü desteklemesi için bir numericIndexingSpec belirtmesi gerekir. |
Örnekler
Tüm sorgular, aşağıdakine benzer bir HTTP isteğine sahip users.list
yöntemini kullanır (okunabilirlik için satır sonları eklenmiştir):
GET https://admin.googleapis.com/admin/directory/v1/users?domain=DOMAIN_NAME&query=QUERY_PARAMETERS
Ada göre kullanıcı arayın
name
sorgu alanı, givenName
ve familyName
değerlerinin birleştirilmiş değerini test eder. name='Jane'
sorgusu, givenName='Jane'
ve familyName='Smith'
değerlerine sahip kullanıcılar için sonuç döndürmez.
name='Jane Smith'
Değer içeren givenName
VEYA familyName
kullanan kullanıcıları arayın
name:'Jane'
E-posta önekiyle eşleşen kullanıcıları arama
email:admin*
Tüm süper yöneticileri arama
isAdmin=true
orgTitles
içinde "Yönetici" ifadesini içeren kullanıcıları arama
orgTitle:Manager
Raporlama zincirinde ortak bir yöneticiye sahip 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şta 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
5 veya 8 yaştan büyük iş düzeylerine sahip tüm çalışanları ara
EmploymentData.jobLevel:[5,8]
2 Adımlı vDoğrulama'ya kaydolan tüm çalışanları arayın
isEnrolledIn2Sv=true
2 Adımlı Doğrulama'nın zorunlu kılındığı tüm çalışanları arayın
isEnforcedIn2Sv=true