

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# GetRecommendations
<a name="API_RS_GetRecommendations"></a>

傳回建議項目的清單。對於行銷活動，行銷活動的 Amazon Resource Name (ARN) 是必要的，所需的使用者和項目輸入取決於用來建立支援行銷活動之解決方案的配方類型，如下所示：
+ USER\$1PERSONALIZATION - `userId`必要，`itemId`不使用
+ RELATED\$1ITEMS - `itemId`必要，`userId`不使用

**注意**  
由使用類型為 PersonalIZED\$1RANKING 的配方建立的解決方案所支援的行銷活動會使用 [GetPersonalizedRanking](API_RS_GetPersonalizedRanking.md) API。

 對於推薦者，推薦者的 ARN 是必要的，所需的項目和使用者輸入取決於支援推薦者的使用案例 （以網域為基礎的配方）。如需使用案例需求的資訊，請參閱[選擇推薦者使用案例](https://docs.aws.amazon.com/personalize/latest/dg/domain-use-cases.html)。

## 請求語法
<a name="API_RS_GetRecommendations_RequestSyntax"></a>

```
POST /recommendations HTTP/1.1
Content-type: application/json

{
   "campaignArn": "string",
   "context": { 
      "string" : "string" 
   },
   "filterArn": "string",
   "filterValues": { 
      "string" : "string" 
   },
   "itemId": "string",
   "metadataColumns": { 
      "string" : [ "string" ]
   },
   "numResults": number,
   "promotions": [ 
      { 
         "filterArn": "string",
         "filterValues": { 
            "string" : "string" 
         },
         "name": "string",
         "percentPromotedItems": number
      }
   ],
   "recommenderArn": "string",
   "userId": "string"
}
```

## URI 請求參數
<a name="API_RS_GetRecommendations_RequestParameters"></a>

請求不會使用任何 URI 參數。

## 請求主體
<a name="API_RS_GetRecommendations_RequestBody"></a>

請求接受採用 JSON 格式的下列資料。

 ** [campaignArn](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-campaignArn"></a>
用於取得建議的行銷活動 Amazon Resource Name (ARN)。  
類型：字串  
長度限制：長度上限為 256。  
模式：`arn:([a-z\d-]+):personalize:.*:.*:.+`  
必要：否

 ** [context](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-context"></a>
取得建議時要使用的內容中繼資料。內容中繼資料包括在取得使用者建議時可能相關的任何互動資訊，例如使用者的目前位置或裝置類型。  
類型：字串到字串映射  
映射項目：最多 150 個項目。  
金鑰長度限制：長度上限為 150。  
金鑰模式：`[A-Za-z\d_]+`  
值長度限制：長度上限為 1000。  
必要：否

 ** [filterArn](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-filterArn"></a>
要套用至傳回建議的篩選條件 ARN。如需詳細資訊，請參閱[篩選建議](https://docs.aws.amazon.com/personalize/latest/dg/filter.html)。  
使用此參數時，請確定篩選資源為 `ACTIVE`。  
類型：字串  
長度限制：長度上限為 256。  
模式：`arn:([a-z\d-]+):personalize:.*:.*:.+`  
必要：否

 ** [filterValues](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-filterValues"></a>
篩選建議時要使用的值。針對篩選條件表達式中的每個預留位置參數，提供參數名稱 （在相符的情況下） 做為索引鍵，並提供篩選條件值 （做為對應值）。以逗號分隔一個參數的多個值。  
對於使用 `INCLUDE`元素包含項目的篩選條件表達式，您必須為表達式中定義的所有參數提供值。對於具有使用 `EXCLUDE`元素排除項目之表達式的篩選條件，您可以省略 `filter-values`。在此情況下，Amazon Personalize 不會使用該表達式的該部分篩選建議。  
如需詳細資訊，請參閱[篩選建議和使用者客群](https://docs.aws.amazon.com/personalize/latest/dg/filter.html)。  
類型：字串到字串映射  
映射項目：最多 25 個項目。  
金鑰長度限制：長度上限為 50。  
金鑰模式：`[A-Za-z0-9_]+`  
值長度限制：長度上限為 1000。  
必要：否

 ** [itemId](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-itemId"></a>
要提供建議的項目 ID。  
`RELATED_ITEMS` 配方類型的必要項目。  
類型：字串  
長度限制：長度上限為 256。  
必要：否

 ** [metadataColumns](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-metadataColumns"></a>
如果您在建立或更新行銷活動或建議程式時已在建議中啟用中繼資料，請指定要包含在項目建議中的項目資料集中繼資料資料欄。映射索引鍵為 `ITEMS`，值是來自您的項目資料集的資料欄名稱清單。您可以提供的欄數上限為 10。  
 如需啟用行銷活動中繼資料的詳細資訊，請參閱[在行銷活動的建議中啟用中繼資料](https://docs.aws.amazon.com/personalize/latest/dg/campaigns.html#create-campaign-return-metadata)。如需為建議者啟用中繼資料的詳細資訊，請參閱[在建議者的建議中啟用中繼資料](https://docs.aws.amazon.com/personalize/latest/dg/creating-recommenders.html#create-recommender-return-metadata)。  
類型：字串到字串陣列映射  
映射項目：最多 1 個項目。  
金鑰長度限制：長度上限為 256。  
陣列成員：最多 99 個項目。  
長度限制：長度上限為 150。  
必要：否

 ** [numResults](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-numResults"></a>
要傳回的結果數量。預設為 25。如果您在建議中包含中繼資料，則上限為 50。否則，上限為 500。  
類型：整數  
有效範圍：最小值為 0。  
必要：否

 ** [promotions](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-promotions"></a>
要套用至建議請求的促銷。提升定義適用於建議項目可設定子集的其他業務規則。  
類型：[Promotion](API_RS_Promotion.md) 物件陣列  
陣列成員：最多 1 個項目。  
必要：否

 ** [recommenderArn](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-recommenderArn"></a>
要用來取得建議的建議者 Amazon Resource Name (ARN)。如果您使用網域使用案例的推薦者建立網域資料集群組，請提供推薦者 ARN。  
類型：字串  
長度限制：長度上限為 256。  
模式：`arn:([a-z\d-]+):personalize:.*:.*:.+`  
必要：否

 ** [userId](#API_RS_GetRecommendations_RequestSyntax) **   <a name="personalize-RS_GetRecommendations-request-userId"></a>
要提供建議的使用者 ID。  
`USER_PERSONALIZATION` 配方類型的必要項目。  
類型：字串  
長度限制：長度上限為 256。  
必要：否

## 回應語法
<a name="API_RS_GetRecommendations_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "itemList": [ 
      { 
         "itemId": "string",
         "metadata": { 
            "string" : "string" 
         },
         "promotionName": "string",
         "reason": [ "string" ],
         "score": number
      }
   ],
   "recommendationId": "string"
}
```

## 回應元素
<a name="API_RS_GetRecommendations_ResponseElements"></a>

如果動作成功，則服務傳回 HTTP 200 回應。

服務會傳回下列 JSON 格式的資料。

 ** [itemList](#API_RS_GetRecommendations_ResponseSyntax) **   <a name="personalize-RS_GetRecommendations-response-itemList"></a>
依預測分數以遞減順序排序的建議清單。清單中最多可以有 500 個項目。  
類型：[PredictedItem](API_RS_PredictedItem.md) 物件陣列

 ** [recommendationId](#API_RS_GetRecommendations_ResponseSyntax) **   <a name="personalize-RS_GetRecommendations-response-recommendationId"></a>
建議的 ID。  
類型：字串

## 錯誤
<a name="API_RS_GetRecommendations_Errors"></a>

 ** InvalidInputException **   
提供欄位或參數的有效值。  
HTTP 狀態碼：400

 ** ResourceNotFoundException **   
指定的資源不存在。  
HTTP 狀態碼：404

## 另請參閱
<a name="API_RS_GetRecommendations_SeeAlso"></a>

如需在其中一種語言特定 AWS SDKs中使用此 API 的詳細資訊，請參閱下列內容：
+  [AWS 命令列界面 V2](https://docs.aws.amazon.com/goto/cli2/personalize-runtime-2018-05-22/GetRecommendations) 
+  [AWS 適用於 .NET V4 的 SDK](https://docs.aws.amazon.com/goto/DotNetSDKV4/personalize-runtime-2018-05-22/GetRecommendations) 
+  [AWS 適用於 C\$1\$1 的 SDK](https://docs.aws.amazon.com/goto/SdkForCpp/personalize-runtime-2018-05-22/GetRecommendations) 
+  [AWS 適用於 Go 的 SDK v2](https://docs.aws.amazon.com/goto/SdkForGoV2/personalize-runtime-2018-05-22/GetRecommendations) 
+  [AWS 適用於 Java V2 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaV2/personalize-runtime-2018-05-22/GetRecommendations) 
+  [AWS 適用於 JavaScript V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/personalize-runtime-2018-05-22/GetRecommendations) 
+  [AWS 適用於 Kotlin 的 SDK](https://docs.aws.amazon.com/goto/SdkForKotlin/personalize-runtime-2018-05-22/GetRecommendations) 
+  [AWS 適用於 PHP V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForPHPV3/personalize-runtime-2018-05-22/GetRecommendations) 
+  [AWS 適用於 Python 的 SDK](https://docs.aws.amazon.com/goto/boto3/personalize-runtime-2018-05-22/GetRecommendations) 
+  [AWS 適用於 Ruby V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForRubyV3/personalize-runtime-2018-05-22/GetRecommendations) 