総合評価結果の取得
/km/api/v1/content/{id}/ratingsAggregate
このメソッドは、指定されたコンテンツ翻訳のすべての評価レスポンスを表すAggregateFormResultsオブジェクトを返します。 AggregateFormResultsオブジェクトには、リクエストで指定されたロケールに表示される評価の質問および評価の回答が含まれます。
ロケールを指定するには、Oracle Engagement Cloud Knowledge REST APIにリクエストするときに、kmauthtokenヘッダーのlocaleIdパラメータを設定します。 または、localeIdパラメータ値が指定されていない場合、メソッドは、指定されたロケールを、ログイン・ユーザーに割り当てられたデフォルトのロケール・オブジェクトとして解釈します。
どちらの場合も、指定されたロケールをセッションのロケールと呼びます。 kmauthtokenヘッダーのuserToken属性が、ログイン・ユーザーに対して作成されます。 また、Langprefリクエスト・パラメータでロケールを指定できます。
このメソッドは、各質問に対する回答を合計し、指定されたロケールの評価タイプに基づいてコンテンツ・オブジェクトの平均評価を計算します。 5つ星以外の評価タイプの平均評価はゼロです。
評価には3つのタイプがあります:
- 5つ星評価? 5つの星アイコンの行が記事の最後に表示されます。 各星アイコンは品質レベルを表します。
- いいねとよくないね - サム・アップ記号はいいねを表し、サム・ダウン記号はよくないねを表します。
- 評価なし
ノート: コンテンツ・オブジェクトは、特定のロケールに対してのみ評価できます。 したがって、異なるロケール・オブジェクトでリクエストが行われた場合、メソッドは同じコンテンツ・オブジェクトに対して異なるAggregateFormResultsオブジェクトを返します。
URIの例
このメソッドのURIの例を次に示します:
http://<IM_REST_API_HOST>/km/api/latest/content/{id}/ratingsAggregate
このリクエストは、指定されたContentオブジェクトのAggregateFormResultsオブジェクトを、セッションのロケールに翻訳して返します。
http://<IM_REST_API_HOST>/km/api/latest/content/{id}/ratingsAggregate?langpref=es_ES
リクエストは、指定したContentオブジェクトのAggregateFormResultsオブジェクトを、リクエストのロケールに翻訳して返します。
レスポンス・エラー
- OKDOM-GEN0001
このエラーは、リクエストに無効なIDが指定されている場合に発生します。
- OKDOM-SURV0018
このエラーは、評点タイプが評点なしとして構成されている場合に発生します。
リクエスト
- id: string
コンテンツ識別子。
レスポンス
- application/json
- application/xml
200 レスポンス
object
AggregateFormResults
- links(optional): array links
- questions(optional): array questions
AggregateQuestionResultとの関係が多すぎます
- recordId(optional): string
AggregateFormResultsオブジェクトの一意のレコードID。
- referenceKey(optional): string
AggregateFormResultsオブジェクトの参照キー。 AggregateFormResultsオブジェクトは、複数の言語をサポートしています。 このフィールドを使用して、すべての言語の関連オブジェクトを識別できます。
- totalResponses(optional): integer
AggregateFormResultsオブジェクトのTotalResponses
array
- Array of: object instanceLink
JSONインスタンス表現に表示される可能性があるリンク記述オブジェクトを記述するMetadata。
array
- Array of: object AggregateQuestionResult
タイトル:
AggregateQuestionResult
object
- href: string
URI [RFC3986]またはURIテンプレート[RFC6570]。 値がURI Templateに設定されている場合、「templated」プロパティをtrueに設定する必要があります。
- mediaType(optional): string
RFC 2046で定義された、リンク・ターゲットを説明するメディア・タイプ。
- method(optional): string
リンクのターゲットをリクエストするためのHTTPメソッド。
- profile(optional): string
ターゲット・リソースの参照解除時に予期されるリソースを記述する、JSONスキーマなどのリソースのメタデータへのリンク。
- rel: string
リンクの詳細を取得するためにタイプ・プロパティに加えて使用できるリンク関係の名前。 たとえば、hrefやprofileです。
- templated(optional): boolean
hrefプロパティがURIまたはURIテンプレートであることを指定するブール・フラグ。 プロパティがURIテンプレートの場合は、この値をtrueに設定します。 デフォルトでは、この値はfalseです。
object
AggregateQuestionResult
- answers(optional): array answers
AggregateAnswerResultとの関係が多すぎます
- averageResponse(optional): number
AggregateQuestionResultオブジェクトのAverageResponse
- name(optional): string
質問のローカライズされた表示名
- recordId(optional): string
AggregateQuestionResultオブジェクトの一意のレコードID。
- referenceKey(optional): string
AggregateQuestionResultオブジェクトの参照キー。 AggregateQuestionResultオブジェクトは、複数の言語をサポートしています。 このフィールドを使用して、すべての言語の関連オブジェクトを識別できます。
- totalResponses(optional): integer
AggregateQuestionResultオブジェクトのTotalResponses
array
- Array of: object AggregateAnswerResult
タイトル:
AggregateAnswerResult
object
AggregateAnswerResult
- name(optional): string
回答のローカライズされた表示名
- recordId(optional): string
AggregateAnswerResultオブジェクトの一意のレコードID。
- referenceKey(optional): string
AggregateAnswerResultオブジェクトの参照キー。 AggregateAnswerResultオブジェクトは、複数の言語をサポートしています。 このフィールドを使用して、すべての言語の関連オブジェクトを識別できます。
- totalResponses(optional): integer
AggregateAnswerResultオブジェクトのTotalResponses
例
例1
次の例では、評価タイプが五つ星の場合に、指定されたコンテンツ・オブジェクトの評価の質問と回答を集約して検索する方法を示します。
curl -X GET "https://<IM_REST_API_HOST>/km/api/latest/content/{id}/ratingsAggregate" -u "<username:password>" -H "Accept: application/json" -H "Content-Type: application/json"
レスポンス本文の例
次の例は、JSON形式のレスポンス本文のコンテンツを示しています:
{ "questions": [ { "answers": [ { "totalResponses": 2, "recordId": "29C9EEA5CB2B484A94762A4B1517EB57", "referenceKey": "A5", "name": "5" }, { "totalResponses": 1, "recordId": "3A9A0952D3CF4A138FA4518A0F25F020", "referenceKey": "A3", "name": "3" }, { "totalResponses": 0, "recordId": "4EFDA9A45A144CFDA9E0973A04BD5114", "referenceKey": "A2", "name": "2" }, { "totalResponses": 1, "recordId": "6BF001ED4CEB4EF1A007355BEE421F46", "referenceKey": "A4", "name": "4" }, { "totalResponses": 0, "recordId": "FC0EBC5507A041029D0FFE62A7DEAA6A", "referenceKey": "A1", "name": "1" } ], "recordId": "D56585C3385846B5A8D700593E1C96F4", "referenceKey": "Q1", "name": "How would you rate this document?", "totalResponses": 4, "averageResponse": 4.25 } ], "recordId": "EBA5CB446E25451C994D881F60FDA0BD", "referenceKey": "5_STAR_RATING", "links": [ { "rel": "canonical", "href": "https://<IM_REST_API_HOST>/km/api/latest/content/<content ID>/ratingsAggregate", "mediaType": "application/json, application/xml", "method": "GET" } ], "totalResponses": 4 }
例2
次の例は、評価タイプがLikeでDislikeの場合に、指定したコンテンツ・オブジェクトの評価の質問と回答を集計する方法を示しています。
curl -X GET "https://<IM_REST_API_HOST>/km/api/latest/content/{id}/ratingsAggregate" -u "<username:password>" -H "Accept: application/json" -H "Content-Type: application/json"
レスポンス本文の例
次の例は、JSON形式のレスポンス本文のコンテンツを示しています:
{ "questions": [ { "answers": [ { "totalResponses": 2, "recordId": "874CF739B99F4D358050B6C5CCC819F6", "referenceKey": "YES_OR_NO_RATING_A1", "name": "Dislike" }, { "totalResponses": 1, "recordId": "B73836830DC0401FA931120E4634408A", "referenceKey": "YES_OR_NO_RATING_A2", "name": "Like" } ], "recordId": "94AEF5ABE53A4E609EFD0A208E9007C3", "referenceKey": "YES_OR_NO_RATING_Q1", "name": "Do you like this Article?", "totalResponses": 3, "averageResponse": 0 } ], "recordId": "45C98B085B044881821DE07F68DC14CF", "referenceKey": "YES_OR_NO_RATING", "links": [ { "rel": "canonical", "href": "https://<IM_REST_API_HOST>/km/api/latest/content/<content ID>/ratingsAggregate", "mediaType": "application/json, application/xml", "method": "GET" } ], "totalResponses": 3 }