REST サービスを使用して SharePoint アイテムを同期させる
SharePoint とアドインまたはサービス間でアイテムを同期させる場合、GetListItemChangesSinceToken リソースを使用して行うことができます。 SharePoint REST サービスの一部である GetListItemChangesSinceToken は、Lists.GetListItemChangesSinceToken Web サービス呼び出しに対応します。
要求本文に SP.ChangeLogItemQuery オブジェクトのプロパティ オブジェクトを含む POST 要求を実行します。
要求は、指定されたクエリに一致するリスト アイテムの変更に対応する行を含む ADO rowset XML を返します。 プロパティのデータ構造、CAML 要素の説明、戻り値など、これらのプロパティの詳細については、「Lists.GetListItemChangesSinceToken」を参照してください。
例
POST https://{site_url}/_api/web/Lists/GetByTitle('Announcements')/GetListItemChangesSinceToken`
Authorization: "Bearer " + accessToken
Content-Type: "application/json"
Content-Length: {length of request body as integer}
{
"d" : {
"query": {
"__metadata": {
"type": "SP.ChangeLogItemQuery"
},
"ViewName": "",
"Query": "
<Query>
<Where>
<Contains>
<FieldRef Name='Title' />
<Value Type='Text'>Te</Value>
</Contains>
</Where>'
</Query>,
"QueryOptions": "
<QueryOptions>
<IncludeMandatoryColumns>FALSE</IncludeMandatoryColumns>
<DateInUtc>False</DateInUtc>
<IncludePermissions>TRUE</IncludePermissions>
<IncludeAttachmentUrls>FALSE</IncludeAttachmentUrls>
<Folder>Shared Documents/Test1</Folder>
</QueryOptions>',
"ChangeToken":"1;3;eee4c6d5-f88a-42c4-8ce1-685122984870;634397182229400000;3710",
"Contains": "
<Contains>
<FieldRef Name="Title"/>
<Value Type="Text">Testing</Value>
</Contains>"
}
}
}
SP.ChangeLogItemQuery オブジェクトのプロパティ
プロパティ | 説明 |
---|---|
ListName | リストのタイトルまたは GUID のいずれかを含む文字列。 UserInfo テーブルをクエリする場合、文字列には UserInfo が含まれる。 GUID を使用するほうが処理速度が速い。 |
ViewName | クエリ、viewFields、rowLimit パラメーターによって表される既定のビュー属性に使用するビューを決定する、ビューの GUID を含む文字列。 この引数が指定されていない場合、既定のビューが想定されます。 指定した場合、 クエリ、 viewFields、または rowLimit パラメーターの値は、ビュー内の同等の設定をオーバーライドします。 たとえば、viewFields パラメーターで指定されたビューに 100 行の行数制限があり、rowLimit パラメーターの値が 1000 に指定されている場合、応答には 1,000 行が返されます。 |
クエリ | Query 要素。どのレコードをどの順序に並べて返すかを指定するクエリを含みます。 |
QueryOptions | SPQuery オブジェクトのさまざまなプロパティの個別のノードを含む、次の形式の XML 断片。 |
ChangeToken | 要求の変更トークンを含む文字列。 この文字列に使用される形式の詳細については、「変更ログの概要」を参照してください。 Null を渡すと、リスト内のすべてのアイテムが返されます。 |
Contains | Contains 要素。クエリのカスタム フィルタリングを指定します。 |