Freigeben über


user: delta

Namespace: microsoft.graph

Rufen Sie neu erstellte, aktualisierte oder gelöschte Benutzer ab, ohne die gesamte Benutzersammlung vollständig lesen zu müssen. Weitere Informationen finden Sie unter Verwenden von Deltaabfragen zum Nachverfolgen von Änderungen in Microsoft Graph-Daten .

Hinweis

Änderungen an der Eigenschaft „licenseAssignmentStates“ werden derzeit nicht nachverfolgt.

Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.

Weltweiter Service US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

Wählen Sie die Berechtigung oder Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) User.Read.All Directory.Read.All, Directory.ReadWrite.All, User.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Application User.Read.All Directory.Read.All, Directory.ReadWrite.All, User.ReadWrite.All

HTTP-Anforderung

Um mit der Nachverfolgung von Änderungen zu beginnen, stellen Sie eine Anforderung, indem Sie die Delta-Funktion in die Benutzerressource einschließen.

GET /users/delta

Abfrageparameter

Beim Nachverfolgen von Änderungen in Benutzern wird eine Runde von einem oder mehreren delta-Funktionsaufrufen ausgeführt. Wenn Sie Abfrageparameter (außer $deltatoken und $skiptoken) verwenden, müssen Sie sie in der ursprünglichen Delta-Anforderung angeben. Microsoft Graph codiert automatisch alle angegebenen Parameter in den Tokenteil der in der Antwort enthaltenen @odata.nextLink- oder @odata.deltaLink-URL.

Sie müssen alle gewünschten Abfrageparameter nur einmal im Vorfeld angeben.

In nachfolgenden Anforderungen können Sie die @odata.nextLink- oder @odata.deltaLink-URL aus der vorherigen Antwort kopieren und anwenden, da diese URL bereits die codierten gewünschten Parameter enthält.

Abfrageparameter Typ Beschreibung
$deltatoken string Ein Zustandstoken, das in der @odata.deltaLink URL des vorherigen Delta-Funktionsaufrufs für dieselbe Benutzersammlung zurückgegeben wird und den Abschluss dieser Runde der Änderungsnachverfolgung angibt. Speichern Sie die gesamte @odata.deltaLink-URL einschließlich dieses Tokens, und wenden Sie sie in der ersten Anforderung der nächsten Änderungsnachverfolgungsrunde für diese Sammlung an.
$skiptoken string Ein Statustoken, das in der @odata.nextLink-URL des vorhergehenden delta-Funktionsaufrufs zurückgegeben wird und anzeigt, dass in derselben Benutzersammlung weitere Änderungen zum Nachverfolgen vorliegen.

OData-Abfrageparameter

Diese Methode unterstützt die optionalen OData-Abfrageparameter zur Anpassung der Antwort.

  • Sie können wie bei jeder GET-Anforderung den Abfrageparameter $select verwenden, um zwecks Leistungsoptimierung nur die benötigten Eigenschaften anzugeben. Die Eigenschaft id wird immer zurückgegeben.
  • Es gibt eingeschränkte Unterstützung für $filter:
    • Der einzige unterstützte $filter-Ausdruck dient zum Nachverfolgen von Änderungen an einem bestimmten Objekt: $filter=id+eq+{value}. Sie können mehrere Objekte filtern. Beispiel: https://graph.microsoft.com/v1.0/users/delta/?$filter= id eq '477e9fc6-5de7-4406-bb2a-7e5c83c9ffff' or id eq '004d6a07-fe70-4b92-add5-e6e37b8affff'. Es gibt einen Grenzwert von 50 gefilterten Objekten.

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über Authentifizierung und Autorisierung.
Content-Type application/json
Prefer return=minimal

Wenn Sie für diese Kopfzeile eine Aufforderung festlegen, die ein @odata.deltaLink verwendet, würden nur die Objekteigenschaften zurückgegeben werden, die seit der letzten Runde geändert wurden. Optional.

Anforderungstext

Geben Sie keinen Anforderungstext für diese Methode an.

Antwort

Wenn die Methode erfolgreich verläuft, werden der Antwortcode 200 OK und das user-Sammlungsobjekt im Antworttext zurückgegeben. Die Antwort enthält auch eine @odata.nextLink-URL oder eine @odata.deltaLink-URL.

  • Wenn eine @odata.nextLink-URL zurückgegeben wird:

    • Dies bedeutet, es gibt zusätzliche Seiten mit Daten, die in der Sitzung abgerufen werden müssen. Die Anwendung stellt weiterhin Anforderungen mithilfe der @odata.nextLink URL, bis eine @odata.deltaLink URL in der Antwort enthalten ist.
    • Die Antwort enthält die gleiche Gruppe von Eigenschaften, wie in der ersten Anforderung einer Delta-Abfrage. Dadurch können Sie den vollständigen aktuellen Status der Objekte beim Initiieren des Delta-Zyklus erfassen.
  • Wenn eine @odata.deltaLink-URL zurückgegeben wird:

    • Dies deutet darauf hin, dass keine Weiteren Daten zum vorhandenen Zustand der Ressource vorhanden sind, die zurückgegeben werden soll. Speichern Sie und verwenden Sie die @odata.deltaLink-URL, um Informationen über die Änderungen an der Ressource in der nächsten Runde zu erhalten.
    • Sie können die Prefer:return=minimal-Kopfzeile so festlegen, dass in der Antwort nur die Eigenschaften Werte enthalten sind, die seit dem Zeitpunkt geändert wurden, an dem die @odata.deltaLink erstellt wurde.

