Nach Nutzern suchen

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

Feld
Nutzerattribut, nach dem gesucht wird. Beispiel: givenName.
Operator
Test, der an den Daten ausgeführt wird, um eine Übereinstimmung zu finden. Mit dem Operator : wird beispielsweise geprüft, ob ein Textattribut einen Wert enthält.
Wert
Der Inhalt des Attributs, das getestet wird. Beispiel: Jane.

Wenn Sie in einer Abfrage in mehreren Feldern suchen möchten, fügen Sie jede Suchklausel hinzu und trennen Sie sie durch ein Leerzeichen. Der Vorgang ist ein implizites AND.

Felder

Feld Werttyp Operatoren Beschreibung
Keine Angabe String Vergleichen 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 Aliasse.
givenName String =, :, :{PREFIX}* Der Vorname eines Nutzers.
familyName String =, :, :{PREFIX}* Der Familien- oder Nachname eines Nutzers.
isAdmin boolean = Gibt an, ob ein Nutzer Super Admin-Berechtigungen hat.
isDelegatedAdmin boolean = Gibt an, ob ein Nutzer Berechtigungen für delegierte Administratoren hat.
isSuspended boolean = Gibt an, ob das Konto eines Nutzers gesperrt ist.
isArchived boolean = Ob das Konto eines Nutzers archiviert ist.
im String =, : IM-Netzwerk-ID.
externalId String =, : Wert der externen ID.
manager String = Die E-Mail-Adresse des Managers eines Nutzers, entweder direkt oder in der Managementkette.
managerId String = Die ID des Managers eines Nutzers, entweder direkt oder in der Managementkette.
directManager String = Die E-Mail-Adresse des direkten Vorgesetzten eines Nutzers.
directManagerId String = Die ID des direkten Vorgesetzten eines Nutzers.
address String : Entspricht allen Adressfeldern.
addressPoBox String =, : Ein Postfach.
addressExtended String =, : Eine erweiterte Adresse, z. B. eine mit einer Unterregion.
addressStreet String =, : Eine Adresse.
addressLocality String =, : Eine Stadt oder Gemeinde der Adresse.
addressRegion String =, : Eine abgekürzte Provinz oder ein abgekürztes Bundesland.
addressPostalCode String =, : Eine Postleitzahl.
addressCountry String =, : Ein Land.
orgName String =, : Einen Organisationsnamen.
orgTitle String =, : Die Stellenbezeichnung 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. Dies entspricht allen Organisationsketten unter dem Ziel. Mit 'orgUnitPath=/' werden beispielsweise alle Nutzer in der Organisation zurückgegeben. 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 2‑Faktor-Authentifizierung für den Nutzer erzwungen wird.
schemaName.fieldName ? ? Ein benutzerdefiniertes Nutzerattribut, auf das über das Schema und den Feldnamen verwiesen wird. Die Eigenschaft indexed des Felds muss auf true festgelegt sein.

Werttypen

Werttyp Entsprechender fieldType-Wert im Schema Hinweise
String STRING, EMAIL, PHONE Setzen Sie ' in einfache Anführungszeichen, wenn die Abfrage Leerzeichen enthält. Maskieren Sie 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 Als Dezimaltrennzeichen muss ein Punkt verwendet werden. Tausendertrennzeichen sind nicht zulässig, z. B. 150430.25.
Datum DATE Im Format JJJJ-MM-TT angegeben, z. B. 2001-02-15.

Operatoren

Operator Unterstützte Werttypen Hinweise
= String, boolescher Wert, Zahl, Datum Das Feld und der Wert stimmen genau überein. Beispiel: givenName=Jane stimmt mit allen Nutzern mit dem Attribut givenName "Jane" überein, aber nicht mit "Jane Ann". Wird für die meisten Stringfelder unterstützt (siehe oben).
: String Das Feld enthält die vollständigen Wörter im Wert in der richtigen Reihenfolge. Eine Abfrage mit givenName:Jane stimmt beispielsweise mit Nutzern mit givenName-Werten von "Jane" und "Jane Ann" überein, aber nicht mit "Janet". Eine Anfrage mit mehreren Wörtern für 'givenName:Mary Ann' würde mit den Werten "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. Eine Abfrage mit givenName:Jane* entspricht beispielsweise Nutzern mit givenName-Werten von "Jane", "Jane Ann" und "Janet", aber nicht "Sarah Jane". Wird nur für eine begrenzte Anzahl von Stringfeldern unterstützt (siehe oben). Wird für benutzerdefinierte Attribute nicht unterstützt.
:[{MIN},{MAX}] number, date Das Feld liegt in einem bestimmten Bereich. Damit eine Übereinstimmung erzielt wird, muss der Wert des Felds 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.
> number, date Das Feld ist größer als der Wert. Für benutzerdefinierte Zahlenattribute muss ein numericIndexingSpec angegeben werden, damit dieser Operator unterstützt wird.
>= number, date Das Feld ist größer als oder gleich dem Wert. Für benutzerdefinierte Zahlenattribute muss ein numericIndexingSpec angegeben werden, damit dieser Operator unterstützt wird.
< number, date Der Wert des Felds ist kleiner als der angegebene Wert. Für benutzerdefinierte Zahlenattribute muss ein numericIndexingSpec angegeben werden, damit dieser Operator unterstützt wird.
<= number, date Das Feld ist kleiner als oder gleich dem Wert. Für benutzerdefinierte Zahlenattribute muss ein numericIndexingSpec angegeben werden, damit dieser Operator unterstützt wird.

Beispiele

Für alle Anfragen wird die Methode users.list verwendet. Die entsprechende HTTP-Anfrage sieht so aus (Zeilenumbrüche zur besseren Lesbarkeit):

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

Nach einem Nutzer suchen

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

name='Jane Smith'

Nach Nutzern mit einem givenName ODER familyName suchen, das einen Wert enthält

name:'Jane'

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

email:admin*

Alle Super Admins suchen

isAdmin=true

Nach Nutzern mit orgTitles suchen, die „Manager“ enthalten

orgTitle:Manager

Nach Nutzern mit einem gemeinsamen Manager in der Berichtskette suchen

manager='janesmith@example.com'

Nach Nutzern mit demselben direkten Vorgesetzten suchen

directManager='bobjones@example.com'

Nach Nutzern in einem bestimmten Land suchen

addressCountry='Sweden'

Nach Nutzern in einer bestimmten Organisation suchen

orgName='Human Resources'

Nach Managern in einer bestimmten Organisation suchen

orgName=Engineering orgTitle:Manager

Nach benutzerdefinierten Nutzerattributen 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'

Nach allen Mitarbeitern über Jobebene 7 suchen

EmploymentData.jobLevel>=7

Nach allen Mitarbeitern mit Job-Levels suchen, die >= 5 und < 8 sind

EmploymentData.jobLevel:[5,8]

Nach allen Mitarbeitern suchen, die die 2‑Faktor-Authentifizierung aktiviert haben

isEnrolledIn2Sv=true

Nach allen Mitarbeitern suchen, für die die 2‑Faktor-Authentifizierung erzwungen wird

isEnforcedIn2Sv=true