Nach Nutzern suchen

Mit der Methode users.list() der Directory API können Sie nach Nutzern suchen, die mit bestimmten Attributen übereinstimmen. Diese Methode akzeptiert den Parameter query, der eine Suchanfrage ist, die eine oder mehrere Suchklauseln kombiniert. Jede Suchklausel besteht aus drei Teilen:

Feld
Nutzerattribut, nach dem gesucht wird. Beispiel: givenName.
Betreiber
Test für die Daten, um eine Übereinstimmung zu erzielen. Der Operator : prüft beispielsweise, ob ein Textattribut einen Wert enthält.
Wert
Der Inhalt des Attributs, das getestet wird. Beispiel: Jane.

Wenn Sie in einer Abfrage mehrere Felder durchsuchen möchten, fügen Sie die einzelnen Klauseln durch ein Leerzeichen getrennt ein. Der Vorgang ist ein impliziter AND.

Felder

Feld Werttyp Operatoren Beschreibung
Keine Angaben String Vergleichen Sie sie mit dem Wert in givenName, familyName oder email.
name String =, : Der verkettete Wert von givenName und familyName.
email String =, :, :{PREFIX}* Die E-Mail-Adressen des Nutzers, einschließlich Aliassen.
givenName String =, :, :{PREFIX}* Der Vorname oder Vorname eines Nutzers.
familyName String =, :, :{PREFIX}* Die Familie oder der Nachname eines Nutzers.
isAdmin boolean = Gibt an, ob ein Nutzer Poweruser-Berechtigungen hat.
isDelegatedAdmin boolean = Gibt an, ob ein Nutzer delegierte Administratorberechtigungen hat.
isSuspended boolean = Gibt an, ob das Konto eines Nutzers gesperrt ist.
isArchived boolean = Gibt an, ob das Konto eines Nutzers archiviert wurde.
im String =, : IM-Netzwerk-ID
externalId String =, : Externer ID-Wert.
manager String = Die E-Mail-Adresse des Managers eines Nutzers, entweder direkt oder in der Verwaltungskette.
managerId String = Die ID des Managers eines Nutzers, entweder direkt oder in der Verwaltungskette.
directManager String = Die E-Mail-Adresse des direkten Vorgesetzten eines Nutzers.
directManagerId String = Die ID des direkten Vorgesetzten eines Nutzers.
address String : Stimmt mit allen Adressfeldern überein.
addressPoBox String =, : Ein Postfach
addressExtended String =, : Eine erweiterte Adresse, z. B. eine Subregion.
addressStreet String =, : Eine Adresse.
addressLocality String =, : Ein Ort.
addressRegion String =, : Eine gekürzte Provinz oder ein abgekürzter Bundesstaat.
addressPostalCode String =, : Eine Postleitzahl.
addressCountry String =, : Ein Land.
orgName String =, : Der Name einer Organisation.
orgTitle String =, : Der Titel eines Nutzers innerhalb der Organisation.
orgDepartment String =, : Eine Abteilung innerhalb der Organisation.
orgDescription String =, : Die Beschreibung einer Organisation.
orgCostCenter String =, : Die Kostenstelle einer Organisation.
phone String = Die Telefonnummer eines Nutzers.
orgUnitPath String = Der vollständige Pfad einer Organisationseinheit. Das stimmt mit allen Ketten der Organisationseinheiten unter dem Ziel überein. Beispiel: 'orgUnitPath=/' gibt alle Nutzer in der Organisation zurück. Dieses Feld kann nur verwendet werden, wenn viewType=admin_view.
isEnrolledIn2Sv boolean = Gibt an, ob ein Nutzer für die Bestätigung in zwei Schritten registriert ist.
isEnforcedIn2Sv boolean = Gibt an, ob die Bestätigung in zwei Schritten für den Nutzer erzwungen wird.
schemaName.fieldName ? ? Ein benutzerdefiniertes Nutzerattribut, auf das durch sein Schema und den Feldnamen verwiesen wird. Die Eigenschaft indexed des Felds muss auf true festgelegt sein.

Werttypen

Werttyp Äquivalentes Schema fieldType Hinweise
String STRING, EMAIL, PHONE Schließen Sie einfache Anführungszeichen ' ein, wenn die Abfrage Leerzeichen enthält. Einfache Anführungszeichen in Abfragen mit \', z. B. 'Valentine\'s Day'.
boolean BOOL Muss den Wert true oder false haben. Unterstützt nur den Operator =.
Zahl INT64, DOUBLE Sie müssen einen Punkt als Dezimaltrennzeichen und nicht als Tausendertrennzeichen verwenden, z. B. 150430.25.
date DATE Wird im Format JJJJ-MM-TT angegeben, z. B. 2001-02-15.

Operatoren

