EDS の補助 API
コンテンツに関する情報を直接提供するのではなく、サービスの使用方法や共通 UI モデルの操作方法に関する一般的な情報を提供する Entertainment Discovery Services (EDS) API がいくつかあります。
補助 API
API | URI | 説明 |
---|---|---|
API パラメーター値 | /{locale}/metadata | サービスの呼び出しで使用できる有効なパラメーター値の列挙 |
結合コンテンツ レーティング生成 | /{locale}/contentRating | 他の API で不快な、または過激な描写が含まれている可能性があるコンテンツをフィルタリングするために使用できる値を作成します。 詳細については、後のセクションを参照してください。 |
結合フィールド名生成 | /{locale}/fields | 詳細 API でどのフィールドを返すかを制御するために使用できる値を作成します。 詳細については、後のセクションを参照してください。 |
API パラメーター値
この API は、サービスで使用できるパラメーターについて説明します。 ローカライズされたテキストが各パラメーターに対応付けられているため、返された情報をクライアント UI で使用できます。
以下のどの API も、クエリ パラメーターを受け入れません。
API | URI | 説明 |
---|---|---|
タイプ | /{locale}/metadata/mediaGroups | メディア グループの完全なリスト |
メディア グループごとのメディア項目タイプ | /{locale}/metadata/mediaGroups/{mediaItemTypeGroup}/mediaItemTypes | 特定のメディア グループに含まれるメディア項目タイプのリスト |
すべてのメディア項目タイプ | /{locale}/metadata/mediaItemTypes | メディア項目タイプの完全なリスト |
メディア項目タイプごとのフィールド | /{locale}/metadata/mediaItemTypes/{mediaItemType}/fields | 1 つのメディア項目タイプのフィールドのリスト |
クエリ絞り込み条件 | /{locale}/metadata/mediaItemTypes/{mediaItemType}/queryRefiners | 特定のメディア項目タイプでサポートされるクエリ絞り込み条件のリスト |
すべてのクエリ絞り込み条件値 | /{locale}/metadata/mediaItemTypes/{mediaItemType}/queryRefiners/{queryRefiner} | 特定のメディア項目タイプに対して指定されたクエリ絞り込み条件の値 |
すべてのクエリ絞り込み条件サブ値 | /{locale}/metadata/mediaItemTypes/{mediaItemType}/queryRefiners/{queryRefiner}/subQueryRefinerValues | 特定のクエリ絞り込み条件値のサブ値 (例: "特定のジャンルのサブジャンル") のリスト。 クエリ絞り込み条件値は、"queryRefinerValue" という名前のクエリ文字列パラメーターとして渡されます。これにより、URI ステムに禁止されている文字が含まれているクエリ絞り込み条件値を渡すことができます。 |
並べ替え | /{locale}/metadata/mediaItemTypes/{mediaItemType}/sortOrders | 特定のメディア項目タイプの並べ替え順序のリスト |
結合コンテンツ レーティング生成
子供が表示できるコンテンツに保護者による制限を適用するのは複雑な作業です。 メディア項目タイプごとに独自のレーティング システムがあるだけでなく、それらのレーティング システムが国/地域によっても異なる場合があります。 つまり、すべての項目を適切にフィルタリングするためには、さまざまな異なるデータを指定する必要があります。
すべての API 呼び出しですべてのパラメーターを指定する代わりに、この API は、他の API の combinedContentRating パラメーターに渡す値を生成し、その後も同じ情報を伝達します。 この API に渡された各パラメーターは、他の API で再利用可能な 1 つの値に結合されるので、各 API での使用および保守が容易になります。
この API によって返される正確な値は、最終的に変わる可能性がありますが、変わることは非常にまれであるため (EDS のリリース間など)、長時間のキャッシュが可能です。 combinedContentRating パラメーターを受け入れる API は、渡された値が無効な場合には適切なエラー メッセージを表示します。そのメッセージには、呼び出し元はこの API を再度呼び出して更新後の値を取得するだけでよいことが示されます。 combinedContentRating パラメーターを受け入れる API にこのパラメーターが提供されないときは、保護者による制限に基づくコンテンツのフィルタリングは実行されません。
注:
つまり、"安全な" コンテンツだけが返されるのではなく、過激な描写が含まれる可能性があるコンテンツを含むすべてのコンテンツが返されます。
結合フィールド名
EDS の API は、既定では、どの項目についてもごく少数のフィールドのセットを返します。
- メディア項目タイプ
- メディア グループ
- Id
- 名前
より詳細な情報を取得する場合、API は、返される追加データを指定する "fields" パラメーターを受け入れます。 使用可能なフィールドは多数あるため、API 呼び出しごとにそれらの名前を完全に指定すると、要求が膨大なものになります。 代わりに、それらの名前をこの API に渡すと、かなりサイズの小さい値を生成して他の API に渡すことができます。
このパラメーターを受け入れる API では、提供される値は、指定されたすべてのメディア項目タイプの、すべてのフィールドのスーパーセットでなければなりません。 各メディア項目タイプで異なるフィールド セットを指定することはできません。 ただし、フィールドが 1 つのメディア項目タイプのみに該当する場合、そのフィールドはデータが存在するメディア項目タイプでのみ表示されます (例: 結合フィールド名 API の呼び出しに "AvatarBodyType" が含まれている場合、AvatarItems のみにそのフィールドが含まれます)。
この API から返される値はキャッシュ可能であり、実際に、EDS のデプロイメント間以外では変化しません。 キャッシュを行う場合は、キャッシュの持続時間がユーザーのセッションよりも長くならないようにすることをお勧めします。
実際のフィールド名を受け入れるだけでなく、この API は "all" も有効な値として受け入れます。 これにより、指定できる各フィールドを含む値が生成されます。 "all" 値は、多くの場合、開発、デバッグ、およびテストの目的にのみ使用されます。