Erweiterte Abfragefunktionen für Microsoft Entra ID-Objekte

Da Microsoft Entra weiterhin mehr Funktionen und Verbesserungen bei Stabilität, Verfügbarkeit und Leistung bietet, wird Microsoft Graph auch weiterentwickelt und skaliert, um effizient auf die Daten zuzugreifen. Eine Möglichkeit besteht darin, dass Microsoft Graph erweiterte Abfragefunktionen für verschiedene Microsoft Entra ID-Objekte, auch verzeichnisobjekte genannt, und deren Eigenschaften zunehmend unterstützt. Zum Beispiel die Hinzufügung der OperatorenNicht (not), Ungleich (ne) und Endet mit (endsWith) für den$filterAbfrageparameter.

Die Microsoft Graph-Abfrage-Engine verwendet einen Indexspeicher, um Abfrageanforderungen zu erfüllen. Um zusätzliche Abfragefunktionen für bestimmte Eigenschaften zu unterstützen, werden diese Eigenschaften jetzt auf einem separaten Speicher indiziert. Diese separate Indizierung ermöglicht es Microsoft Entra ID, die Unterstützung zu erhöhen und die Leistung der Abfrageanforderungen zu verbessern. Diese erweiterten Abfragefunktionen sind jedoch nicht standardmäßig verfügbar, aber der Anforderer muss auch den ConsistencyLevel-Header auf eventual festlegen und mit Ausnahme $searchvon den $count Abfrageparametern verwenden. Der ConsistencyLevel-Header und $count werden als erweiterte Abfrageparameter bezeichnet.

Um beispielsweise nur inaktive Benutzerkonten abzurufen, können Sie eine der folgenden Abfragen mit dem $filterAbfrageparameter ausführen.

Option 1: Verwenden Sie den $filter Abfrageparameter mit dem eq Operator. Diese Anforderung funktioniert standardmäßig, d. h., die Anforderung erfordert nicht die erweiterten Abfrageparameter.

GET https://graph.microsoft.com/v1.0/users?$filter=accountEnabled eq false

Option 2: Verwenden Sie den $filter Abfrageparameter mit dem ne Operator. Diese Anforderung wird standardmäßig nicht unterstützt, da der ne Operator nur in erweiterten Abfragen unterstützt wird. Daher müssen Sie den auf festgelegten eventualConsistencyLevel-Header hinzufügen und die $count=true Abfragezeichenfolge verwenden.

GET https://graph.microsoft.com/v1.0/users?$filter=accountEnabled ne true&$count=true
ConsistencyLevel: eventual

Microsoft Entra ID (Verzeichnis)-Objekte, die erweiterte Abfragefunktionen unterstützen

Diese erweiterten Abfragefunktionen werden nur für Verzeichnisobjekte und deren Beziehungen unterstützt, einschließlich der folgenden häufig verwendeten Objekte:

