ItemServiceのRESTful API
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
このトピックでは、ItemServiceが提供するRESTful APIを使ってSitecoreアイテムにアクセスするためのいくつかのユースケースについて説明します。
認証
ログイン
この方法でユーザー認証を行います。認証クッキーを設定します。この方法はHTTPS経由でのみ応答します。
動詞
POST
URL
/auth/login
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("POST", "https://
ItemServiceはログインが成功すると200(OK)、ログインが失敗すると403(禁止)を送信します。
!注クロスサイトログインを行う場合は、xhr.withCredentialsプロパティをtrueに設定してください。
ログアウト
この方法でSitecoreからログアウトします。認証クッキーは削除されます。
動詞
POST
URL
/auth/logout
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://
ItemServiceは成功した場合に200(OK)、ログアウトが成功しなかった場合に403(禁止)を送信します。
!注クロスサイトログアウトを行う必要がある場合は、xhr.withCredentialsプロパティをtrueに設定してください。
IDでアイテムを取得する
これを使って、IDで指定した単一のSitecoreアイテムを取得します。
動詞
GET
URL
item/{id}?database&language&version&includeStandardTemplateFields&includeMetadata&fields
URLには以下のパラメータがあります:
名称
概要
詳細
ID
取得するSitecoreアイテムのIDを指定します。
ガイド、必須
例: 110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9
データベース
アイテムを取得できるデータベースを指定します。
文字列、オプション
例: core
デフォルト
言語
言語を選びましょう。
文字列、オプション
例: ja-JP
デフォルト
バージョン
回収するアイテムのバージョンを選択します。
文字列、オプション
例: 1
デフォルト
includeStandardTemplateFields
もしこれが正しければ、標準テンプレートフィールドは取得されるデータの一部となります。
BOOL、任意
デフォルト: false
includeMetadata
もし真実であれば、メタデータは取得されるデータの一部となります。
BOOL、任意
デフォルト: false
場
カンマ区切られたリストで取得するフィールド名を指定します。
文字列、オプション
例: ItemId,ItemName,TemplateName
デフォルト
JavaScriptの例:
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://
その答えは次のようになります:
200(OK)
Accept: application/json Content-Type: application/json { "ItemID": "110d559f-dea5-42ea-9c1c-8a5df7e70ef9", "ItemName": "Home", "ItemPath": "/sitecore/content/Home", "ParentID": "0de95ae4-41ab-4d01-9eb0-67441b7c2450", "TemplateID": "76036f5e-cbce-46d1-af0a-4143f9b557aa", "TemplateName": "Sample Item", "CloneSource": null, "ItemLanguage": "en", "ItemVersion": "1", "Title": "Sitecore", "Text": "\r\n\t\t
Welcome to Sitecore
\r\n" }エラーは以下のいずれかの回答を示します。
反応
概要
400
悪いリクエスト。これはサーバーがリクエストを受け入れていないことを示しています。パラメータが無効であるためかもしれません。また、リクエストを繰り返すべきでないことも示しています。
403
禁止。安全上の理由から許可されていません。
404
見つかりません。そのアイテムは存在しないか、あなたがアクセスできません。
コンテンツパスでアイテムを取得する
この方法で、コンテンツパスで指定した単一のSitecoreアイテムを取得します。
動詞
GET
URL
/item/?path={path}?database&language&version&includeStandardTemplateFields&includeMetadata&fields
URLには以下のパラメータがあります:
名称
概要
詳細
経路
Sitecoreのコンテンツツリーでアイテムへのパスを指定します。
string, requiredexample:/sitecore/content/Home
データベース
アイテムを取得できるデータベースを指定します。
文字列、オプション
例: core
デフォルト
言語
言語を選べ...
文字列、オプション
例: ja-JP
デフォルト
バージョン
回収するアイテムのバージョンを選択します。
文字列、オプション
例: 1
デフォルト
includeStandardTemplateFields
もしこれが正しければ、標準テンプレートフィールドは取得されるデータの一部となります。
BOOL、任意
デフォルト: false
includeMetadata
もし真実であれば、メタデータは取得されるデータの一部となります。
BOOL、任意
デフォルト: false
場
カンマ区切られたリストで取得するフィールド名を指定します。
文字列、オプション
例: ItemId,ItemName,TemplateNamedefault: all fields
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://
反応はIDでアイテムを取得する時と同じです。
アイテムの子を回収する
これを使って、IDで指定したSitecoreアイテムの子ファイルを取得します
動詞
GET
URL
/item/{id}/children?database&language&version&includeStandardTemplateFields&includeMetadata&fields
URLには以下のパラメータがあります:
名称
概要
詳細
ID
取得するSitecoreアイテムのIDを指定します。
ガイド、必須
例: 110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9
データベース
アイテムを取得するデータベースを指定します。
文字列、オプション
例: core
デフォルト
言語
言語を選びましょう。
文字列、オプション
例: ja-JP
デフォルト
バージョン
回収するアイテムのバージョンを選択します。
文字列、オプション
例: 1
デフォルト
includeStandardTemplateFields
もしこれが正しければ、標準テンプレートフィールドは取得されるデータの一部となります。
BOOL、任意
デフォルト: false
includeMetadata
もし真実であれば、メタデータは取得されるデータの一部となります。
BOOL、任意
デフォルト: false
場
カンマ区切られたリストで取得するフィールド名を指定します。
文字列、オプション
例: ItemId,ItemName,TemplateNamedefault: all fields
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://
その反応は、単一のアイテムを取り戻したときの反応と似ています。
アイテムを作成する
この方法で新しいSitecoreアイテムを作成します。
動詞
POST
URL
/item/{path}?database&language
URLには以下のパラメータがあります:
名称
概要
詳細
経路
Sitecoreのコンテンツツリーでアイテムが作成される場所への経路を指定します。
文字列、必須
例: sitecore/content/home
データベース
アイテムを取得するデータベースを指定します。
文字列、オプション
例: core
デフォルト
言語
言語を選びましょう。
文字列、オプション
例: ja-JP
デフォルト
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://
もしSitecoreがそのアイテムを作成した場合、次のような返答が得られます:
201 (Created) Headers: Location: /item/0727f965-2338-43cc-bd88-5071ad3f7a12?database=master
新しいアイテムのIDは「ロケーション」の一部です。
誤りがある場合、以下の回答が可能です。
- 400(悪いリクエスト)
- 403(禁断)
- 404(見つかりません)
アイテムを編集する
このメソッドを使ってアイテムを編集できます。フィールド値の更新、アイテム名の更新、アイテムの移動など、すべて一度のHTTPリクエストで可能です。
動詞
PATCH
URL
/item/{id}?database&language&version
URLには以下のパラメータがあります:
名称
概要
詳細
ID
編集したいSitecoreアイテムのIDを指定してください。
ガイド、必須
例: 110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9
データベース
アイテムがどのデータベースにあるかを指定してください。
文字列、オプション
例: core
デフォルト
言語
言語セレクターを指定します。
文字列、オプション
例: ja-JP
デフォルト
バージョン
編集したいアイテムのバージョンを指定してください。
文字列、オプション
例: 1
デフォルト
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("PATCH", "http://
以下のいずれかの回答が返ってきます:
反応
概要
204
コンテンツなし。これはリクエストが成功したときの応答です。
400
悪いリクエスト。これは、パラメータが無効であるため、サーバーがリクエストを受け入れていないことを示します。また、リクエストを繰り返してはいけないことを示しています。
403
禁止。安全上の理由から許可されていません。
404
見つかりません。そのアイテムは存在しないか、あなたがアクセスできません。
アイテムを削除する
この方法でアイテムを削除してください。
動詞
DELETE
URL
/item/{id}?database&language
URLには以下のパラメータがあります:
名称
概要
詳細
ID
削除したいSitecoreアイテムのIDを指定してください。
ガイド、必須
例: 110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9
データベース
アイテムがどのデータベースにあるかを指定してください。
文字列、オプション
例: core
デフォルト
言語
言語セレクターを指定します。
文字列、オプション
例: ja-JP
デフォルト
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("DELETE", "http://
以下のいずれかの回答が返ってきます:
反応
概要
204
コンテンツなし。これはリクエストが成功したときの応答です。
400
悪いリクエスト。これは、パラメータが無効であるため、サーバーがリクエストを受け入れていないことを示します。また、リクエストを繰り返してはいけないことを示しています。
403
禁止。安全上の理由から許可されていません。
404
見つかりません。そのアイテムは存在しないか、あなたがアクセスできません。
ストアクエリを実行します
このメソッドを使って、Sitecoreのアイテム(「クエリ定義アイテム」)に格納されたクエリを実行する(「実行」)します。
動詞
GET
URL
/item/{id}/query?pageSize&page&database&includeStandardTemplateFields&fields
URLには以下のパラメータがあります:
名称
概要
詳細
ID
実行するクエリの定義を含むSitecoreアイテムのIDを指定します。
ガイド、必須
例: 110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9
ページサイズ
HTTP応答でサービスが返す結果の数を指定します。
整数、任意
デフォルト: 10
ページ
サービスが表示する結果ページセットのページ番号を指定します。
整数、任意
デフォルト: 0
データベース
アイテムがどのデータベースにあるかを指定してください。
文字列、オプション
例: core
デフォルト
includeStandardTemplateFields
もしこれが正しければ、標準テンプレートフィールドは取得されるデータの一部となります。
BOOL、任意
デフォルト: false
場
カンマ区切られたリストで取得するフィールド名を指定します。
文字列、オプション
例: ItemId,ItemName,TemplateName
デフォルト
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://
その返答は次のようなものかもしれません。
200(OK)
Accept: application/json
Content-Type: application/json
{
"TotalCount": 100,
"TotalPage": 50,
"Links":
{
"Href": "http://
}
もしリクエストが成功しなかった場合は、以下のいずれかの回答を受け取ることができます:
反応
概要
400
悪いリクエスト。これは、パラメータが無効であるため、サーバーがリクエストを受け入れていないことを示しています。また、リクエストを繰り返すべきでないことも示しています。この応答は、クエリ定義項目が存在しないときに受け取られます。
403
禁止。安全上の理由から、この要求は許可されていません
Sitecore検索を実行してください
この方法でSitecore検索を実行します。
動詞
GET
URL
/item/search?term&pageSize&page&database&language&includeStandardTemplateFields&fields&sorting&facet
URLには以下のパラメータがあります:
名称
概要
詳細
用語
検索するテキストを指定してください。
文字列、必須
例: Home
ページサイズ
HTTP応答でサービスが返す結果の数を指定します。
整数、任意
デフォルト: 10
ページ
サービスが表示する結果ページセットのページ番号を指定します。
整数、任意
デフォルト: 0
データベース
アイテムがどのデータベースにあるかを指定してください。
文字列、オプション
例: core
デフォルト
言語
言語セレクターを指定します。 all をワイルドカードとして使います。
文字列、オプション
例: ja-JP
デフォルト
includeStandardTemplateFields
もしこれが正しければ、標準テンプレートフィールドは取得されるデータの一部となります。
BOOL、任意
デフォルト: false
場
カンマ区切られたリストで取得するフィールド名を指定します。
文字列、オプション
例: ItemId,ItemName,TemplateName
デフォルト
ソーティング
ソートするフィールドのパイプで分離されたリストを指定します。各値の最初の文字はソート順を指定します
(昇順)またはd(降順)文字列、オプション
例: aTemplateName|dItemId
側面
検索結果を制限するために使いたいファセットの名前と値を指定してください
文字列、オプション
例: _templatename|condition
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://
その返答は次のようなものかもしれません。
200 (OK)
Accept: application/json
Content-Type: application/json
{
"Facets":
{
"Name": "_templatename",
"Values":
{
"Name": "condition",
"AggregateCount": 15,
"Link": {
"Href": "http://
}
,
"TotalCount": 15,
"TotalPage": 8,
"Links":
{
"Href": "http://
}
もしリクエストが成功しなかった場合は、以下のいずれかの回答を受け取ることができます:
- 400(悪いリクエスト)
- 403(禁断)
- 503(サービス不可)
ストアされたSitecore検索を実行してください
このメソッドを使って、Sitecoreのアイテム(「検索定義項目」)に保存されるSitecore検索を実行します。検索定義項目には、検索のルート項目やテンプレートタイプなどのデフォルト値を含みます。URL内で検索語自体を渡します。
動詞
GET
URL
/item/{id}/search?term&pageSize&page&database
URLには以下のパラメータがあります:
名称
概要
詳細
ID
検索定義項目のIDを指定します。
ガイド、必須
例: 110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9
用語
検索するテキストを指定してください。
文字列、必須
例: Home
ページサイズ
HTTP応答でサービスが返す結果の数を指定します。
整数、任意
デフォルト: 10
ページ
サービスが表示する結果ページセットのページ番号を指定します。
整数、任意
デフォルト: 0
データベース
アイテムがどのデータベースにあるかを指定してください。
文字列、オプション
例: core
デフォルト
JavaScript例
var xhr = new XMLHttpRequest();
xhr.open("GET", "
その返答は次のようなものかもしれません。
200(OK)
Accept: application/json
Content-Type: application/json
{
"Facets":
{
"Name": "_templatename",
"Values":
{
"Name": "condition",
"AggregateCount": 15,
"Link": {
"Href": "http://
}
,
"TotalCount": 15,
"TotalPage": 8,
"Links":
{
"Href": "http://
}
もしリクエストが成功しなかった場合は、以下のいずれかの回答を受け取ることができます:
- 400(悪いリクエスト)
- 403(禁断)
- 503(サービス不可)