REST を使用してリストとリスト アイテムを操作する
ヒント
SharePoint Online (およびオンプレミス SharePoint 2016 以降) REST サービスでは、OData $batch
クエリ オプションを使って、サービスに対する複数の要求を 1 つの呼び出しに統合できます。 詳細とコード サンプルへのリンクについては、「REST API によりバッチ要求を発行する」を参照してください。
前提条件
このトピックでは、読者が「SharePoint REST サービスの概要」および「SharePoint REST エンドポイントを使用して基本的な操作を完了する」の各トピックに既に習熟していることを想定しています。 この記事にはコード スニペットが含まれていません。
REST を使用してリストおよびリスト プロパティを取得する
次の例は、GUID がわかっている場合に特定のリストを取得する方法を示しています。
GET https://{site_url}/_api/web/lists(guid'{list_guid}')
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
注:
JSON での応答を望む場合は Accept
ヘッダーで application/json;odata=verbose
を使用します。
Atom 形式での応答を望む場合は Accept
ヘッダーで application/atom+xml
を使用します。
次の例は、タイトルがわかっている場合に特定のリストを取得する方法を示しています。
GET https://{site_url}/_api/web/lists/GetByTitle('List Title')
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
次の XML は、XML コンテンツ タイプを要求したときに返されるリスト プロパティの例を示しています。
<content type="application/xml">
<m:properties>
<d:AllowContentTypes m:type="Edm.Boolean">true</d:AllowContentTypes>
<d:BaseTemplate m:type="Edm.Int32">100</d:BaseTemplate>
<d:BaseType m:type="Edm.Int32">0</d:BaseType>
<d:ContentTypesEnabled m:type="Edm.Boolean">false</d:ContentTypesEnabled>
<d:Created m:type="Edm.DateTime">2012-06-26T23:15:58Z</d:Created>
<d:DefaultContentApprovalWorkflowId m:type="Edm.Guid">00000000-0000-0000-0000-000000000000</d:DefaultContentApprovalWorkflowId>
<d:Description>A list created by Project Based Retention used to store Project Policy Items.</d:Description>
<d:Direction>none</d:Direction>
<d:DocumentTemplateUrl m:null="true" />
<d:DraftVersionVisibility m:type="Edm.Int32">0</d:DraftVersionVisibility>
<d:EnableAttachments m:type="Edm.Boolean">true</d:EnableAttachments>
<d:EnableFolderCreation m:type="Edm.Boolean">false</d:EnableFolderCreation>
<d:EnableMinorVersions m:type="Edm.Boolean">false</d:EnableMinorVersions>
<d:EnableModeration m:type="Edm.Boolean">false</d:EnableModeration>
<d:EnableVersioning m:type="Edm.Boolean">false</d:EnableVersioning>
<d:EntityTypeName>ProjectPolicyItemList</d:EntityTypeName>
<d:ForceCheckout m:type="Edm.Boolean">false</d:ForceCheckout>
<d:HasExternalDataSource m:type="Edm.Boolean">false</d:HasExternalDataSource>
<d:Hidden m:type="Edm.Boolean">true</d:Hidden>
<d:Id m:type="Edm.Guid">74de3ff3-029c-42f9-bd2a-1e9463def69d</d:Id>
<d:ImageUrl>/_layouts/15/images/itgen.gif</d:ImageUrl>
<d:IrmEnabled m:type="Edm.Boolean">false</d:IrmEnabled>
<d:IrmExpire m:type="Edm.Boolean">false</d:IrmExpire>
<d:IrmReject m:type="Edm.Boolean">false</d:IrmReject>
<d:IsApplicationList m:type="Edm.Boolean">false</d:IsApplicationList>
<d:IsCatalog m:type="Edm.Boolean">false</d:IsCatalog>
<d:IsPrivate m:type="Edm.Boolean">false</d:IsPrivate>
<d:ItemCount m:type="Edm.Int32">0</d:ItemCount>
<d:LastItemDeletedDate m:type="Edm.DateTime">2012-06-26T23:15:58Z</d:LastItemDeletedDate>
<d:LastItemModifiedDate m:type="Edm.DateTime">2012-06-26T23:15:59Z</d:LastItemModifiedDate>
<d:ListItemEntityTypeFullName>SP.Data.ProjectPolicyItemListItem</d:ListItemEntityTypeFullName>
<d:MultipleDataList m:type="Edm.Boolean">false</d:MultipleDataList>
<d:NoCrawl m:type="Edm.Boolean">true</d:NoCrawl>
<d:ParentWebUrl>/</d:ParentWebUrl>
<d:ServerTemplateCanCreateFolders m:type="Edm.Boolean">true</d:ServerTemplateCanCreateFolders>
<d:TemplateFeatureId m:type="Edm.Guid">00bfea71-de22-43b2-a848-c05709900100</d:TemplateFeatureId>
<d:Title>Project Policy Item List</d:Title>
</m:properties>
</content>
注:
ListItemEntityTypeFullName プロパティ (前の例の SP.Data.ProjectPolicyItemListItem) は、リスト アイテムを作成して更新する場合に特に重要です。 This value must be passed as the type property in the metadata that you pass in the body of the HTTP request whenever you create and update list items.
REST を使用してリストを操作する
次の例は、リストを作成する方法を示しています。
POST https://{site_url}/_api/web/lists
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
Content-Length: {length of request body as integer}
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.List"
},
"AllowContentTypes": true,
"BaseTemplate": 100,
"ContentTypesEnabled": true,
"Description": "My list description",
"Title": "Test"
}
次の例は、MERGE メソッドを使用してリストを更新する方法を示しています。
POST https://{site_url}/_api/web/lists(guid'{list_guid}')
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
Content-Length: {length of request body as integer}
If-Match: "{etag or *}"
X-HTTP-Method: "MERGE"
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.List"
},
"Title": "New title"
}
次の例は、リストのカスタム フィールドを作成する方法を示しています。
POST https://{site_url}/_api/web/lists(guid'{list_guid}')/Fields
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
Content-Length: {length of request body as integer}
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.Field"
},
"Title": "field title",
"FieldTypeKind": FieldType value,
"Required": "true/false",
"EnforceUniqueValues": "true/false",
"StaticName": "field name"
}
次の例は、リストを削除する方法を示しています。
POST https://{site_url}/_api/web/lists(guid'{list_guid}')
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
If-Match: "{etag or *}"
X-HTTP-Method: "DELETE"
X-RequestDigest: "{form_digest_value}"
ルックアップ列の変更
REST API を使用してリスト内のルックアップ列を参照するときは、内部名ではなくルックアップ列の表示名を使用します。
GET https://{site_url}/_api/web/lists/getbytitle('ListName')/Items?&$filter=LookupColumnId eq 1
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
REST を使用してリスト アイテムを操作する
すべてのリスト アイテムを取得する
次の例は、リストのアイテムをすべて取得する方法を示しています。
注:
- OData
$skip
クエリ パラメーターは、リスト アイテムをクエリするときに機能しません。 多くの場合、代わりに $skiptoken オプションを使用することができます。 - 既定では、最初の 100 個のアイテムが返されます。 アイテム数、ページングなどの制御方法について詳しくは、OData クエリの操作に関するドキュメントをご覧ください
GET https://{site_url}/_api/web/lists/GetByTitle('Test')/items
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
特定のリスト アイテムを取得する
次の例は、特定のリスト アイテムを取得する方法を示しています。
GET https://{site_url}/_api/web/lists/GetByTitle('Test')/items({item_id})
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
次の XML は、XML コンテンツ タイプを要求したときに返されるリスト アイテム プロパティの例を示しています。
<content type="application/xml">
<m:properties>
<d:FileSystemObjectType m:type="Edm.Int32">0</d:FileSystemObjectType>
<d:Id m:type="Edm.Int32">1</d:Id>
<d:ID m:type="Edm.Int32">1</d:ID>
<d:ContentTypeId>0x010049564F321A0F0543BA8C6303316C8C0F</d:ContentTypeId>
<d:Title>an item</d:Title>
<d:Modified m:type="Edm.DateTime">2012-07-24T22:47:26Z</d:Modified>
<d:Created m:type="Edm.DateTime">2012-07-24T22:47:26Z</d:Created>
<d:AuthorId m:type="Edm.Int32">11</d:AuthorId>
<d:EditorId m:type="Edm.Int32">11</d:EditorId>
<d:OData__UIVersionString>1.0</d:OData__UIVersionString>
<d:Attachments m:type="Edm.Boolean">false</d:Attachments>
<d:GUID m:type="Edm.Guid">eb6850c5-9a30-4636-b282-234eda8b1057</d:GUID>
</m:properties>
</content>
ストリームとしてアイテムを取得する
リストとそのデータに関する情報を取得します。 Lookup や管理されたメタデータなどの複雑なフィールドが使用されている場合は、この API を使用してリスト アイテムを取得できます。
POST https://{site_url}/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
Content-Type: "application/json;odata=nometadata"
{
"parameters": {
"AddRequiredFields": "true",
"DatesInUtc": "true",
"RenderOptions": 17
}
}
RenderListDataAsStream URI パラメーター
次のプロパティは、返されるデータを操作するためのクエリ文字列パラメーターとして追加できます。
プロパティ | 説明 | 型 | 例 |
---|---|---|---|
CascDelWarnMessage |
連鎖削除の警告がある場合に、メッセージを表示するかどうかを指定します。 | 番号 | 1 |
DrillDown |
グループ化されたビューの一部のグループを展開するように指定します。 GroupString と共に使用します。 |
string | |
GroupString |
ドリルダウン機能で使用されるグループ ID です。 | string | |
HasOverrideSelectCommand |
SharePoint ListView コントロールが正常に動作するように特定のフィールドが存在していることを確認するために使用します。 | string | |
Field |
含まれている必要がある特別なフィールドを指定します。 | string | |
FieldInternalName |
リストに外部データ ソースがある時にフィールドを識別するために使用します。 カスタム フィールドでフィルター処理する場合にも使用されます。 | string | |
Filter |
要求されたビューにフィルターを適用するかどうかを指定します。 | string | |
FilterData |
特定のフィルターで指定されたデータです。 | string | |
FilterData1 |
特定のフィルターで指定されたデータです。 | string | |
FilterData2 |
特定のフィルターで指定されたデータです。 | string | |
FilterData3 |
特定のフィルターで指定されたデータです。 | string | |
FilterData4 |
特定のフィルターで指定されたデータです。 | string | |
FilterData5 |
特定のフィルターで指定されたデータです。 | string | |
FilterData6 |
特定のフィルターで指定されたデータです。 | string | |
FilterData7 |
特定のフィルターで指定されたデータです。 | string | |
FilterData8 |
特定のフィルターで指定されたデータです。 | string | |
FilterData9 |
特定のフィルターで指定されたデータです。 | string | |
FilterData10 |
特定のフィルターで指定されたデータです。 | string | |
FilterField |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | |
FilterField1 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterField2 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterField3 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterField4 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterField5 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterField6 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterField7 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterField8 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterField9 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterField10 |
ビューに適用されている特定のフィルターのフィルター フィールド名です。 | string | ID |
FilterFields |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields1 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields2 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields3 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields4 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields5 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields6 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields7 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields8 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields9 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterFields10 |
乗数フィルターでフィルター処理する複数のフィールドを指定します。 | string | |
FilterValue |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | |
FilterValue1 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValue2 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValue3 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValue4 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValue5 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValue6 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValue7 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValue8 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValue9 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValue10 |
特定のフィルターに関連付けられているフィルターの値です。 例えば、FilterField3 は FilterValue3 と関連付けられます。 | string | 1 |
FilterValues |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues1 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues2 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues3 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues4 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues5 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues6 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues7 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues8 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues9 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterValues10 |
乗数フィルターの FilterFields と使用します。 例えば、FilterFields3 は FilterValues3 と関連付けられます。 | string | |
FilterLookupId |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId1 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId2 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId3 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId4 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId5 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId6 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId7 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId8 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId9 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterLookupId10 |
Lookup フィールドでフィルター処理するときに使用します。 フィルター処理する値を含む外部リストのアイテム ID です。 | string | |
FilterOnly |
string | ||
FilterOp |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp1 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp2 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp3 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp4 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp5 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp6 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp7 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp8 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp9 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
FilterOp10 |
フィルタ-演算子です。 Eq (Geq 、Leq など) 以外の、演算子を使用したフィルター処理をするときに使用します。 |
string | Geq |
ID |
情報を検索するアイテムのアイテム ID です。 | number | |
InplaceSearchQuery |
全リスト検索用の語句です。 | string | |
InplaceFullListSearch |
全リスト検索があるかどうかを指定するブール値です。 | string | |
IsCSR |
このビューが、クライアント側でレンダリングされたビューかどうかを指定します。 | string | |
CustomAction |
string | ||
IsGroupRender |
SPView の IsGroupRender プロパティを設定するために使用します。 | string | |
IsRibbon |
string | ||
IsXslView |
このビューが XSLT リスト ビューかどうかを指定します。 | string | |
List |
string | ||
ListId |
string | ||
ListViewPageUrl |
string | ||
OverrideScope |
レンダリングされたビューのスコープを上書きするために使用します: SPView.Scope | string | |
OverrideSelectCommand |
ビューで明示的に含まれているかどうかに関係なく、クエリに特定のフィールドが存在していることを確認するために使用します。 | string | |
PageFirstRow |
要求する最初の行のページング情報です。 リスト ビューのページングのために使用します。 | string | |
PageLastRow |
要求する最後の行のページング情報です。 リスト ビューのページングのために使用します。 | string | |
RootFolder |
ビューが表示しているフォルダーです。 | string | |
SortField |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField1 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField2 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField3 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField4 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField5 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField6 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField7 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField8 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField9 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortField10 |
ビューで並べ替えるべきフィールドです。 | string | ID |
SortFields |
最初に並べ替えるフィールドの名前を指定します。 | string | |
SortFieldValues |
最初に並べ替えるフィールドの名前を指定します。 | string | |
SortDir |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir1 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir2 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir3 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir4 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir5 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir6 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir7 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir8 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir9 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
SortDir10 |
ビューに適用するアドホック並べ替えの方向です。 | string | Desc |
View |
リストを表示するときに使用するベース ビューを指定します。 | GUID | 3d13559e-3071-5000-76b8-8f1ca6b835f0 |
ViewPath |
リストを表示するときに使用するビューのパスを指定します。 ViewId を指定した場合は ViewId が使用され、このパラメーターは無視されます。 |
string | |
ViewCount |
複数のリスト ビューがページにある場合、それらのいずれかを識別します。 | string | |
ViewId |
リストを表示するときに使用するベース ビューを指定します。 アドホック パラメーターが、このビューの上に適用されます。 ViewXml および BaseViewId を指定した場合は ViewXml が使用され、アドホック パラメーターは無視されます。 |
string | |
WebPartId |
このビューを表示しているリスト ビュー Web パーツの ID です。 | string |
RenderListDataAsStream 本文パラメーター プロパティ
プロパティ | 説明 | 型 | 例 |
---|---|---|---|
AddRequiredFields |
必要なフィールドが返されるべきかどうかを指定します。 | bool | true |
AllowMultipleValueFilterForTaxonomyFields |
分類フィールドの複数値のフィルター処理が許可されているかどうかを指定します。 | bool | true |
DatesInUtc |
DateTime フィールドを UTC と現地時刻のどちらで返すかを指定します。 | bool | true |
ExpandGroups |
グループを展開するかどうかを指定します。 | bool | true |
FirstGroupOnly |
ビュー スキーマに関係なく、最初のグループだけを返すかどうかを指定します。 | bool | true |
FolderServerRelativeUrl |
アイテムを返すフォルダーへの URL を指定します。 | string | /sites/team-a/lists/Orders/Europe |
ImageFieldsToTryRewriteToCdnUrls |
CDN の URL に値を書き直す必要があるフィールド名のコンマ区切りリストです。 | string | ArticleImage,SecondaryImage |
OverrideViewXml |
ビュー CAML と共に使用する上書き XML を指定します。 ビュー CAML の Query/Where パーツのみに適用されます。 |
string | <Query><Where><Gt><FieldRef Name=\"OrderCount\" /><Value Type=\"Number\">3</Value></Gt></Where></Query> |
Paging |
ページング情報を指定します。 | string | |
RenderOptions |
返される出力の種類を指定します。 | SPRenderListDataOptions | 使用可能な値については、次のセクションを参照してください。 値を加算することで複数の値を指定することができます。 |
ReplaceGroup |
GroupBy 調整のために、グループ化を置き換えるべきかどうかを指定します。 | bool | true |
ViewXml |
CAML ビュー XML を指定します。 | string |
SPRenderListDataOptions options
Label | 説明 | 値 |
---|---|---|
None |
既定の出力を返します。 | 0 |
ContextInfo |
リストのコンテキスト情報を返します。 | 1 |
ListData |
リスト データを返します (None と同じ)。 |
2 |
ListSchema |
リストのスキーマを返します。 | 4 |
MenuView |
リスト メニューの HTML を返します。 | 8 |
ListContentType |
リストのコンテンツ タイプの情報を返します。 ContextInfo フラグと共に使用する必要があります。 |
16 |
FileSystemItemId |
返されたリストには、可能であれば各アイテムの FileSystemItemId フィールドが含まれます。 ListData フラグと共に使用する必要があります。 |
32 |
ClientFormSchema |
アイテムを追加および編集するためのクライアント フォーム スキーマを返す | 64 |
QuickLaunch |
QuickLaunch ナビゲーション ノードを返す | 128 |
Spotlight |
Spotlight レンダリング情報を返す | 256 |
Visualization |
Visualization レンダリング情報を返す | 512 |
ViewMetadata |
現在のビューのビュー XML などの情報を返す | 1024 |
DisableAutoHyperlink |
このクエリ内のテキスト フィールドに AutoHyperlink が実行されないようにする | 2048 |
EnableMediaTAUrls |
.thumbnailUrl 、.videoManifestUrl 、.pdfConversionUrls などのメディア TA サービスを指す URL を有効にする |
4096 |
ParentInfo |
親フォルダーの情報を返す | 8192 |
PageContextInfo |
表示されている現在のリストのページ コンテキスト情報を返す | 16384 |
ClientSideComponentManifest |
リストに関連付けられているクライアント側のコンポーネント マニフェスト情報を返す (将来使用するために予約されています) | 32768 |
例
特定の ID を持つアイテムを取得する
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27&FilterField1=ID&FilterValue1=1
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
...
ID で降順に並べ替える
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27&SortField=ID&SortDir=Desc
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
...
指定したフォルダーからアイテムを取得する
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FOrders%27
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
Content-Type: "application/json"
{
"parameters": {
"FolderServerRelativeUrl": "/sites/team-a/lists/Orders/Europe"
}
}
リスト スキーマを取得する
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
Content-Type: "application/json"
{
"parameters": {
"RenderOptions": 4
}
}
リストのコンテンツ タイプの情報を取得する
POST https://{site_url}/sites/team-a/_api/web/GetList(@listUrl)/RenderListDataAsStream?@listUrl=%27%2Fsites%2Fteam-a%2Flists%2FList%27
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
Content-Type: "application/json"
{
"parameters": {
"RenderOptions": 17
}
}
リスト アイテムの作成
次の例は、リスト アイテムを作成する方法を示しています。
注:
この操作を実行するには、リストの ListItemEntityTypeFullName プロパティを知っていて、それを HTTP 要求本文の type の値として渡す必要があります。 以下は、ListItemEntityTypeFullName を取得するための残りの呼び出しのサンプル
GET https://{site_url}/_api/web/lists/GetByTitle('Test')?$select=ListItemEntityTypeFullName
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=nometadata"
POST https://{site_url}/_api/web/lists/GetByTitle('Test')/items
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json;odata=verbose"
Content-Length: {length of request body as integer}
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.Data.TestListItem"
},
"Title": "Test"
}
フォルダー内にリスト アイテムを作成する
次の例は、フォルダー内にリスト アイテムを作成する方法を示しています。
POST https://{site_url}/_api/web/lists/GetByTitle('Test')/AddValidateUpdateItemUsingPath
Authorization: "Bearer " + accessToken
Accept "application/json;odata=nometadata"
Content-Type "application/json;odata=nometadata"
X-RequestDigest "The appropriate digest for current site"
{
"listItemCreateInfo": {
"FolderPath": {
"DecodedUrl": "https://{site_url}/lists/Test/Folder/SubFolder"
},
"UnderlyingObjectType": 0
},
"formValues": [
{
"FieldName": "Title",
"FieldValue": "Item"
}
],
"bNewDocumentUpdate": false
}
プロパティの詳細の要求
プロパティ | 説明 |
---|---|
listItemCreateInfo |
アイテムを作成するリストおよびフォルダーに関する情報 |
listItemCreateInfo.FolderPath.DecodedUrl |
アイテムを作成するフォルダーの絶対 URL |
listItemCreateInfo.UnderlyingObjectType |
作成するアイテムの種類 詳細については、「FileSystemObjectType」を参照 |
formValues |
新しく作成されたアイテムに設定するフィールド名と値の配列 |
bNewDocumentUpdate |
リスト アイテムを作成するには false に設定します |
応答
名前 | 型 | 説明 |
---|---|---|
200 OK | ブール型 | 成功 |
{
"value": [
{
"ErrorMessage": null,
"FieldName": "Title",
"FieldValue": "Item",
"HasException": false,
"ItemId": 0
},
{
"ErrorMessage": null,
"FieldName": "Id",
"FieldValue": "1",
"HasException": false,
"ItemId": 0
}
]
}
value
プロパティには、リスト アイテムを作成するときに設定されたプロパティの一覧が含まれています。
リスト アイテムを更新する
次の例は、リスト アイテムを更新する方法を示しています。
注:
この操作を実行するには、リストの ListItemEntityTypeFullName プロパティを知っていて、それを HTTP 要求本文の type の値として渡す必要があります。
POST https://{site_url}/_api/web/lists/GetByTitle('Test')/items({item_id})
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
Content-Length: {length of request body as integer}
If-Match: "{etag or *}"
X-HTTP-Method: "MERGE"
X-RequestDigest: "{form_digest_value}"
{
"__metadata": {
"type": "SP.Data.TestListItem"
},
"Title": "TestUpdated"
}
リスト アイテムを削除する
次の例は、リスト アイテムを削除する方法を示しています。
POST https://{site_url}/_api/web/lists/GetByTitle('Test')/items({item_id})
Authorization: "Bearer " + accessToken
Accept: "application/json;odata=verbose"
Content-Type: "application/json"
If-Match: "{etag or *}"
X-HTTP-Method: "DELETE"
ETag 値を使用してドキュメントとリスト アイテムのバージョンを確認する
SharePoint REST サービス (OData 標準に準拠) は、SharePoint リストとリスト アイテムの Header ETags を使用します。 PUT、MERGE、DELETE 要求を実行するときにアイテムのバージョンを確認するには、If-Match HTTP 要求ヘッダーで ETag を指定します。
要求に指定した ETag がサーバー上のドキュメントまたはリスト項目の ETag と一致しない場合、OData 仕様に従い、REST サービスによって 412 例外が返されます。
- バージョンの違いにかかわらず、アイテムを強制的に上書きするには、ETag の値に "*" を設定します。
- ETag を指定しない場合、SharePoint は、バージョンの違いにかかわらずアイテムを上書きします。
SharePoint 内で、ETag は SharePoint リストとリスト項目にのみ適用されます。