名前空間: microsoft.graph
指定した todoTaskList で追加、削除、または更新された todoTask リソースのセットを取得します。
todoTaskList 内の todoTask リソースのデルタ関数呼び出しは GET 要求に似ていますが、これらの呼び出しの 1 つ以上で状態トークンを適切に適用することで、その todoTaskList の todoTask の増分変更を照会できる点が異なります。 これにより、毎回サーバーからセット全体をフェッチすることなく、ユーザーの todoTask リソースのローカル ストアを維持および同期できます。
この API は、次の国内クラウド展開で使用できます。
| グローバル サービス |
米国政府機関 L4 |
米国政府機関 L5 (DOD) |
21Vianet が運営する中国 |
| ✅ |
✅ |
✅ |
❌ |
アクセス許可
この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。
アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。
| アクセス許可の種類 |
最小特権アクセス許可 |
より高い特権のアクセス許可 |
| 委任 (職場または学校のアカウント) |
Tasks.ReadWrite |
Tasks.Read |
| 委任 (個人用 Microsoft アカウント) |
Tasks.ReadWrite |
Tasks.Read |
| アプリケーション |
Tasks.ReadWrite.All |
Tasks.Read.All |
HTTP 要求
GET /me/todo/lists/{id}/tasks/delta
GET /users/{id|userPrincipalName}/todo/lists/{todoTaskListId}/tasks/delta
クエリ パラメーター
todoTask コレクションの変更を追跡すると、1 つ以上のデルタ関数呼び出しのラウンドが発生します。 任意のクエリ パラメーター ($deltatoken と$skiptoken以外) を使用する場合は、最初のデルタ要求でこれを指定する必要があります。 Microsoft Graph は、応答で提供される @odata.nextLink または @odata.deltaLink の URL のトークン部分に指定したパラメーターを自動的にエンコードします。
必要なクエリ パラメーターを前もって 1 回指定しておくだけで済みます。
後続の要求では、前の応答の @odata.nextLink または @odata.deltaLink URL をコピーして適用するだけです。その URL には、エンコードされた目的のパラメーターが既に含まれています。
| クエリ パラメーター |
種類 |
説明 |
| $deltatoken |
string |
同じ todoTask コレクションに対する前のデルタ関数呼び出しの@odata.deltaLink URL で返された状態トークン。変更追跡のラウンドの完了を示します。 このコレクションについて、このトークンを含む、@odata.deltaLink URL 全体を次の変更追跡のラウンドの最初の要求に保存し、適用します。 |
| $skiptoken |
string |
前のデルタ関数呼び出しの@odata.nextLink URL で返される状態トークン。同じ todoTask コレクションで追跡する追加の変更があることを示します。 |
OData クエリ パラメーター
- GET 要求と同様に、
$select クエリ パラメーターを使用して、最適なパフォーマンスを得るために必要なプロパティのみを指定できます。
id プロパティは常に返されます。
- デルタ クエリでは、todoTask の
$select、 $top、および $expand がサポートされます。
-
$filter と $orderby に対するサポートには制限があります。
- サポートされている唯一の
$filter 式は、$filter=receivedDateTime+ge+{value} または $filter=receivedDateTime+gt+{value} です。
- サポートされている唯一の
$orderby 式は、$orderby=receivedDateTime+desc です。 式を含めない場合、戻り値の順序は保証されません。
-
$search はサポートされていません。
| 名前 |
型 |
説明 |
| Authorization |
string |
ベアラー {token}。 必須です。
認証と認可についての詳細をご覧ください。 |
| Content-Type |
string |
application/json. Required. |
| Prefer |
string |
odata.maxpagesize={x}。 省略可能。 |
応答
成功した場合、このメソッドは 200 OK 応答コードと、応答本文の todoTask コレクション オブジェクトを返します。
例
要求
変更追跡の最後のラウンド以降に todoTaskList 内の todoTask リソースの変更を追跡するには、1 つ以上の デルタ 関数呼び出しを行って増分変更のセットを取得します。 次の例では、deltaTokenを含む最後のラウンドの最後のデルタ関数呼び出しから返された@odata.deltaLinkの URL を使用して、変更追跡の次のラウンドを開始する方法を示します。 この デルタ 関数呼び出しでは、応答本文の todoTask の最大数を 2 に制限します。
GET https://graph.microsoft.com/v1.0/me/todo/lists/gDbc8U7HGwADDZocJgAAAA==/tasks/delta?$deltatoken=w0vf2jHg2mBXU-I2AK0FSWl0dopNtG8u5YoM
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
// Note: The URI string parameter used with WithUrl() can be retrieved using the OdataNextLink or OdataDeltaLink property from a response object
var result = await graphClient.Me.Todo.Lists["{todoTaskList-id}"].Tasks.Delta.WithUrl("https://graph.microsoft.com/v1.0/me/todo/lists/gDbc8U7HGwADDZocJgAAAA==/tasks/delta?$deltatoken=w0vf2jHg2mBXU-I2AK0FSWl0dopNtG8u5YoM").GetAsDeltaGetResponseAsync();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-sdk-go/users"
//other-imports
)
requestDeltatoken := "w0vf2jHg2mBXU-I2AK0FSWl0dopNtG8u5YoM"
requestParameters := &graphusers.TodoListsItemTasksDeltaRequestBuilderGetQueryParameters{
Deltatoken: &requestDeltatoken,
}
configuration := &graphusers.TodoListsItemTasksDeltaRequestBuilderGetRequestConfiguration{
QueryParameters: requestParameters,
}
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
delta, err := graphClient.Me().Todo().Lists().ByTodoTaskListId("todoTaskList-id").Tasks().Delta().GetAsDeltaGetResponse(context.Background(), configuration)
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.users.item.todo.lists.item.tasks.delta.DeltaRequestBuilder deltaRequestBuilder = new com.microsoft.graph.users.item.todo.lists.item.tasks.delta.DeltaRequestBuilder("https://graph.microsoft.com/v1.0/me/todo/lists/gDbc8U7HGwADDZocJgAAAA==/tasks/delta?$deltatoken=w0vf2jHg2mBXU-I2AK0FSWl0dopNtG8u5YoM", graphClient.getRequestAdapter());
com.microsoft.graph.users.item.todo.lists.item.tasks.delta.DeltaGetResponse result = deltaRequestBuilder.get();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
const options = {
authProvider,
};
const client = Client.init(options);
let delta = await client.api('/me/todo/lists/gDbc8U7HGwADDZocJgAAAA==/tasks/delta')
.get();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Users\Item\Todo\Lists\Item\Tasks\Delta\DeltaRequestBuilderGetRequestConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestConfiguration = new DeltaRequestBuilderGetRequestConfiguration();
$queryParameters = DeltaRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->deltatoken = "w0vf2jHg2mBXU-I2AK0FSWl0dopNtG8u5YoM";
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphServiceClient->me()->todo()->lists()->byTodoTaskListId('todoTaskList-id')->tasks()->delta()->get($requestConfiguration)->wait();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
Import-Module Microsoft.Graph.Users
# A UPN can also be used as -UserId.
Get-MgUserTodoTaskDelta -UserId $userId -TodoTaskListId $todoTaskListId -Deltatoken "w0vf2jHg2mBXU-I2AK0FSWl0dopNtG8u5YoM"
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.users.item.todo.lists.item.tasks.delta.delta_request_builder import DeltaRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
query_params = DeltaRequestBuilder.DeltaRequestBuilderGetQueryParameters(
deltatoken = "w0vf2jHg2mBXU-I2AK0FSWl0dopNtG8u5YoM",
)
request_configuration = RequestConfiguration(
query_parameters = query_params,
)
result = await graph_client.me.todo.lists.by_todo_task_list_id('todoTaskList-id').tasks.delta.get(request_configuration = request_configuration)
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
応答
要求が成功すると、応答には状態トークンが含まれます。これは、skipToken
( @odata.nextLink 応答ヘッダー内) または deltaToken ( @odata.deltaLink 応答ヘッダー内)。
それぞれ、ラウンドを続行するか、そのラウンドのすべての変更の取得を完了したかを示します。
以下の応答は、@odata.nextLink 応答ヘッダーに含まれる skipToken を示しています。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
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"
}
}
]
}
関連コンテンツ