/** * 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 PersonalizeEvents { namespace Model { /** */ class PutEventsRequest : public PersonalizeEventsRequest { public: AWS_PERSONALIZEEVENTS_API PutEventsRequest(); // 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 "PutEvents"; } AWS_PERSONALIZEEVENTS_API Aws::String SerializePayload() const override; /** *

The tracking ID for the event. The ID is generated by a call to the CreateEventTracker * API.

*/ inline const Aws::String& GetTrackingId() const{ return m_trackingId; } /** *

The tracking ID for the event. The ID is generated by a call to the CreateEventTracker * API.

*/ inline bool TrackingIdHasBeenSet() const { return m_trackingIdHasBeenSet; } /** *

The tracking ID for the event. The ID is generated by a call to the CreateEventTracker * API.

*/ inline void SetTrackingId(const Aws::String& value) { m_trackingIdHasBeenSet = true; m_trackingId = value; } /** *

The tracking ID for the event. The ID is generated by a call to the CreateEventTracker * API.

*/ inline void SetTrackingId(Aws::String&& value) { m_trackingIdHasBeenSet = true; m_trackingId = std::move(value); } /** *

The tracking ID for the event. The ID is generated by a call to the CreateEventTracker * API.

*/ inline void SetTrackingId(const char* value) { m_trackingIdHasBeenSet = true; m_trackingId.assign(value); } /** *

The tracking ID for the event. The ID is generated by a call to the CreateEventTracker * API.

*/ inline PutEventsRequest& WithTrackingId(const Aws::String& value) { SetTrackingId(value); return *this;} /** *

The tracking ID for the event. The ID is generated by a call to the CreateEventTracker * API.

*/ inline PutEventsRequest& WithTrackingId(Aws::String&& value) { SetTrackingId(std::move(value)); return *this;} /** *

The tracking ID for the event. The ID is generated by a call to the CreateEventTracker * API.

*/ inline PutEventsRequest& WithTrackingId(const char* value) { SetTrackingId(value); return *this;} /** *

The user associated with the event.

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

The user associated with the event.

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

The user associated with the event.

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

The user associated with the event.

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

The user associated with the event.

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

The user associated with the event.

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

The user associated with the event.

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

The user associated with the event.

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

The session ID associated with the user's visit. Your application generates * the sessionId when a user first visits your website or uses your application. * Amazon Personalize uses the sessionId to associate events with the user before * they log in. For more information, see Recording * Events.

*/ inline const Aws::String& GetSessionId() const{ return m_sessionId; } /** *

The session ID associated with the user's visit. Your application generates * the sessionId when a user first visits your website or uses your application. * Amazon Personalize uses the sessionId to associate events with the user before * they log in. For more information, see Recording * Events.

*/ inline bool SessionIdHasBeenSet() const { return m_sessionIdHasBeenSet; } /** *

The session ID associated with the user's visit. Your application generates * the sessionId when a user first visits your website or uses your application. * Amazon Personalize uses the sessionId to associate events with the user before * they log in. For more information, see Recording * Events.

*/ inline void SetSessionId(const Aws::String& value) { m_sessionIdHasBeenSet = true; m_sessionId = value; } /** *

The session ID associated with the user's visit. Your application generates * the sessionId when a user first visits your website or uses your application. * Amazon Personalize uses the sessionId to associate events with the user before * they log in. For more information, see Recording * Events.

*/ inline void SetSessionId(Aws::String&& value) { m_sessionIdHasBeenSet = true; m_sessionId = std::move(value); } /** *

The session ID associated with the user's visit. Your application generates * the sessionId when a user first visits your website or uses your application. * Amazon Personalize uses the sessionId to associate events with the user before * they log in. For more information, see Recording * Events.

*/ inline void SetSessionId(const char* value) { m_sessionIdHasBeenSet = true; m_sessionId.assign(value); } /** *

The session ID associated with the user's visit. Your application generates * the sessionId when a user first visits your website or uses your application. * Amazon Personalize uses the sessionId to associate events with the user before * they log in. For more information, see Recording * Events.

*/ inline PutEventsRequest& WithSessionId(const Aws::String& value) { SetSessionId(value); return *this;} /** *

The session ID associated with the user's visit. Your application generates * the sessionId when a user first visits your website or uses your application. * Amazon Personalize uses the sessionId to associate events with the user before * they log in. For more information, see Recording * Events.

*/ inline PutEventsRequest& WithSessionId(Aws::String&& value) { SetSessionId(std::move(value)); return *this;} /** *

The session ID associated with the user's visit. Your application generates * the sessionId when a user first visits your website or uses your application. * Amazon Personalize uses the sessionId to associate events with the user before * they log in. For more information, see Recording * Events.

*/ inline PutEventsRequest& WithSessionId(const char* value) { SetSessionId(value); return *this;} /** *

A list of event data from the session.

*/ inline const Aws::Vector& GetEventList() const{ return m_eventList; } /** *

A list of event data from the session.

*/ inline bool EventListHasBeenSet() const { return m_eventListHasBeenSet; } /** *

A list of event data from the session.

*/ inline void SetEventList(const Aws::Vector& value) { m_eventListHasBeenSet = true; m_eventList = value; } /** *

A list of event data from the session.

*/ inline void SetEventList(Aws::Vector&& value) { m_eventListHasBeenSet = true; m_eventList = std::move(value); } /** *

A list of event data from the session.

*/ inline PutEventsRequest& WithEventList(const Aws::Vector& value) { SetEventList(value); return *this;} /** *

A list of event data from the session.

*/ inline PutEventsRequest& WithEventList(Aws::Vector&& value) { SetEventList(std::move(value)); return *this;} /** *

A list of event data from the session.

*/ inline PutEventsRequest& AddEventList(const Event& value) { m_eventListHasBeenSet = true; m_eventList.push_back(value); return *this; } /** *

A list of event data from the session.

*/ inline PutEventsRequest& AddEventList(Event&& value) { m_eventListHasBeenSet = true; m_eventList.push_back(std::move(value)); return *this; } private: Aws::String m_trackingId; bool m_trackingIdHasBeenSet = false; Aws::String m_userId; bool m_userIdHasBeenSet = false; Aws::String m_sessionId; bool m_sessionIdHasBeenSet = false; Aws::Vector m_eventList; bool m_eventListHasBeenSet = false; }; } // namespace Model } // namespace PersonalizeEvents } // namespace Aws