Objekt Beziehungen
administrativeUnit
  • Elemente
  • application
  • owners
  • appRoleAssignment -
    device
  • memberOf
  • transitiveMemberOf
  • registeredUsers
  • registeredOwners
  • Gruppe
  • Elemente
  • transitiveMembers
  • memberOf
  • transitiveMemberOf
  • owners
  • appRoleAssignments
  • oAuth2PermissionGrant (delegierte Berechtigungserteilungen) -
    orgContact
  • memberOf
  • transitiveMemberOf
  • servicePrincipal
  • memberOf
  • transitiveMemberOf
  • appRoleAssignments
  • appRoleAssignmentsTo
  • oAuth2PermissionGrant
  • user
  • memberOf
  • transitiveMemberOf
  • ownedObjects
  • registeredDevices
  • ownedDevices
  • transitiveManagers
  • directReports
  • transitiveReports
  • appRoleAssignments
  • oAuth2PermissionGrant
  • Abfrageszenarien, die erweiterte Abfragefunktionen erfordern

    In der folgenden Tabelle sind Abfrageszenarien für Verzeichnisobjekte aufgeführt, die nur in erweiterten Abfragen unterstützt werden:

    Beschreibung Beispiel
    Verwendung von $count als URL-Segment ABRUFEN~/groups/$count
    Verwenden von $count als Abfragezeichenfolgenparameter ABRUFEN~/servicePrincipals?$count=true
    Verwendung von$countin einem$filterAusdruck ABRUFEN~/users?$filter=assignedLicenses/$count eq 0&$count=true
    Verwenden von $search ABRUFEN~/applications?$search="displayName:Browser"
    Verwenden von $orderby für bestimmte Eigenschaften ABRUFEN~/applications?$orderby=displayName&$count=true
    Verwenden von $filter mit dem Operator endsWith ABRUFEN~/users?$count=true&$filter=endsWith(mail,'@outlook.com')
    Verwendung von $filter und $orderby in derselben Abfrage ABRUFEN../applications?$orderby=displayName&$filter=startsWith( displayName, 'Box')&$count=true
    Verwenden von $filter mit den startsWith-Operatoren für bestimmte Eigenschaften. ABRUFEN~/users?$filter=startsWith(mobilePhone, '25478') OR startsWith(mobilePhone, '25473')&$count=true
    Verwenden von $filter mit den Operatoren ne und not ABRUFEN~/users?$filter=companyName ne null and NOT(companyName eq 'Microsoft')&$count=true
    Verwenden von $filter mit den Operatoren not und startsWith ABRUFEN~/users?$filter=NOT startsWith(displayName, 'Conf')&$count=true
    Verwendung für $filter eine Sammlung mit endsWith Operator ABRUFEN~/users?$count=true&$filter=proxyAddresses/any (p:endsWith(p, 'contoso.com'))&$select=id,displayName,proxyaddresses
    Verwendung der OData-Umwandlung mit transitiver Memberliste ABRUFEN~/me/transitiveMemberOf/microsoft.graph.group?$count=true

    Hinweis

    • Die gemeinsame Verwendung von $filter und $orderby wird nur bei erweiterten Abfragen unterstützt.
    • $expand wird derzeit bei erweiterten Abfragen nicht unterstützt.
    • Die erweiterten Abfragefunktionen sind derzeit auf Azure AD B2C-Mandanten nicht verfügbar.
    • Um erweiterte Abfragefunktionen in Stapelanfragen zu verwenden, geben Sie den ConsistencyLevel Header im JSON-Text der POST Anforderung an.

    Unterstützung für das Filtern nach Eigenschaften von Microsoft Entra ID (Verzeichnis)-Objekten

    Eigenschaften von Verzeichnisobjekten verhalten sich bei der Unterstützung von Abfrageparametern unterschiedlich. Im Folgenden sind häufige Szenarien für Verzeichnisobjekte aufgeführt:

    • Abfragen, die standardmäßig unterstützt werden, funktionieren auch mit erweiterten Abfrageparametern, aber die Antwort ist letztendlich konsistent.
    • Der Operator in wird standardmäßig unterstützt, insofern der Operator eq standardmäßig unterstützt wird.
    • Der endsWith Operator wird nur mit erweiterten Abfrageparametern nach den Eigenschaften mail, otherMails, userPrincipalName und proxyAddresses unterstützt.
    • Das Abrufen leerer Auflistungen (/$count eq 0, /$count ne 0) und Auflistungen mit weniger als einem Objekt (/$count eq 1, /$count ne 1) wird nur mit erweiterten Abfrageparametern unterstützt.
    • Die not Negationsoperatoren und ne werden nur mit erweiterten Abfrageparametern unterstützt.
      • Alle Eigenschaften, die den eq -Operator unterstützen, unterstützen auch die ne Operatoren oder not .
      • Verwenden Sie für Abfragen, die den any-Lambdaoperator verwenden, den Operator not. Weitere Informationen finden Sie unter Filtern mit Lambdaoperatoren.

    Die folgenden Tabellen fassen die Unterstützung von $filter Operatoren nach Eigenschaften von Verzeichnisobjekten zusammen und geben an, wo Abfragen durch erweiterte Abfragefunktionen unterstützt werden.

    Legend

    • Funktioniert standardmäßig. Erfordert keine erweiterten Abfrageparameter. Der $filter Operator funktioniert standardmäßig für diese Eigenschaft.
    • Erfordert erweiterte Abfrageparameter. Für $filterden Operator sinderweiterte Abfrageparameter erforderlich:
      • ConsistencyLevel=eventual-Header
      • $count=true-Abfragezeichenfolge
    • Nicht unterstützt. Der $filter Operator wird für diese Eigenschaft nicht unterstützt. Senden Sie uns Feedback, um diese Unterstützung dieser Eigenschaft für Ihre Szenarien $filter anzufordern.
    • Leere Zellen geben an, dass die Abfrage für diese Eigenschaft ungültig ist.
    • Die Spalte mit dem Nullwert gibt an, dass die Eigenschaft nullbar und mithilfe von null filterbar ist.
    • Eigenschaften, die hier nicht aufgeführt sind, unterstützen $filter überhaupt nicht.

    Eigenschaften von Verwaltungseinheiten

    Eigenschaft eq startsWith eq Null
    description Erweiterte Erweitert Erweiterte
    displayName Standard Standard Erweitert
    isMemberManagementRestricted Standard NotSupported
    membershipRule Standard Standard NotSupported
    membershipRuleProcessingState Standard NotSupported
    scopedRoleMembers/any(s:s/id) Standard

    Anwendungseigenschaften

    Eigenschaft eq startsWith ge/le eq Null
    appId Standard
    createdDateTime Standard Standard Erweitert
    createdOnBehalfOf/id Standard
    description Erweiterte Erweitert Erweiterte
    disabledByMicrosoftStatus Standard NotSupported
    displayName Standard Standard Erweitert
    federatedIdentityCredentials/any(f:f/issuer) Erweitert Erweitert NotSupported
    federatedIdentityCredentials/any(f:f/name) Erweitert Erweitert NotSupported
    federatedIdentityCredentials/any(f:f/subject) Erweitert Erweitert NotSupported
    identifierUris/any(p:p) Standard Standard
    info/logoUrl NotSupported NotSupported Erweitert
    info/termsOfServiceUrl Erweitert Erweitert NotSupported
    notes Erweitert Erweitert Erweitert
    publicClient/redirectUris/any(p:p) Erweitert Erweitert
    publisherDomain Standard Standard NotSupported
    requiredResourceAccess/any(r:r/resourceAppId) Erweitert
    serviceManagementReference Erweitert Erweitert Erweitert
    signInAudience Standard NotSupported
    spa/redirectUris/any(p:p) Erweitert Erweitert
    tags/any(p:p) Standard Standard
    uniqueName Standard Standard NotSupported
    verifiedPublisher/displayName Erweitert Erweitert Erweitert
    web/homePageUrl Erweitert Erweitert Erweitert
    web/redirectUris/any(p:p) Erweitert Erweitert

    Die folgenden Eigenschaften der Anwendungsentität unterstützen $count eine Auflistung in einem Filterausdruck.

    Eigenschaft eq Count 0 eq Count 1
    extensionProperties/$count Erweitert NotSupported
    federatedIdentityCredentials/$count Erweitert NotSupported

    Vertragseigenschaften

    Eigenschaft eq startsWith
    customerId Standard
    defaultDomainName Standard Standard
    displayName Standard Standard

    Geräteeigenschaften

    Eigenschaft eq startsWith ge/le eq Null
    accountEnabled Standard NotSupported
    alternativeSecurityIds/any(a:a/identityProvider) Erweitert Erweitert NotSupported
    alternativeSecurityIds/any(a:a/type) Standard Erweitert NotSupported
    approximateLastSignInDateTime Standard Standard Erweitert
    deviceCategory Erweitert Erweitert Erweiterte
    deviceId Standard
    deviceOwnership Erweitert Erweiterte
    displayName Standard Standard Erweitert
    enrollmentProfileName Erweitert Erweitert Erweitert
    extensionAttributes/extensionAttribute1-15 Erweitert Erweitert Erweitert
    hostnames/any(p:p) Standard Standard
    isCompliant Standard NotSupported
    isManaged Standard NotSupported
    isRooted Erweitert Erweitert
    managementType Erweitert Erweitert
    Hersteller Erweitert Erweitert Erweiterte
    mdmAppId Standard
    model Erweitert Erweitert Erweiterte
    onPremisesLastSyncDateTime Standard Standard NotSupported
    onPremisesSecurityIdentifier Standard Erweiterte
    onPremisesSyncEnabled Standard Erweitert
    operatingSystem Standard Standard Erweiterte
    operatingSystemVersion Standard Standard Erweitert
    physicalIds/any(p:p) Standard
    profileType Standard NotSupported
    registrationDateTime Erweitert Erweitert Erweitert
    trustType Standard NotSupported

    Die folgenden Eigenschaften der Geräteentität unterstützen $count eine Auflistung in einem Filterausdruck.

    Eigenschaft eq Count 0 eq Count 1
    physicalIds/$count Erweitert NotSupported
    systemLabels/$count Erweitert NotSupported

    Verzeichnisrolleneigenschaften

    Eigenschaft eq startsWith eq Null
    description Erweiterte Erweitert Erweiterte
    displayName Standard Erweitert Erweiterte
    roleTemplateId Standard NotSupported

    Gruppeneigenschaften

    Eigenschaft eq startsWith ge/le eq Null
    appRoleAssignments/any(a:a/id) Standard
    assignedLicenses/any(a:a/skuId) Standard
    classification Standard Standard NotSupported
    createdByAppId Standard
    createdOnBehalfOf/id Standard
    description Erweiterte Erweitert Erweiterte
    displayName Standard Standard Erweiterte
    expirationDateTime Erweiterte Erweitert NotSupported
    hasMembersWithLicenseErrors Standard Standard
    infoCatalogs/any(p:p) Standard Standard
    isAssignableToRole Standard NotSupported
    mail Standard Standard Erweiterte
    mailEnabled Standard NotSupported
    mailNickname Standard Standard Erweiterte
    membershipRule Standard Standard NotSupported
    membershipRuleProcessingState Standard NotSupported
    onPremisesLastSyncDateTime Standard Standard NotSupported
    onPremisesProvisioningErrors/any(o:o/category) Standard NotSupported
    onPremisesProvisioningErrors/any(o:o/propertyCausingError) Standard NotSupported
    onPremisesSamAccountName Erweiterte Erweitert NotSupported
    onPremisesSecurityIdentifier Standard Erweiterte
    onPremisesSyncEnabled Standard Erweiterte
    preferredLanguage Erweiterte Erweitert Erweitert
    proxyAddresses/any(p:p) Standard Standard
    renewedDateTime Standard Standard NotSupported
    resourceBehaviorOptions/any(p:p) Standard
    resourceProvisioningOptions/any(p:p) Standard
    securityEnabled Standard NotSupported
    settings/any(s:s/displayName) Standard Standard NotSupported
    settings/any(s:s/id) Standard
    uniqueName Standard Standard NotSupported

    Die folgenden Eigenschaften der Gruppenentität unterstützen $count eine Auflistung in einem Filterausdruck.

    Eigenschaft eq Count 0 eq Count 1
    assignedLicenses/$count Erweitert NotSupported
    onPremisesProvisioningErrors/$count Erweitert NotSupported
    proxyAddresses/$count Erweitert NotSupported

    Kontakteigenschaften der Organisation

    Eigenschaft eq startsWith ge/le eq Null
    CompanyName Erweiterte Erweitert Erweiterte
    department Standard Standard Erweiterte
    displayName Standard Standard Erweiterte
    givenName Standard Standard Erweiterte
    jobTitle Standard Standard Erweiterte
    mail Standard Standard Erweiterte
    mailNickname Standard Standard Erweitert
    manager/id Standard
    onPremisesLastSyncDateTime Standard Standard NotSupported
    onPremisesProvisioningErrors/any(o:o/category) Standard NotSupported
    onPremisesProvisioningErrors/any(o:o/propertyCausingError) Standard NotSupported
    onPremisesSyncEnabled Standard Erweitert
    proxyAddresses/any(p:p) Standard Standard
    surname Standard Standard Erweitert

    Die folgenden Eigenschaften der orgContact-Entität unterstützen $count eine Auflistung in einem Filterausdruck.

    Eigenschaft eq Count 0 eq Count 1
    onPremisesProvisioningErrors/$count Erweitert NotSupported
    proxyAddresses/$count Erweitert NotSupported

    Dienstprinzipaleigenschaften

    Eigenschaft eq startsWith ge/le eq Null
    accountEnabled Standard NotSupported
    alternativeNames/any(p:p) Standard Standard
    appId Standard
    appOwnerOrganizationId Erweiterte
    appRoleAssignedTo/any(a:a/id) Standard
    appRoleAssignmentRequired Erweiterte NotSupported
    appRoleAssignments/any(a:a/id) Standard
    applicationTemplateId Standard
    createdObjects/any(c:c/id) Erweitert
    delegatedPermissionClassifications/any(d:d/id) Standard
    description Erweiterte Erweitert Erweiterte
    displayName Standard Standard Erweitert
    federatedIdentityCredentials/any(f:f/issuer) Erweitert Erweitert NotSupported
    federatedIdentityCredentials/any(f:f/name) Erweitert Erweitert NotSupported
    federatedIdentityCredentials/any(f:f/subject) Erweitert Erweitert NotSupported
    homepage Erweitert Erweitert Erweitert
    info/logoUrl NotSupported NotSupported Erweitert
    info/termsOfServiceUrl Erweitert Erweitert NotSupported
    notes Erweitert Erweitert Erweitert
    oauth2PermissionGrants/any(o:o/id) Standard
    preferredSingleSignOnMode Standard NotSupported
    preferredTokenSigningKeyEndDateTime Standard Standard NotSupported
    publisherName Standard Standard NotSupported
    remoteDesktopSecurityConfiguration/id Standard
    remoteDesktopSecurityConfiguration/targetDeviceGroups/any(t:t/displayName) Standard Standard NotSupported
    remoteDesktopSecurityConfiguration/targetDeviceGroups/any(t:t/id) Standard
    servicePrincipalNames/any(p:p) Standard Standard
    servicePrincipalType Standard NotSupported
    tags/any(p:p) Standard Standard
    verifiedPublisher/displayName Erweitert Erweitert Erweitert

    Die folgenden Eigenschaften der servicePrincipal-Entität unterstützen $count eine Auflistung in einem Filterausdruck.

    Eigenschaft eq Count 0 eq Count 1
    federatedIdentityCredentials/$count Erweitert NotSupported
    ownedObjects/$count Erweitert Erweitert

    Benutzereigenschaften

    Eigenschaft eq startsWith ge/le eq Null
    accountEnabled Standard NotSupported
    ageGroup Standard NotSupported
    appRoleAssignments/any(a:a/id) Standard
    assignedLicenses/any(a:a/skuId) Standard
    assignedPlans/any(a:a/capabilityStatus) Erweitert NotSupported
    assignedPlans/any(a:a/service) Erweitert Erweitert NotSupported
    assignedPlans/any(a:a/servicePlanId) Erweitert
    authorizationInfo/certificateUserIds/any(p:p) Erweitert
    businessPhones/any(p:p) Erweitert Erweiterte
    Ort Standard Standard Erweitert
    cloudRealtimeCommunicationInfo/isSipEnabled Standard NotSupported
    CompanyName Erweiterte Erweitert Erweiterte
    consentProvidedForMinor Standard NotSupported
    Land/Region Standard Standard Erweiterte
    createdDateTime Standard Standard Erweitert
    createdObjects/any(c:c/id) Erweiterte
    creationType Standard NotSupported
    department Standard Standard Erweiterte
    displayName Standard Standard Erweiterte
    employeeHireDate Erweiterte Erweitert NotSupported
    employeeId Standard Erweitert
    employeeOrgData/costCenter Erweitert Erweitert NotSupported
    employeeOrgData/division Erweitert Erweitert NotSupported
    employeeType Erweiterte NotSupported
    externalUserState Standard NotSupported
    faxNumber Erweiterte Erweitert Erweiterte
    givenName Standard Standard Erweitert
    identities/any(i:i/issuer) Standard NotSupported Standard
    imAddresses/any(p:p) Standard Standard
    infoCatalogs/any(p:p) Standard Standard
    isLicenseReconciliationNeeded Standard NotSupported
    isResourceAccount Standard NotSupported
    jobTitle Standard Standard Erweitert
    licenseDetails/any(l:l/id) Standard
    mail Standard Standard Erweiterte
    mailNickname Standard Standard Erweitert
    manager/id Standard
    mobilePhone Erweiterte Erweitert Erweitert
    oauth2PermissionGrants/any(o:o/id) Standard
    officeLocation Erweiterte Erweitert Erweitert
    onPremisesDistinguishedName Erweitert Erweitert Erweitert
    onPremisesExtensionAttributes/extensionAttribute1-15 Erweitert Erweitert Erweiterte
    onPremisesImmutableId Standard
    onPremisesLastSyncDateTime Standard Standard NotSupported
    onPremisesProvisioningErrors/any(o:o/category) Standard NotSupported
    onPremisesProvisioningErrors/any(o:o/propertyCausingError) Standard NotSupported
    onPremisesSamAccountName Erweiterte Erweitert NotSupported
    onPremisesSecurityIdentifier Standard Erweitert
    onPremisesSipInfo/isSipEnabled Erweitert NotSupported
    onPremisesSyncEnabled Standard Erweitert
    otherMails/any(p:p) Standard Standard
    passwordPolicies NotSupported NotSupported Erweitert
    passwordProfile/forceChangePasswordNextSignIn Erweitert Erweitert
    passwordProfile/forceChangePasswordNextSignInWithMfa Erweitert Erweiterte
    postalCode Erweiterte Erweitert Erweiterte
    preferredLanguage Erweiterte Erweitert Erweitert
    provisionedPlans/any(p:p/provisioningStatus) Erweitert NotSupported
    provisionedPlans/any(p:p/service) Erweitert Erweitert NotSupported
    proxyAddresses/any(p:p) Standard Standard
    scopedRoleMemberOf/any(s:s/id) Standard
    showInAddressList Erweiterte NotSupported
    state Standard Erweiterte
    streetAddress Erweiterte Erweitert Erweiterte
    surname Standard Standard Erweiterte
    usageLocation Standard Standard Erweiterte
    userPrincipalName Standard Standard NotSupported
    userType Standard Erweitert

    Die folgenden Eigenschaften der Benutzerentität unterstützen $count eine Auflistung in einem Filterausdruck.

    Eigenschaft eq Count 0 eq Count 1
    assignedLicenses/$count Erweitert NotSupported
    onPremisesProvisioningErrors/$count Erweitert NotSupported
    otherMails/$count Erweitert NotSupported
    ownedObjects/$count Erweitert Erweitert
    proxyAddresses/$count Erweitert NotSupported

    Die folgende Tabelle zeigt die Unterstützung für $filter durch andere Erweiterungseigenschaften für das Benutzerobjekt .

    Erweiterungstyp eq startsWith eq null
    Schemaerweiterungen Erweitert Erweitert Erweitert
    Offene Erweiterungen NotSupported NotSupported NotSupported
    Verzeichnisschemaerweiterungen Standard Erweitert Erweitert

    Unterstützung für die Sortierung nach Eigenschaften von Microsoft Entra ID (Verzeichnis)-Objekten

    In der folgenden Tabelle wird die Unterstützung für $orderby durch Eigenschaften von Verzeichnisobjekten zusammengefasst und angegeben, wo die Sortierung durch erweiterte Abfragefunktionen unterstützt wird.

    Legend

    • Funktioniert standardmäßig. Erfordert keine erweiterten Abfrageparameter. Der $orderby Operator funktioniert standardmäßig für diese Eigenschaft.
    • Erfordert erweiterte Abfrageparameter. Für $orderbyden Operator sinderweiterte Abfrageparameter erforderlich:
      • ConsistencyLevel=eventual-Header
      • $count=true-Abfragezeichenfolge
    • Die Verwendung von $filter und $orderby in derselben Abfrage für Verzeichnisobjekte erfordert immer erweiterte Abfrageparameter. Weitere Informationen finden Sie unter Abfrageszenarien, die erweiterte Abfragefunktionen erfordern.
    Verzeichnisobjekt Eigenschaftenname Unterstützt $orderby
    administrativeUnit createdDateTime Erweitert
    administrativeUnit deletedDateTime Erweitert
    administrativeUnit displayName Erweitert
    Anwendung createdDateTime Erweitert
    Anwendung deletedDateTime Erweitert
    Anwendung displayName Erweitert
    orgContact createdDateTime Erweitert
    orgContact displayName Erweitert
    Gerät approximateLastSignInDateTime Erweitert
    Gerät createdDateTime Erweitert
    Gerät deletedDateTime Erweitert
    Gerät displayName Erweitert
    Gruppe deletedDateTime Erweitert
    Gruppe displayName Standard
    servicePrincipal createdDateTime Erweitert
    servicePrincipal deletedDateTime Erweitert
    servicePrincipal displayName Erweitert
    Benutzer createdDateTime Erweitert
    Benutzer deletedDateTime Erweitert
    Benutzer displayName Standard
    Benutzer userPrincipalName Standard

    Fehlerbehandlung bei erweiterten Abfragen für Verzeichnisobjekten

    Das Zählen von Verzeichnisobjekten wird nur mithilfe der erweiterten Abfrageparameter unterstützt. Wenn der ConsistencyLevel=eventual Header nicht angegeben ist, gibt die Anforderung einen Fehler zurück, wenn das $count URL-Segment verwendet wird, oder ignoriert den $count Abfrageparameter (?$count=true), wenn er verwendet wird.

    GET https://graph.microsoft.com/v1.0/users/$count
    
    {
        "error": {
            "code": "Request_BadRequest",
            "message": "$count is not currently supported.",
            "innerError": {
                "date": "2021-05-18T19:03:10",
                "request-id": "d9bbd4d8-bb2d-44e6-99a1-71a9516da744",
                "client-request-id": "539da3bd-942f-25db-636b-27f6f6e8eae4"
            }
        }
    }
    

    Bei Verzeichnisobjekten funktioniert $search nur in erweiterten Abfragen. Wenn der ConsistencyLevel-Header nicht angegeben ist, gibt die Anforderung einen Fehler zurück.

    GET https://graph.microsoft.com/v1.0/applications?$search="displayName:Browser"
    
    {
        "error": {
            "code": "Request_UnsupportedQuery",
            "message": "Request with $search query parameter only works through MSGraph with a special request header: 'ConsistencyLevel: eventual'",
            "innerError": {
                "date": "2021-05-27T14:26:47",
                "request-id": "9b600954-ba11-4899-8ce9-6abad341f299",
                "client-request-id": "7964ef27-13a3-6ca4-ed7b-73c271110867"
            }
        }
    }
    

    Wenn eine Eigenschaft oder ein Abfrageparameter in der URL nur in erweiterten Abfragen unterstützt wird, aber entweder der ConsistencyLevel-Header oder die $count=true-Abfragezeichenfolge fehlt, gibt die Anforderung einen Fehler zurück.

    GET https://graph.microsoft.com/beta/users?$filter=endsWith(userPrincipalName,'%23EXT%23@contoso.com')
    
    {
        "error": {
            "code": "Request_UnsupportedQuery",
            "message": "Operator 'endsWith' is not supported because the required parameters might be missing. Try adding $count=true query parameter and ConsistencyLevel:eventual header. Refer to https://aka.ms/graph-docs/advanced-queries for more information",
            "innerError": {
                "date": "2023-07-14T08:43:39",
                "request-id": "b3731da7-5c46-4c37-a8e5-b190124d2531",
                "client-request-id": "a1556ddf-4794-929d-0105-b753a78b4c68"
            }
        }
    }
    

    Wenn eine Eigenschaft nicht zur Unterstützung eines Abfrageparameters indiziert wurde, gibt die Anforderung auch dann einen Fehler zurück, wenn die erweiterten Abfrageparameter angegeben sind.

    GET https://graph.microsoft.com/beta/groups?$filter=createdDateTime ge 2021-11-01&$count=true
    ConsistencyLevel: eventual
    
    {
        "error": {
            "code": "Request_UnsupportedQuery",
            "message": "Unsupported or invalid query filter clause specified for property 'createdDateTime' of resource 'Group'.",
            "innerError": {
                "date": "2023-07-14T08:42:44",
                "request-id": "b6a5f998-94c8-430d-846d-2eaae3031492",
                "client-request-id": "2be83e05-649e-2508-bcd9-62e666168fc8"
            }
        }
    }
    

    Eine Anforderung, die Abfrageparameter enthält, kann jedoch im Hintergrund fehlschlagen. Beispielsweise für nicht unterstützte Abfrageparameter und für nicht unterstützte Kombinationen von Abfrageparametern. Untersuchen Sie in diesen Fällen die von der Anforderung zurückgegebenen Daten, um zu ermitteln, ob die von Ihnen angegebenen Abfrageparameter die gewünschte Wirkung hatten. Im folgenden Beispiel fehlt beispielsweise der Parameter @odata.count, auch wenn die Abfrage erfolgreich war.

    GET https://graph.microsoft.com/v1.0/users?$count=true
    
    HTTP/1.1 200 OK
    Content-type: application/json
    
    {
      "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#users",
      "value":[
        {
          "displayName":"Oscar Ward",
          "mail":"oscarward@contoso.com",
          "userPrincipalName":"oscarward@contoso.com"
        }
      ]
    }