/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents user interaction event information sent using the
* PutEvents
API.See Also:
AWS
* API Reference
An ID associated with the event. If an event ID is not provided, Amazon * Personalize generates a unique ID for the event. An event ID is not used as an * input to the model. Amazon Personalize uses the event ID to distinquish unique * events. Any subsequent events after the first with the same event ID are not * used in model training.
*/ inline const Aws::String& GetEventId() const{ return m_eventId; } /** *An ID associated with the event. If an event ID is not provided, Amazon * Personalize generates a unique ID for the event. An event ID is not used as an * input to the model. Amazon Personalize uses the event ID to distinquish unique * events. Any subsequent events after the first with the same event ID are not * used in model training.
*/ inline bool EventIdHasBeenSet() const { return m_eventIdHasBeenSet; } /** *An ID associated with the event. If an event ID is not provided, Amazon * Personalize generates a unique ID for the event. An event ID is not used as an * input to the model. Amazon Personalize uses the event ID to distinquish unique * events. Any subsequent events after the first with the same event ID are not * used in model training.
*/ inline void SetEventId(const Aws::String& value) { m_eventIdHasBeenSet = true; m_eventId = value; } /** *An ID associated with the event. If an event ID is not provided, Amazon * Personalize generates a unique ID for the event. An event ID is not used as an * input to the model. Amazon Personalize uses the event ID to distinquish unique * events. Any subsequent events after the first with the same event ID are not * used in model training.
*/ inline void SetEventId(Aws::String&& value) { m_eventIdHasBeenSet = true; m_eventId = std::move(value); } /** *An ID associated with the event. If an event ID is not provided, Amazon * Personalize generates a unique ID for the event. An event ID is not used as an * input to the model. Amazon Personalize uses the event ID to distinquish unique * events. Any subsequent events after the first with the same event ID are not * used in model training.
*/ inline void SetEventId(const char* value) { m_eventIdHasBeenSet = true; m_eventId.assign(value); } /** *An ID associated with the event. If an event ID is not provided, Amazon * Personalize generates a unique ID for the event. An event ID is not used as an * input to the model. Amazon Personalize uses the event ID to distinquish unique * events. Any subsequent events after the first with the same event ID are not * used in model training.
*/ inline Event& WithEventId(const Aws::String& value) { SetEventId(value); return *this;} /** *An ID associated with the event. If an event ID is not provided, Amazon * Personalize generates a unique ID for the event. An event ID is not used as an * input to the model. Amazon Personalize uses the event ID to distinquish unique * events. Any subsequent events after the first with the same event ID are not * used in model training.
*/ inline Event& WithEventId(Aws::String&& value) { SetEventId(std::move(value)); return *this;} /** *An ID associated with the event. If an event ID is not provided, Amazon * Personalize generates a unique ID for the event. An event ID is not used as an * input to the model. Amazon Personalize uses the event ID to distinquish unique * events. Any subsequent events after the first with the same event ID are not * used in model training.
*/ inline Event& WithEventId(const char* value) { SetEventId(value); return *this;} /** *The type of event, such as click or download. This property corresponds to
* the EVENT_TYPE
field of your Interactions schema and depends on the
* types of events you are tracking.
The type of event, such as click or download. This property corresponds to
* the EVENT_TYPE
field of your Interactions schema and depends on the
* types of events you are tracking.
The type of event, such as click or download. This property corresponds to
* the EVENT_TYPE
field of your Interactions schema and depends on the
* types of events you are tracking.
The type of event, such as click or download. This property corresponds to
* the EVENT_TYPE
field of your Interactions schema and depends on the
* types of events you are tracking.
The type of event, such as click or download. This property corresponds to
* the EVENT_TYPE
field of your Interactions schema and depends on the
* types of events you are tracking.
The type of event, such as click or download. This property corresponds to
* the EVENT_TYPE
field of your Interactions schema and depends on the
* types of events you are tracking.
The type of event, such as click or download. This property corresponds to
* the EVENT_TYPE
field of your Interactions schema and depends on the
* types of events you are tracking.
The type of event, such as click or download. This property corresponds to
* the EVENT_TYPE
field of your Interactions schema and depends on the
* types of events you are tracking.
The event value that corresponds to the EVENT_VALUE
field of the
* Interactions schema.
The event value that corresponds to the EVENT_VALUE
field of the
* Interactions schema.
The event value that corresponds to the EVENT_VALUE
field of the
* Interactions schema.
The event value that corresponds to the EVENT_VALUE
field of the
* Interactions schema.
The item ID key that corresponds to the ITEM_ID
field of the
* Interactions schema.
The item ID key that corresponds to the ITEM_ID
field of the
* Interactions schema.
The item ID key that corresponds to the ITEM_ID
field of the
* Interactions schema.
The item ID key that corresponds to the ITEM_ID
field of the
* Interactions schema.
The item ID key that corresponds to the ITEM_ID
field of the
* Interactions schema.
The item ID key that corresponds to the ITEM_ID
field of the
* Interactions schema.
The item ID key that corresponds to the ITEM_ID
field of the
* Interactions schema.
The item ID key that corresponds to the ITEM_ID
field of the
* Interactions schema.
A string map of event-specific data that you might choose to record. For
* example, if a user rates a movie on your site, other than movie ID
* (itemId
) and rating (eventValue
) , you might also send
* the number of movie ratings made by the user.
Each item in the map * consists of a key-value pair. For example,
{"numberOfRatings":
* "12"}
The keys use camel case names that match the fields in the
* Interactions schema. In the above example, the numberOfRatings
* would match the 'NUMBER_OF_RATINGS' field defined in the Interactions
* schema.
A string map of event-specific data that you might choose to record. For
* example, if a user rates a movie on your site, other than movie ID
* (itemId
) and rating (eventValue
) , you might also send
* the number of movie ratings made by the user.
Each item in the map * consists of a key-value pair. For example,
{"numberOfRatings":
* "12"}
The keys use camel case names that match the fields in the
* Interactions schema. In the above example, the numberOfRatings
* would match the 'NUMBER_OF_RATINGS' field defined in the Interactions
* schema.
A string map of event-specific data that you might choose to record. For
* example, if a user rates a movie on your site, other than movie ID
* (itemId
) and rating (eventValue
) , you might also send
* the number of movie ratings made by the user.
Each item in the map * consists of a key-value pair. For example,
{"numberOfRatings":
* "12"}
The keys use camel case names that match the fields in the
* Interactions schema. In the above example, the numberOfRatings
* would match the 'NUMBER_OF_RATINGS' field defined in the Interactions
* schema.
A string map of event-specific data that you might choose to record. For
* example, if a user rates a movie on your site, other than movie ID
* (itemId
) and rating (eventValue
) , you might also send
* the number of movie ratings made by the user.
Each item in the map * consists of a key-value pair. For example,
{"numberOfRatings":
* "12"}
The keys use camel case names that match the fields in the
* Interactions schema. In the above example, the numberOfRatings
* would match the 'NUMBER_OF_RATINGS' field defined in the Interactions
* schema.
A string map of event-specific data that you might choose to record. For
* example, if a user rates a movie on your site, other than movie ID
* (itemId
) and rating (eventValue
) , you might also send
* the number of movie ratings made by the user.
Each item in the map * consists of a key-value pair. For example,
{"numberOfRatings":
* "12"}
The keys use camel case names that match the fields in the
* Interactions schema. In the above example, the numberOfRatings
* would match the 'NUMBER_OF_RATINGS' field defined in the Interactions
* schema.
A string map of event-specific data that you might choose to record. For
* example, if a user rates a movie on your site, other than movie ID
* (itemId
) and rating (eventValue
) , you might also send
* the number of movie ratings made by the user.
Each item in the map * consists of a key-value pair. For example,
{"numberOfRatings":
* "12"}
The keys use camel case names that match the fields in the
* Interactions schema. In the above example, the numberOfRatings
* would match the 'NUMBER_OF_RATINGS' field defined in the Interactions
* schema.
A string map of event-specific data that you might choose to record. For
* example, if a user rates a movie on your site, other than movie ID
* (itemId
) and rating (eventValue
) , you might also send
* the number of movie ratings made by the user.
Each item in the map * consists of a key-value pair. For example,
{"numberOfRatings":
* "12"}
The keys use camel case names that match the fields in the
* Interactions schema. In the above example, the numberOfRatings
* would match the 'NUMBER_OF_RATINGS' field defined in the Interactions
* schema.
A string map of event-specific data that you might choose to record. For
* example, if a user rates a movie on your site, other than movie ID
* (itemId
) and rating (eventValue
) , you might also send
* the number of movie ratings made by the user.
Each item in the map * consists of a key-value pair. For example,
{"numberOfRatings":
* "12"}
The keys use camel case names that match the fields in the
* Interactions schema. In the above example, the numberOfRatings
* would match the 'NUMBER_OF_RATINGS' field defined in the Interactions
* schema.
The timestamp (in Unix time) on the client side when the event occurred.
*/ inline const Aws::Utils::DateTime& GetSentAt() const{ return m_sentAt; } /** *The timestamp (in Unix time) on the client side when the event occurred.
*/ inline bool SentAtHasBeenSet() const { return m_sentAtHasBeenSet; } /** *The timestamp (in Unix time) on the client side when the event occurred.
*/ inline void SetSentAt(const Aws::Utils::DateTime& value) { m_sentAtHasBeenSet = true; m_sentAt = value; } /** *The timestamp (in Unix time) on the client side when the event occurred.
*/ inline void SetSentAt(Aws::Utils::DateTime&& value) { m_sentAtHasBeenSet = true; m_sentAt = std::move(value); } /** *The timestamp (in Unix time) on the client side when the event occurred.
*/ inline Event& WithSentAt(const Aws::Utils::DateTime& value) { SetSentAt(value); return *this;} /** *The timestamp (in Unix time) on the client side when the event occurred.
*/ inline Event& WithSentAt(Aws::Utils::DateTime&& value) { SetSentAt(std::move(value)); return *this;} /** *The ID of the list of recommendations that contains the item the user
* interacted with. Provide a recommendationId
to have Amazon
* Personalize implicitly record the recommendations you show your user as
* impressions data. Or provide a recommendationId
if you use a metric
* attribution to measure the impact of recommendations.
For more * information on recording impressions data, see Recording * impressions data. For more information on creating a metric attribution see * Measuring * impact of recommendations.
*/ inline const Aws::String& GetRecommendationId() const{ return m_recommendationId; } /** *The ID of the list of recommendations that contains the item the user
* interacted with. Provide a recommendationId
to have Amazon
* Personalize implicitly record the recommendations you show your user as
* impressions data. Or provide a recommendationId
if you use a metric
* attribution to measure the impact of recommendations.
For more * information on recording impressions data, see Recording * impressions data. For more information on creating a metric attribution see * Measuring * impact of recommendations.
*/ inline bool RecommendationIdHasBeenSet() const { return m_recommendationIdHasBeenSet; } /** *The ID of the list of recommendations that contains the item the user
* interacted with. Provide a recommendationId
to have Amazon
* Personalize implicitly record the recommendations you show your user as
* impressions data. Or provide a recommendationId
if you use a metric
* attribution to measure the impact of recommendations.
For more * information on recording impressions data, see Recording * impressions data. For more information on creating a metric attribution see * Measuring * impact of recommendations.
*/ inline void SetRecommendationId(const Aws::String& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = value; } /** *The ID of the list of recommendations that contains the item the user
* interacted with. Provide a recommendationId
to have Amazon
* Personalize implicitly record the recommendations you show your user as
* impressions data. Or provide a recommendationId
if you use a metric
* attribution to measure the impact of recommendations.
For more * information on recording impressions data, see Recording * impressions data. For more information on creating a metric attribution see * Measuring * impact of recommendations.
*/ inline void SetRecommendationId(Aws::String&& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = std::move(value); } /** *The ID of the list of recommendations that contains the item the user
* interacted with. Provide a recommendationId
to have Amazon
* Personalize implicitly record the recommendations you show your user as
* impressions data. Or provide a recommendationId
if you use a metric
* attribution to measure the impact of recommendations.
For more * information on recording impressions data, see Recording * impressions data. For more information on creating a metric attribution see * Measuring * impact of recommendations.
*/ inline void SetRecommendationId(const char* value) { m_recommendationIdHasBeenSet = true; m_recommendationId.assign(value); } /** *The ID of the list of recommendations that contains the item the user
* interacted with. Provide a recommendationId
to have Amazon
* Personalize implicitly record the recommendations you show your user as
* impressions data. Or provide a recommendationId
if you use a metric
* attribution to measure the impact of recommendations.
For more * information on recording impressions data, see Recording * impressions data. For more information on creating a metric attribution see * Measuring * impact of recommendations.
*/ inline Event& WithRecommendationId(const Aws::String& value) { SetRecommendationId(value); return *this;} /** *The ID of the list of recommendations that contains the item the user
* interacted with. Provide a recommendationId
to have Amazon
* Personalize implicitly record the recommendations you show your user as
* impressions data. Or provide a recommendationId
if you use a metric
* attribution to measure the impact of recommendations.
For more * information on recording impressions data, see Recording * impressions data. For more information on creating a metric attribution see * Measuring * impact of recommendations.
*/ inline Event& WithRecommendationId(Aws::String&& value) { SetRecommendationId(std::move(value)); return *this;} /** *The ID of the list of recommendations that contains the item the user
* interacted with. Provide a recommendationId
to have Amazon
* Personalize implicitly record the recommendations you show your user as
* impressions data. Or provide a recommendationId
if you use a metric
* attribution to measure the impact of recommendations.
For more * information on recording impressions data, see Recording * impressions data. For more information on creating a metric attribution see * Measuring * impact of recommendations.
*/ inline Event& WithRecommendationId(const char* value) { SetRecommendationId(value); return *this;} /** *A list of item IDs that represents the sequence of items you have shown the
* user. For example, ["itemId1", "itemId2", "itemId3"]
. Provide a
* list of items to manually record impressions data for an event. For more
* information on recording impressions data, see Recording
* impressions data.
A list of item IDs that represents the sequence of items you have shown the
* user. For example, ["itemId1", "itemId2", "itemId3"]
. Provide a
* list of items to manually record impressions data for an event. For more
* information on recording impressions data, see Recording
* impressions data.
A list of item IDs that represents the sequence of items you have shown the
* user. For example, ["itemId1", "itemId2", "itemId3"]
. Provide a
* list of items to manually record impressions data for an event. For more
* information on recording impressions data, see Recording
* impressions data.
A list of item IDs that represents the sequence of items you have shown the
* user. For example, ["itemId1", "itemId2", "itemId3"]
. Provide a
* list of items to manually record impressions data for an event. For more
* information on recording impressions data, see Recording
* impressions data.
A list of item IDs that represents the sequence of items you have shown the
* user. For example, ["itemId1", "itemId2", "itemId3"]
. Provide a
* list of items to manually record impressions data for an event. For more
* information on recording impressions data, see Recording
* impressions data.
A list of item IDs that represents the sequence of items you have shown the
* user. For example, ["itemId1", "itemId2", "itemId3"]
. Provide a
* list of items to manually record impressions data for an event. For more
* information on recording impressions data, see Recording
* impressions data.
A list of item IDs that represents the sequence of items you have shown the
* user. For example, ["itemId1", "itemId2", "itemId3"]
. Provide a
* list of items to manually record impressions data for an event. For more
* information on recording impressions data, see Recording
* impressions data.
A list of item IDs that represents the sequence of items you have shown the
* user. For example, ["itemId1", "itemId2", "itemId3"]
. Provide a
* list of items to manually record impressions data for an event. For more
* information on recording impressions data, see Recording
* impressions data.
A list of item IDs that represents the sequence of items you have shown the
* user. For example, ["itemId1", "itemId2", "itemId3"]
. Provide a
* list of items to manually record impressions data for an event. For more
* information on recording impressions data, see Recording
* impressions data.
Contains information about the metric attribution associated with an event. * For more information about metric attributions, see Measuring * impact of recommendations.
*/ inline const MetricAttribution& GetMetricAttribution() const{ return m_metricAttribution; } /** *Contains information about the metric attribution associated with an event. * For more information about metric attributions, see Measuring * impact of recommendations.
*/ inline bool MetricAttributionHasBeenSet() const { return m_metricAttributionHasBeenSet; } /** *Contains information about the metric attribution associated with an event. * For more information about metric attributions, see Measuring * impact of recommendations.
*/ inline void SetMetricAttribution(const MetricAttribution& value) { m_metricAttributionHasBeenSet = true; m_metricAttribution = value; } /** *Contains information about the metric attribution associated with an event. * For more information about metric attributions, see Measuring * impact of recommendations.
*/ inline void SetMetricAttribution(MetricAttribution&& value) { m_metricAttributionHasBeenSet = true; m_metricAttribution = std::move(value); } /** *Contains information about the metric attribution associated with an event. * For more information about metric attributions, see Measuring * impact of recommendations.
*/ inline Event& WithMetricAttribution(const MetricAttribution& value) { SetMetricAttribution(value); return *this;} /** *Contains information about the metric attribution associated with an event. * For more information about metric attributions, see Measuring * impact of recommendations.
*/ inline Event& WithMetricAttribution(MetricAttribution&& value) { SetMetricAttribution(std::move(value)); return *this;} private: Aws::String m_eventId; bool m_eventIdHasBeenSet = false; Aws::String m_eventType; bool m_eventTypeHasBeenSet = false; double m_eventValue; bool m_eventValueHasBeenSet = false; Aws::String m_itemId; bool m_itemIdHasBeenSet = false; Aws::String m_properties; bool m_propertiesHasBeenSet = false; Aws::Utils::DateTime m_sentAt; bool m_sentAtHasBeenSet = false; Aws::String m_recommendationId; bool m_recommendationIdHasBeenSet = false; Aws::Vector