Partager via


todoTask : delta

Espace de noms: microsoft.graph

Obtenez un ensemble de ressources todoTask qui ont été ajoutées, supprimées ou mises à jour dans un todoTaskList spécifié.

Un appel de fonction delta pour les ressources todoTask dans un todoTaskList est similaire à une requête GET, sauf qu’en appliquant de manière appropriée des jetons d’état dans un ou plusieurs de ces appels, vous pouvez interroger les modifications incrémentielles dans todoTask dans ce todoTaskList. Cela vous permet de gérer et de synchroniser un magasin local des ressources todoTask d’un utilisateur sans avoir à extraire l’ensemble du jeu à partir du serveur à chaque fois.

Cette API est disponible dans les déploiements de cloud national suivants.

Service global Gouvernement des États-Unis L4 Us Government L5 (DOD) Chine gérée par 21Vianet

Autorisations

Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.

Type d’autorisation Autorisations avec privilèges minimum Autorisations privilégiées plus élevées
Déléguée (compte professionnel ou scolaire) Tasks.ReadWrite Tasks.Read
Déléguée (compte Microsoft personnel) Tasks.ReadWrite Tasks.Read
Application Tasks.ReadWrite.All Tasks.Read.All

Requête HTTP

GET /me/todo/lists/{id}/tasks/delta
GET /users/{id|userPrincipalName}/todo/lists/{todoTaskListId}/tasks/delta

Paramètres de requête

Le suivi des modifications dans une collection todoTask entraîne une série d’appels de fonction delta . Si vous utilisez un paramètre de requête (autre que $deltatoken et $skiptoken), vous devez le spécifier dans la requête delta initiale. Microsoft Graph code automatiquement les paramètres spécifiés dans la partie jeton du @odata.nextLink ou de l’URL @odata.deltaLink fournie dans la réponse. Il vous suffit de spécifier les paramètres de requête de votre choix la première fois. Dans les requêtes suivantes, copiez et appliquez simplement l’URL @odata.nextLink ou @odata.deltaLink de la réponse précédente, car cette URL inclut déjà les paramètres encodés souhaités.

Paramètre de requête Type Description
$deltatoken string Jeton d’état retourné dans l’URL @odata.deltaLink de l’appel de fonction delta précédent pour la même collection todoTask, indiquant la fin de cette série de suivi des modifications. Enregistrez et appliquez l’ensemble de l’URL @odata.deltaLink, y compris ce jeton dans la première requête de la série suivante de suivi des modifications pour cette collection.
$skiptoken string Jeton d’état retourné dans l’URL @odata.nextLink de l’appel de fonction delta précédent, indiquant que d’autres modifications doivent être suivies dans la même collection todoTask.

Paramètres de requête OData

  • Vous pouvez utiliser un paramètre de requête $select comme dans toute requête GET pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleures performances. La propriété id est toujours renvoyée.
  • Les requêtes Delta prennent en charge $select, $topet $expand pour todoTask.
  • Pour $filter et $orderby, la prise en charge est limitée :
    • Les seules expressions $filter prises en charge sont $filter=receivedDateTime+ge+{value} ou $filter=receivedDateTime+gt+{value}.
    • La seule expression $orderby prise en charge est $orderby=receivedDateTime+desc. Si vous n’incluez pas d’expression $orderby, l’ordre de renvoi n’est pas garanti.
  • $search n’est pas pris en charge.

En-têtes de demande

Nom Type Description
Autorisation string Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation.
Content-Type string application/json. Obligatoire.
Préférence chaîne odata.maxpagesize={x}. Facultatif.

Réponse

Si elle réussit, cette méthode renvoie un code de réponse et un 200 OK objet de collection todoTask dans le corps de la réponse.

Exemple

Demande

Pour suivre les modifications apportées aux ressources todoTask dans un todoTaskList depuis la dernière série de suivi des modifications, vous devez effectuer un ou plusieurs appels de fonction delta pour obtenir l’ensemble des modifications incrémentielles. L’exemple suivant montre comment commencer une série suivante de suivi des modifications, en utilisant l’URL dans le @odata.deltaLink retourné à partir du dernier appel de fonction delta de la dernière ronde, qui contient un deltaToken. Cet appel de fonction delta limite le nombre maximal de todoTask dans le corps de la réponse à 2.

GET https://graph.microsoft.com/v1.0/me/todo/lists/gDbc8U7HGwADDZocJgAAAA==/tasks/delta?$deltatoken=w0vf2jHg2mBXU-I2AK0FSWl0dopNtG8u5YoM

Réponse

Si la requête est acceptée, la réponse inclut un jeton d’état qui est un skipToken
(dans un en-tête de réponse @odata.nextLink ) ou deltaToken (dans un en-tête de réponse @odata.deltaLink ). Respectivement, ils indiquent si vous devez poursuivre la ronde ou si vous avez terminé d’obtenir toutes les modifications pour cette ronde.

La réponse suivante illustre un skipToken dans un en-tête de réponse @odata.nextLink.

Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

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

{
   "@odata.deltaLink":"https://graph.microsoft.com/v1.0/me/todo/lists/gDbc8U7HGwADDZocJgAAAA==/tasks/delta?$deltatoken=MoVMZ_DzHG4AhT3WE8VioVS1IXZJ-ArqK5fknOjnKFY",
   "value":[
      {
         "@odata.etag":"W/\"4rfRVIPi9EqXgDbc8U7HGwADLLQ9xQ==\"",
         "importance":"normal",
         "isReminderOn":false,
         "status":"notStarted",
         "title":"empty task3",
         "createdDateTime":"2020-08-12T04:54:29.1925206Z",
         "lastModifiedDateTime":"2020-08-12T04:54:29.4903939Z",
         "id":"AAMkADMwNTcyZjQzLTdkMGItNDdjMy04ZTYwLTJhYmUzNGI5ZDEwMwBGAAAAAAB5M0K0qlJySLOAgV22zPnuBwDit9FUg_L0SpeANtzxTscbAAMNmhwmAADit9FUg_L0SpeANtzxTscbAAMxlnrYAAA=",
         "body":{
            "content":"",
            "contentType":"text"
         }
      }
   ]
}