البحث عن مستخدمين

يمكنك البحث عن المستخدمين الذين يتطابقون مع سمات معيّنة باستخدام طريقة users.list() في Directory API. تقبل هذه الطريقة المَعلمة query التي تمثّل طلب بحث يجمع بين عبارة بحث واحدة أو أكثر. تتألف كل عبارة بحث من 3 أجزاء:

الحقل
سمة المستخدم التي يتم البحث عنها. مثلاً: givenName
عامل التشغيل
اختبار يتم إجراؤه على البيانات لتقديم تطابق. على سبيل المثال، يتحقّق عامل التشغيل : مما إذا كانت سمة نصية تتضمّن قيمة.
القيمة
محتوى السمة التي يتم اختبارها مثلاً: Jane

للبحث في حقول متعددة في طلب بحث، أضِف كل عبارة بحث مفصولة بمسافة. العملية هي AND ضمني.

الحقول

الحقل نوع القيمة المشغِّلون الوصف
غير محدد سلسلة قارِن بالقيمة في givenName أو familyName أو email.
name سلسلة =, : القيمة المدمجة لـ givenName وfamilyName
email سلسلة = و: و:{PREFIX}* عناوين البريد الإلكتروني للمستخدم، بما في ذلك الأسماء المستعارة
givenName سلسلة = و: و:{PREFIX}* الاسم الأول للمستخدم
familyName سلسلة = و: و:{PREFIX}* اسم عائلة المستخدم أو اسمه الأخير
isAdmin قيمة منطقية = تحديد ما إذا كان المستخدم لديه امتيازات مشرف متميّز
isDelegatedAdmin قيمة منطقية = تُستخدَم لتحديد ما إذا كان المستخدم لديه امتيازات مشرف مفوَّض.
isSuspended قيمة منطقية = تُستخدَم لتحديد ما إذا كان حساب المستخدم معلّقًا.
isArchived قيمة منطقية = تُستخدَم لتحديد ما إذا كان حساب المستخدم مؤرشفًا.
im سلسلة =, : رقم تعريف شبكة المراسلة الفورية
externalId سلسلة =, : قيمة المعرّف الخارجي
manager سلسلة = عنوان البريد الإلكتروني الخاص بمدير المستخدم إما مباشرةً أو في سلسلة الإدارة
managerId سلسلة = معرّف الحساب الإداري للمستخدم إما مباشرةً أو في سلسلة الإدارة
directManager سلسلة = عنوان البريد الإلكتروني الخاص بالمدير المباشر للمستخدم
directManagerId سلسلة = رقم تعريف المدير المباشر للمستخدم
address سلسلة : تتطابق مع جميع حقول العناوين.
addressPoBox سلسلة =, : صندوق بريد
addressExtended سلسلة =, : عنوان موسّع، مثل عنوان يتضمّن منطقة فرعية
addressStreet سلسلة =, : تمثّل هذه السمة عنوان الشارع.
addressLocality سلسلة =, : تمثّل هذه السمة بلدة أو مدينة العنوان.
addressRegion سلسلة =, : تمثّل هذه السمة مقاطعة أو ولاية مختصرة.
addressPostalCode سلسلة =, : تمثّل هذه السمة الرمز البريدي.
addressCountry سلسلة =, : تمثّل بلدًا.
orgName سلسلة =, : تمثّل هذه السمة اسم المؤسسة.
orgTitle سلسلة =, : المسمى الوظيفي للمستخدم داخل المؤسسة
orgDepartment سلسلة =, : قسم داخل المؤسسة
orgDescription سلسلة =, : تمثّل هذه السمة وصف المؤسسة.
orgCostCenter سلسلة =, : مركز التكلفة في المؤسسة
phone سلسلة = رقم هاتف المستخدم
orgUnitPath سلسلة = المسار الكامل لوحدة تنظيمية يطابق هذا جميع سلاسل الوحدات التنظيمية ضمن الهدف. على سبيل المثال، تعرض 'orgUnitPath=/' جميع المستخدمين في المؤسسة. لا يمكن استخدام هذا الحقل إلا عند viewType=admin_view.
isEnrolledIn2Sv قيمة منطقية = توضّح ما إذا كان المستخدم مسجَّلاً في ميزة "التحقّق بخطوتين".
isEnforcedIn2Sv قيمة منطقية = تُستخدَم لتحديد ما إذا كان يتم فرض ميزة "التحقّق بخطوتين" على المستخدم.
schemaName.fieldName ؟ ؟ سمة مستخدم مخصّصة، تتم الإشارة إليها من خلال المخطط واسم الحقل يجب ضبط السمة indexed للحقل على القيمة true.

أنواع القيم

نوع القيمة مخطط مكافئ fieldType ملاحظات
سلسلة STRING، EMAIL، PHONE أحِطها بعلامات اقتباس مفردة ' إذا كان طلب البحث يحتوي على مسافة بيضاء. يمكنك إلغاء تأثير علامات الاقتباس المفردة في طلبات البحث باستخدام \'، مثل 'Valentine\'s Day'.
قيمة منطقية BOOL يجب أن تكون القيمة true أو false. يتوافق فقط مع عامل التشغيل =.
الرقم INT64، DOUBLE يجب استخدام نقطة كفاصل عشري وعدم استخدام فاصل الآلاف، مثلاً 150430.25.
التاريخ DATE يتم تحديدها بالتنسيق YYYY-MM-DD، مثلاً 2001-02-15.

