message: delta

Namespace: microsoft.graph

Wichtig

APIs unter der /beta Version in Microsoft Graph können geändert werden. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in Version 1.0 verfügbar ist, verwenden Sie die Versionsauswahl .

Dient zum Abrufen eines Satzes von Nachrichten, die einem bestimmten Ordner hinzugefügt bzw. daraus gelöscht oder darin aktualisiert wurden.

Ein delta-Funktionsaufruf für Nachrichten in einem Ordner ähnelt einer GET-Anforderung, mit der Ausnahme, dass durch entsprechende Anwendung von Statustoken in einem oder mehreren dieser Aufrufe inkrementelle Änderungen an den Nachrichten im betreffenden Ordner abgefragt werden können. Dies ermöglicht es Ihnen, einen lokalen Speicher der Nachrichten eines Benutzers zu pflegen und zu synchronisieren, ohne dass Sie jedes Mal den gesamten Satz Nachrichten vom Server abrufen müssen.

Berechtigungen

Eine der nachfolgenden Berechtigungen ist erforderlich, um diese API aufrufen zu können. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie im Artikel zum Thema Berechtigungen.

Berechtigungstyp Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
Delegiert (Geschäfts-, Schul- oder Unikonto) Mail.ReadBasic, Mail.Read, Mail.ReadWrite
Delegiert (persönliches Microsoft-Konto) Mail.ReadBasic, Mail.Read, Mail.ReadWrite
Anwendung Mail.ReadBasic.All, Mail.Read, Mail.ReadWrite

HTTP-Anforderung

GET /me/mailFolders/{id}/messages/delta
GET /users/{id}/mailFolders/{id}/messages/delta

Abfrageparameter

Beim Nachverfolgen von Änderungen in Nachrichten 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 einfach aus der vorherigen Antwort kopieren und anwenden, da diese URL bereits die codierten gewünschten Parameter enthält.

Abfrageparameter Typ Beschreibung
$deltatoken string Ein Statustoken, das in der @odata.deltaLink-URL des vorhergehenden delta-Funktionsaufrufs für dieselbe Nachrichtensammlung zurückgegeben wird und den Abschluss dieser Runde der Änderungsnachverfolgung anzeigt. 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 Nachrichtensammlung weitere Änderungen zum Nachverfolgen vorliegen.

OData-Abfrageparameter

  • 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.
  • Die Delta-Abfrage unterstützt $select, $top und $expand für Nachrichten.
  • Es besteht eingeschränkte Unterstützung für $filter und $orderby:
    • Es werden nur die $filter-Ausdrücke $filter=receivedDateTime+ge+{value} oder $filter=receivedDateTime+gt+{value} unterstützt.
    • Es wird nur der $orderby-Ausdruck $orderby=receivedDateTime+desc unterstützt. Wenn Sie keinen $orderby-Ausdruck einschließen, ist die Rückgabereihenfolge nicht gewährleistet.
  • $search wird nicht unterstützt.

Anforderungsheader

Name Typ Beschreibung
Authorization string Bearer {token}. Erforderlich.
Content-Type string application/json. Erforderlich.
Prefer string odata.maxpagesize={x}. Optional.

Antwort

Wenn die Methode erfolgreich verläuft, werden der Antwortcode 200 OK und das message-Sammlungsobjekt im Antworttext zurückgegeben.

Beispiel

Anforderung

Das folgende Beispiel zeigt, wie Sie einen einzelnen delta-Funktionsaufruf ausführen und die maximale Anzahl von Nachrichten im Textkörper der Antwort auf 2 beschränken.

Zum Nachverfolgen von Änderungen in den Nachrichten eines Ordners führen Sie einen oder mehrere delta-Funktionsaufrufe aus, um den Satz der inkrementellen Änderungen seit der letzten Delta-Abfrage abzurufen. Ein Beispiel für eine Runde von Delta-Abfrageaufrufen finden Sie unter Inkrementelle Änderungen an Nachrichten in einem Ordner abrufen.

GET https://graph.microsoft.com/beta/me/mailFolders/{id}/messages/delta

Prefer: odata.maxpagesize=2
Antwort

Wenn die Anforderung erfolgreich ist, enthält die Antwort ein Statustoken, entweder ein skipToken
(in einem @odata.nextLink-Antwortheader) oder ein deltaToken (in einem @odata.deltaLink-Antwortheader). Diese geben an, ob Sie mit der Runde fortfahren sollten oder ob alle Änderungen für diese Runde abgerufen wurden.

Die Antwort unten zeigt ein skipToken in einem @odata.nextLink-Antwortheader.

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

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

{
  "@odata.nextLink":"https://graph.microsoft.com/beta/me/mailfolders/{id}/messages/delta?$skiptoken={_skipToken_}",
  "value": [
    {
      "receivedDateTime": "datetime-value",
      "sentDateTime": "datetime-value",
      "hasAttachments": true,
      "internetMessageId": "internetMessageId-value",
      "subject": "subject-value",
      "body": {
        "contentType": "contentType-value",
        "content": "content-value"
      }
    }
  ]
}

Siehe auch