/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace PersonalizeRuntime { namespace Model { /** */ class GetPersonalizedRankingRequest : public PersonalizeRuntimeRequest { public: AWS_PERSONALIZERUNTIME_API GetPersonalizedRankingRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "GetPersonalizedRanking"; } AWS_PERSONALIZERUNTIME_API Aws::String SerializePayload() const override; /** *

The Amazon Resource Name (ARN) of the campaign to use for generating the * personalized ranking.

*/ inline const Aws::String& GetCampaignArn() const{ return m_campaignArn; } /** *

The Amazon Resource Name (ARN) of the campaign to use for generating the * personalized ranking.

*/ inline bool CampaignArnHasBeenSet() const { return m_campaignArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the campaign to use for generating the * personalized ranking.

*/ inline void SetCampaignArn(const Aws::String& value) { m_campaignArnHasBeenSet = true; m_campaignArn = value; } /** *

The Amazon Resource Name (ARN) of the campaign to use for generating the * personalized ranking.

*/ inline void SetCampaignArn(Aws::String&& value) { m_campaignArnHasBeenSet = true; m_campaignArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the campaign to use for generating the * personalized ranking.

*/ inline void SetCampaignArn(const char* value) { m_campaignArnHasBeenSet = true; m_campaignArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the campaign to use for generating the * personalized ranking.

*/ inline GetPersonalizedRankingRequest& WithCampaignArn(const Aws::String& value) { SetCampaignArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the campaign to use for generating the * personalized ranking.

*/ inline GetPersonalizedRankingRequest& WithCampaignArn(Aws::String&& value) { SetCampaignArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the campaign to use for generating the * personalized ranking.

*/ inline GetPersonalizedRankingRequest& WithCampaignArn(const char* value) { SetCampaignArn(value); return *this;} /** *

A list of items (by itemId) to rank. If an item was not included * in the training dataset, the item is appended to the end of the reranked list. * The maximum is 500.

*/ inline const Aws::Vector& GetInputList() const{ return m_inputList; } /** *

A list of items (by itemId) to rank. If an item was not included * in the training dataset, the item is appended to the end of the reranked list. * The maximum is 500.

*/ inline bool InputListHasBeenSet() const { return m_inputListHasBeenSet; } /** *

A list of items (by itemId) to rank. If an item was not included * in the training dataset, the item is appended to the end of the reranked list. * The maximum is 500.

*/ inline void SetInputList(const Aws::Vector& value) { m_inputListHasBeenSet = true; m_inputList = value; } /** *

A list of items (by itemId) to rank. If an item was not included * in the training dataset, the item is appended to the end of the reranked list. * The maximum is 500.

*/ inline void SetInputList(Aws::Vector&& value) { m_inputListHasBeenSet = true; m_inputList = std::move(value); } /** *

A list of items (by itemId) to rank. If an item was not included * in the training dataset, the item is appended to the end of the reranked list. * The maximum is 500.

*/ inline GetPersonalizedRankingRequest& WithInputList(const Aws::Vector& value) { SetInputList(value); return *this;} /** *

A list of items (by itemId) to rank. If an item was not included * in the training dataset, the item is appended to the end of the reranked list. * The maximum is 500.

*/ inline GetPersonalizedRankingRequest& WithInputList(Aws::Vector&& value) { SetInputList(std::move(value)); return *this;} /** *

A list of items (by itemId) to rank. If an item was not included * in the training dataset, the item is appended to the end of the reranked list. * The maximum is 500.

*/ inline GetPersonalizedRankingRequest& AddInputList(const Aws::String& value) { m_inputListHasBeenSet = true; m_inputList.push_back(value); return *this; } /** *

A list of items (by itemId) to rank. If an item was not included * in the training dataset, the item is appended to the end of the reranked list. * The maximum is 500.

*/ inline GetPersonalizedRankingRequest& AddInputList(Aws::String&& value) { m_inputListHasBeenSet = true; m_inputList.push_back(std::move(value)); return *this; } /** *

A list of items (by itemId) to rank. If an item was not included * in the training dataset, the item is appended to the end of the reranked list. * The maximum is 500.

*/ inline GetPersonalizedRankingRequest& AddInputList(const char* value) { m_inputListHasBeenSet = true; m_inputList.push_back(value); return *this; } /** *

The user for which you want the campaign to provide a personalized * ranking.

*/ inline const Aws::String& GetUserId() const{ return m_userId; } /** *

The user for which you want the campaign to provide a personalized * ranking.

*/ inline bool UserIdHasBeenSet() const { return m_userIdHasBeenSet; } /** *

The user for which you want the campaign to provide a personalized * ranking.

*/ inline void SetUserId(const Aws::String& value) { m_userIdHasBeenSet = true; m_userId = value; } /** *

The user for which you want the campaign to provide a personalized * ranking.

*/ inline void SetUserId(Aws::String&& value) { m_userIdHasBeenSet = true; m_userId = std::move(value); } /** *

The user for which you want the campaign to provide a personalized * ranking.

*/ inline void SetUserId(const char* value) { m_userIdHasBeenSet = true; m_userId.assign(value); } /** *

The user for which you want the campaign to provide a personalized * ranking.

*/ inline GetPersonalizedRankingRequest& WithUserId(const Aws::String& value) { SetUserId(value); return *this;} /** *

The user for which you want the campaign to provide a personalized * ranking.

*/ inline GetPersonalizedRankingRequest& WithUserId(Aws::String&& value) { SetUserId(std::move(value)); return *this;} /** *

The user for which you want the campaign to provide a personalized * ranking.

*/ inline GetPersonalizedRankingRequest& WithUserId(const char* value) { SetUserId(value); return *this;} /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline const Aws::Map& GetContext() const{ return m_context; } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline bool ContextHasBeenSet() const { return m_contextHasBeenSet; } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline void SetContext(const Aws::Map& value) { m_contextHasBeenSet = true; m_context = value; } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline void SetContext(Aws::Map&& value) { m_contextHasBeenSet = true; m_context = std::move(value); } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline GetPersonalizedRankingRequest& WithContext(const Aws::Map& value) { SetContext(value); return *this;} /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline GetPersonalizedRankingRequest& WithContext(Aws::Map&& value) { SetContext(std::move(value)); return *this;} /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline GetPersonalizedRankingRequest& AddContext(const Aws::String& key, const Aws::String& value) { m_contextHasBeenSet = true; m_context.emplace(key, value); return *this; } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline GetPersonalizedRankingRequest& AddContext(Aws::String&& key, const Aws::String& value) { m_contextHasBeenSet = true; m_context.emplace(std::move(key), value); return *this; } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline GetPersonalizedRankingRequest& AddContext(const Aws::String& key, Aws::String&& value) { m_contextHasBeenSet = true; m_context.emplace(key, std::move(value)); return *this; } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline GetPersonalizedRankingRequest& AddContext(Aws::String&& key, Aws::String&& value) { m_contextHasBeenSet = true; m_context.emplace(std::move(key), std::move(value)); return *this; } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline GetPersonalizedRankingRequest& AddContext(const char* key, Aws::String&& value) { m_contextHasBeenSet = true; m_context.emplace(key, std::move(value)); return *this; } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline GetPersonalizedRankingRequest& AddContext(Aws::String&& key, const char* value) { m_contextHasBeenSet = true; m_context.emplace(std::move(key), value); return *this; } /** *

The contextual metadata to use when getting recommendations. Contextual * metadata includes any interaction information that might be relevant when * getting a user's recommendations, such as the user's current location or device * type.

*/ inline GetPersonalizedRankingRequest& AddContext(const char* key, const char* value) { m_contextHasBeenSet = true; m_context.emplace(key, value); return *this; } /** *

The Amazon Resource Name (ARN) of a filter you created to include items or * exclude items from recommendations for a given user. For more information, see * Filtering * Recommendations.

*/ inline const Aws::String& GetFilterArn() const{ return m_filterArn; } /** *

The Amazon Resource Name (ARN) of a filter you created to include items or * exclude items from recommendations for a given user. For more information, see * Filtering * Recommendations.

*/ inline bool FilterArnHasBeenSet() const { return m_filterArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of a filter you created to include items or * exclude items from recommendations for a given user. For more information, see * Filtering * Recommendations.

*/ inline void SetFilterArn(const Aws::String& value) { m_filterArnHasBeenSet = true; m_filterArn = value; } /** *

The Amazon Resource Name (ARN) of a filter you created to include items or * exclude items from recommendations for a given user. For more information, see * Filtering * Recommendations.

*/ inline void SetFilterArn(Aws::String&& value) { m_filterArnHasBeenSet = true; m_filterArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of a filter you created to include items or * exclude items from recommendations for a given user. For more information, see * Filtering * Recommendations.

*/ inline void SetFilterArn(const char* value) { m_filterArnHasBeenSet = true; m_filterArn.assign(value); } /** *

The Amazon Resource Name (ARN) of a filter you created to include items or * exclude items from recommendations for a given user. For more information, see * Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& WithFilterArn(const Aws::String& value) { SetFilterArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of a filter you created to include items or * exclude items from recommendations for a given user. For more information, see * Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& WithFilterArn(Aws::String&& value) { SetFilterArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of a filter you created to include items or * exclude items from recommendations for a given user. For more information, see * Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& WithFilterArn(const char* value) { SetFilterArn(value); return *this;} /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline const Aws::Map& GetFilterValues() const{ return m_filterValues; } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline bool FilterValuesHasBeenSet() const { return m_filterValuesHasBeenSet; } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline void SetFilterValues(const Aws::Map& value) { m_filterValuesHasBeenSet = true; m_filterValues = value; } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline void SetFilterValues(Aws::Map&& value) { m_filterValuesHasBeenSet = true; m_filterValues = std::move(value); } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& WithFilterValues(const Aws::Map& value) { SetFilterValues(value); return *this;} /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& WithFilterValues(Aws::Map&& value) { SetFilterValues(std::move(value)); return *this;} /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& AddFilterValues(const Aws::String& key, const Aws::String& value) { m_filterValuesHasBeenSet = true; m_filterValues.emplace(key, value); return *this; } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& AddFilterValues(Aws::String&& key, const Aws::String& value) { m_filterValuesHasBeenSet = true; m_filterValues.emplace(std::move(key), value); return *this; } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& AddFilterValues(const Aws::String& key, Aws::String&& value) { m_filterValuesHasBeenSet = true; m_filterValues.emplace(key, std::move(value)); return *this; } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& AddFilterValues(Aws::String&& key, Aws::String&& value) { m_filterValuesHasBeenSet = true; m_filterValues.emplace(std::move(key), std::move(value)); return *this; } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& AddFilterValues(const char* key, Aws::String&& value) { m_filterValuesHasBeenSet = true; m_filterValues.emplace(key, std::move(value)); return *this; } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& AddFilterValues(Aws::String&& key, const char* value) { m_filterValuesHasBeenSet = true; m_filterValues.emplace(std::move(key), value); return *this; } /** *

The values to use when filtering recommendations. For each placeholder * parameter in your filter expression, provide the parameter name (in matching * case) as a key and the filter value(s) as the corresponding value. Separate * multiple values for one parameter with a comma.

For filter expressions * that use an INCLUDE element to include items, you must provide * values for all parameters that are defined in the expression. For filters with * expressions that use an EXCLUDE element to exclude items, you can * omit the filter-values.In this case, Amazon Personalize doesn't use * that portion of the expression to filter recommendations.

For more * information, see Filtering * Recommendations.

*/ inline GetPersonalizedRankingRequest& AddFilterValues(const char* key, const char* value) { m_filterValuesHasBeenSet = true; m_filterValues.emplace(key, value); return *this; } private: Aws::String m_campaignArn; bool m_campaignArnHasBeenSet = false; Aws::Vector m_inputList; bool m_inputListHasBeenSet = false; Aws::String m_userId; bool m_userIdHasBeenSet = false; Aws::Map m_context; bool m_contextHasBeenSet = false; Aws::String m_filterArn; bool m_filterArnHasBeenSet = false; Aws::Map m_filterValues; bool m_filterValuesHasBeenSet = false; }; } // namespace Model } // namespace PersonalizeRuntime } // namespace Aws