Betreiber Unterstützte Werttypen Hinweise
= String, boolescher Wert, Zahl, Datum Das Feld und der Wert stimmen genau überein. Beispiel: givenName=Jane gleicht alle Nutzer mit dem givenName-Attribut "Jane", aber nicht mit "Jane Ann" ab. Wird für die meisten Stringfelder unterstützt (siehe oben).
: String Das Feld enthält die vollständigen Wörter innerhalb des Werts in der richtigen Reihenfolge. Beispiel: Eine Abfrage mit givenName:Jane gleicht Nutzer mit den givenName-Werten "Jane" und "Jane Ann" ab, aber nicht mit "Janet". Eine aus mehreren Wörtern bestehende Abfrage für 'givenName:Mary Ann' würde mit den Werten von "Mary Ann Evans" und "Sarah Mary Ann" übereinstimmen, aber nicht mit "Ann Mary". Wird für die meisten Stringfelder unterstützt (siehe oben).
:{PREFIX}* String Das Feld beginnt mit dem Wert. Beispiel: Eine Abfrage mit givenName:Jane* gleicht Nutzer mit den givenName-Werten "Jane", "Jane Ann" und "Janet", aber nicht mit "Sarah Jane" ab. Wird nur für eine begrenzte Anzahl von Stringfeldern unterstützt (siehe oben). Wird für benutzerdefinierte Attribute nicht unterstützt.
:[{MIN},{MAX}] Zahl, Datum Das Feld liegt innerhalb eines Bereichs. Der Wert muss größer oder gleich {MIN} und kleiner als {MAX} sein. Für benutzerdefinierte Zahlenattribute muss ein numericIndexingSpec angegeben werden, damit dieser Operator unterstützt wird.
> Zahl, Datum Das Feld ist größer als der Wert. Für benutzerdefinierte Zahlenattribute muss ein numericIndexingSpec angegeben werden, damit dieser Operator unterstützt wird.
>= Zahl, Datum Das Feld ist größer oder gleich dem Wert. Für benutzerdefinierte Zahlenattribute muss ein numericIndexingSpec angegeben werden, damit dieser Operator unterstützt wird.
< Zahl, Datum Das Feld ist kleiner als der Wert. Für benutzerdefinierte Zahlenattribute muss ein numericIndexingSpec angegeben werden, damit dieser Operator unterstützt wird.
<= Zahl, Datum Das Feld ist kleiner oder gleich dem Wert. Für benutzerdefinierte Zahlenattribute muss ein numericIndexingSpec angegeben werden, damit dieser Operator unterstützt wird.

Beispiele

Alle Abfragen verwenden die Methode users.list, die eine HTTP-Anfrage ähnlich der folgenden enthält (Zeilenumbrüche sind zur besseren Lesbarkeit enthalten):

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

Nutzer anhand des Namens suchen

Das Abfragefeld name prüft den verketteten Wert von givenName und familyName. Eine Abfrage für name='Jane' gibt keine Ergebnisse für einen Nutzer mit givenName='Jane' und familyName='Smith' zurück.

name='Jane Smith'

Nutzer suchen, deren Wert givenName ODER familyName einen Wert enthält

name:'Jane'

Nach Nutzern suchen, die mit einem E-Mail-Präfix übereinstimmen

email:admin*

Nach allen Super Admins suchen

isAdmin=true

Nutzer suchen, die orgTitles enthalten und „Manager“ enthalten

orgTitle:Manager

Nutzer mit einem gemeinsamen Verwaltungskonto in der Berichtskette suchen

manager='janesmith@example.com'

Nutzer mit demselben Verwaltungskonto suchen

directManager='bobjones@example.com'

Nutzer in einem bestimmten Land suchen

addressCountry='Sweden'

Nutzer in einer bestimmten Organisation suchen

orgName='Human Resources'

Administratoren einer bestimmten Organisation suchen

orgName=Engineering orgTitle:Manager

Benutzerdefinierte Nutzerattribute suchen

Nach allen Mitarbeitern suchen, die an einem bestimmten Projekt arbeiten

EmploymentData.projects:'GeneGnomes'

Nach allen Mitarbeitern an einem bestimmten Standort suchen

EmploymentData.location='Atlanta'

Alle Mitarbeiter über Stufe 7 suchen

EmploymentData.jobLevel>=7

Suche nach allen Mitarbeiter*innen mit einem Arbeitsverhältnis von >= 5 oder < 8

EmploymentData.jobLevel:[5,8]

Nach allen Mitarbeitern suchen, die für die Bestätigung in zwei Schritten registriert sind

isEnrolledIn2Sv=true

Nach allen Mitarbeitern mit erzwungener Bestätigung in zwei Schritten suchen

isEnforcedIn2Sv=true