Standard: Es werden dieselben Eigenschaften zurückgegeben wie die der ursprünglichen Delta-Anfrage

Standardmäßig geben Abfragen, die @odata.deltaLink oder @odata.nextLink verwenden, dieselben Eigenschaften zurück, wie sie in der ersten Delta-Abfrage ausgewählt wurden. Diese geschieht wie folgt:

  • Wenn die Eigenschaft geändert wurde, ist der neue Wert in der Antwort enthalten. Dies schließt Eigenschaften ein, die auf einen Null-Wert festgelegt werden.
  • Wenn sich die Eigenschaft nicht geändert hat, wird der alte Wert in die Antwort aufgenommen.
  • Wenn eine Eigenschaft zuvor nie festgelegt wurde, ist sie überhaupt nicht in der Antwort enthalten.

Hinweis: Durch das Betrachten der Antwort kann nicht festgestellt werden, ob sich eine Eigenschaft ändert oder nicht. Außerdem sind die Deltaantworten in der Regel groß, da sie alle Eigenschaftswerte enthalten (siehe Beispiel 2).

Alternative: nur die geänderten Eigenschaften zurückgeben

Das Hinzufügen eines optionalen Anfrage-Headers – prefer:return=minimal – führt zu folgendem Verhalten:

  • Wenn die Eigenschaft geändert wurde, ist der neue Wert in der Antwort enthalten. Dies schließt Eigenschaften ein, die auf einen Null-Wert festgelegt werden.
  • Wenn die Eigenschaft nicht geändert wurde, ist die Eigenschaft überhaupt nicht in der Antwort enthalten. (Anders als beim Standardverhalten).

Hinweis: Die Kopfzeile kann zu jedem Zeitpunkt im Delta-Zyklus zu einer @odata.deltaLink-Abfrage hinzugefügt werden. Die Kopfzeile wirkt sich nur auf die Gruppe von Eigenschaften, die in der Antwort enthalten sind, aus und beeinflusst nicht, wie die Delta-Abfrage ausgeführt wird. Siehe Beispiel 3.

Beispiele

Beispiel 1: Standardeigenschaften

Anforderung

Das folgende Beispiel zeigt eine Anfrage. Da kein $select Parameter vorhanden ist, wird ein Standardsatz von Eigenschaften nachverfolgt und zurückgegeben.

GET https://graph.microsoft.com/v1.0/users/delta

Antwort

Hier sehen Sie ein Beispiel für die Antwort, wenn sie aus @odata.deltaLink der Abfrageinitialisierung abgerufen wird.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#users",
  "@odata.nextLink":"https://graph.microsoft.com/v1.0/users/delta?$skiptoken=pqwSUjGYvb3jQpbwVAwEL7yuI3dU1LecfkkfLPtnIjsXoYQp_dpA3cNJWc",
  "value": [
    {
      "businessPhones": [
          "+1 425 555 0109"
      ],
      "displayName": "Adele Vance",
      "givenName": "Adele",
      "jobTitle": "Retail Manager",
      "mail": "AdeleV@contoso.com",
      "mobilePhone": "+1 425 555 0109",
      "officeLocation": "18/2111",
      "preferredLanguage": "en-US",
      "surname": "Vance",
      "userPrincipalName": "AdeleV@contoso.com",
      "id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd"
    }
  ]
}

Beispiel 2: Auswählen von drei Eigenschaften

Anforderung

Das nächste Beispiel zeigt die ursprüngliche Anforderung mit drei ausgewählten Eigenschaften für Änderungen nachverfolgen und standardmäßigem Antwortverhalten.

GET https://graph.microsoft.com/v1.0/users/delta?$select=displayName,jobTitle,mobilePhone

Antwort

Hier sehen Sie ein Beispiel für die Antwort, wenn sie aus @odata.deltaLink der Abfrageinitialisierung abgerufen wird. Alle drei Eigenschaften sind in der Antwort enthalten, und es ist nicht bekannt, welche sich seit dem Abrufen von @odata.deltaLink geändert haben.

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#users",
  "@odata.nextLink":"https://graph.microsoft.com/v1.0/users/delta?$skiptoken=pqwSUjGYvb3jQpbwVAwEL7yuI3dU1LecfkkfLPtnIjsXoYQp_dpA3cNJWc",
  "value": [
    {
      "displayName": "Adele Vance",
      "jobTitle": "Retail Manager",
      "mobilePhone": "+1 425 555 0109"
    }
  ]
}

Beispiel 3: Alternatives minimales Antwortverhalten

Anforderung

Das nächste Beispiel zeigt die ursprüngliche Anforderung mit drei ausgewählten Eigenschaften für Änderungen nachverfolgen und alternativem minimalen Antwortverhalten.

GET https://graph.microsoft.com/v1.0/users/delta?$select=displayName,jobTitle,mobilePhone
Prefer: return=minimal

Antwort

Hier sehen Sie ein Beispiel für die Antwort, wenn sie aus @odata.deltaLink der Abfrageinitialisierung abgerufen wird. Die mobilePhone -Eigenschaft ist nicht enthalten, was bedeutet, dass sie sich seit der letzten Deltaabfrage displayName nicht geändert hat und jobTitle enthalten ist, was bedeutet, dass sich ihre Werte geändert haben.

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#users",
  "@odata.nextLink":"https://graph.microsoft.com/v1.0/users/delta?$skiptoken=pqwSUjGYvb3jQpbwVAwEL7yuI3dU1LecfkkfLPtnIjsXoYQp_dpA3cNJWc",
  "value": [
    {
      "displayName": "Vance Adele",
      "jobTitle": "Product Marketing Manager"
    }
  ]
}