المشغِّلون

عامل التشغيل أنواع القيم المسموح بها ملاحظات
= سلسلة أو قيمة منطقية أو رقم أو تاريخ يتطابق الحقل والقيمة تمامًا. على سبيل المثال، تطابق givenName=Jane جميع المستخدمين الذين لديهم السمة givenName "Jane"، ولكن ليس "Jane Ann". تتوفّر هذه السمة في معظم حقول السلسلة (راجِع ما ورد أعلاه).
: سلسلة يحتوي الحقل على الكلمات الكاملة ضمن القيمة، بالترتيب. على سبيل المثال، يتطابق طلب البحث الذي يتضمّن givenName:Jane مع المستخدِمين الذين لديهم قيم givenName تساوي "Jane" و"Jane Ann"، ولكن ليس "Janet". سيبحث طلب البحث المتعدّد الكلمات عن 'givenName:Mary Ann' عن القيم "Mary Ann Evans" و"Sarah Mary Ann" ولكن ليس عن "Ann Mary". تتوفّر هذه السمة في معظم حقول السلسلة (راجِع ما ورد أعلاه).
:{PREFIX}* سلسلة يبدأ الحقل بالقيمة. على سبيل المثال، يتطابق طلب البحث الذي يتضمّن givenName:Jane* مع المستخدمين الذين لديهم قيم givenName تبلغ "Jane" و"Jane Ann" و"Janet"، ولكن ليس "Sarah Jane". لا تتوفّر هذه الميزة إلا لمجموعة محدودة من حقول السلاسل (راجِع ما ورد أعلاه). لا يمكن استخدامها مع السمات المخصّصة.
:[{MIN},{MAX}] رقم، تاريخ يقع الحقل ضمن نطاق. لتحقيق تطابق، يجب أن تكون قيمة الحقل أكبر من أو تساوي {MIN} وأقل من {MAX}. يجب أن تحدّد سمات الأرقام المخصّصة numericIndexingSpec من أجل إتاحة استخدام عامل التشغيل هذا.
> رقم، تاريخ الحقل أكبر من القيمة. يجب أن تحدّد سمات الأرقام المخصّصة numericIndexingSpec من أجل إتاحة استخدام عامل التشغيل هذا.
>= رقم، تاريخ يكون الحقل أكبر من القيمة أو يساويها. يجب أن تحدّد سمات الأرقام المخصّصة numericIndexingSpec من أجل إتاحة استخدام عامل التشغيل هذا.
< رقم، تاريخ الحقل أقل من القيمة. يجب أن تحدّد سمات الأرقام المخصّصة numericIndexingSpec من أجل إتاحة استخدام عامل التشغيل هذا.
<= رقم، تاريخ يكون الحقل أصغر من القيمة أو يساويها. يجب أن تحدّد سمات الأرقام المخصّصة numericIndexingSpec من أجل إتاحة استخدام عامل التشغيل هذا.

أمثلة

تستخدم جميع طلبات البحث طريقة users.list، التي تتضمّن طلب HTTP مشابهًا لما يلي (تم تضمين فواصل الأسطر لتسهيل القراءة):

GET https://admin.googleapis.com/admin/directory/v1/users?domain=DOMAIN_NAME&query=QUERY_PARAMETERS

البحث عن مستخدم بالاسم

يتم اختبار حقل طلب البحث name على القيمة المدمجة لكل من givenName وfamilyName. لا يعرض طلب البحث عن name='Jane' أي نتائج لمستخدم لديه givenName='Jane' وfamilyName='Smith'.

name='Jane Smith'

البحث عن مستخدمين لديهم givenName أو familyName يتضمّن قيمة

name:'Jane'

البحث عن المستخدمين الذين يتطابقون مع بادئة عنوان بريد إلكتروني

email:admin*

البحث عن جميع المشرفين المتميّزين

isAdmin=true

البحث عن مستخدمين يتضمّن orgTitles لديهم كلمة "مدير"

orgTitle:Manager

البحث عن مستخدمين لديهم مدير مشترك في سلسلة التقارير

manager='janesmith@example.com'

البحث عن مستخدمين لديهم المدير المباشر نفسه

directManager='bobjones@example.com'

البحث عن مستخدمين في بلد معيّن

addressCountry='Sweden'

البحث عن مستخدمين في مؤسسة معيّنة

orgName='Human Resources'

البحث عن المدراء في مؤسسة معيّنة

orgName=Engineering orgTitle:Manager

البحث عن سمات المستخدمين المخصّصة

البحث عن جميع الموظفين الذين يعملون على مشروع معيّن

EmploymentData.projects:'GeneGnomes'

البحث عن جميع الموظفين في موقع جغرافي معيّن

EmploymentData.location='Atlanta'

البحث عن جميع الموظفين الذين تزيد مستوياتهم الوظيفية عن 7

EmploymentData.jobLevel>=7

البحث عن جميع الموظفين الذين تزيد مستوياتهم الوظيفية عن 5 أو تساويها وتقل عن 8

EmploymentData.jobLevel:[5,8]

البحث عن جميع الموظفين المسجّلين في ميزة "التحقّق بخطوتين"

isEnrolledIn2Sv=true

البحث عن جميع الموظفين الذين تم فرض ميزة "التحقّق بخطوتين" عليهم

isEnforcedIn2Sv=true