AWS SDK for C++

AWS SDK for C++ Version 1.11.691

Loading...
Searching...
No Matches
StartEmailContactRequest.h
1
6#pragma once
7#include <aws/connect/ConnectRequest.h>
8#include <aws/connect/Connect_EXPORTS.h>
9#include <aws/connect/model/EmailAddressInfo.h>
10#include <aws/connect/model/EmailAttachment.h>
11#include <aws/connect/model/InboundAdditionalRecipients.h>
12#include <aws/connect/model/InboundEmailContent.h>
13#include <aws/connect/model/Reference.h>
14#include <aws/connect/model/SegmentAttributeValue.h>
15#include <aws/core/utils/UUID.h>
16#include <aws/core/utils/memory/stl/AWSMap.h>
17#include <aws/core/utils/memory/stl/AWSString.h>
18#include <aws/core/utils/memory/stl/AWSVector.h>
19
20#include <utility>
21
22namespace Aws {
23namespace Connect {
24namespace Model {
25
29 public:
30 AWS_CONNECT_API StartEmailContactRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "StartEmailContact"; }
37
38 AWS_CONNECT_API Aws::String SerializePayload() const override;
39
41
46 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
47 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
48 template <typename InstanceIdT = Aws::String>
49 void SetInstanceId(InstanceIdT&& value) {
50 m_instanceIdHasBeenSet = true;
51 m_instanceId = std::forward<InstanceIdT>(value);
52 }
53 template <typename InstanceIdT = Aws::String>
55 SetInstanceId(std::forward<InstanceIdT>(value));
56 return *this;
57 }
59
61
64 inline const EmailAddressInfo& GetFromEmailAddress() const { return m_fromEmailAddress; }
65 inline bool FromEmailAddressHasBeenSet() const { return m_fromEmailAddressHasBeenSet; }
66 template <typename FromEmailAddressT = EmailAddressInfo>
67 void SetFromEmailAddress(FromEmailAddressT&& value) {
68 m_fromEmailAddressHasBeenSet = true;
69 m_fromEmailAddress = std::forward<FromEmailAddressT>(value);
70 }
71 template <typename FromEmailAddressT = EmailAddressInfo>
72 StartEmailContactRequest& WithFromEmailAddress(FromEmailAddressT&& value) {
73 SetFromEmailAddress(std::forward<FromEmailAddressT>(value));
74 return *this;
75 }
77
79
82 inline const Aws::String& GetDestinationEmailAddress() const { return m_destinationEmailAddress; }
83 inline bool DestinationEmailAddressHasBeenSet() const { return m_destinationEmailAddressHasBeenSet; }
84 template <typename DestinationEmailAddressT = Aws::String>
85 void SetDestinationEmailAddress(DestinationEmailAddressT&& value) {
86 m_destinationEmailAddressHasBeenSet = true;
87 m_destinationEmailAddress = std::forward<DestinationEmailAddressT>(value);
88 }
89 template <typename DestinationEmailAddressT = Aws::String>
90 StartEmailContactRequest& WithDestinationEmailAddress(DestinationEmailAddressT&& value) {
91 SetDestinationEmailAddress(std::forward<DestinationEmailAddressT>(value));
92 return *this;
93 }
95
97
100 inline const Aws::String& GetDescription() const { return m_description; }
101 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
102 template <typename DescriptionT = Aws::String>
103 void SetDescription(DescriptionT&& value) {
104 m_descriptionHasBeenSet = true;
105 m_description = std::forward<DescriptionT>(value);
106 }
107 template <typename DescriptionT = Aws::String>
109 SetDescription(std::forward<DescriptionT>(value));
110 return *this;
111 }
113
115
123 inline const Aws::Map<Aws::String, Reference>& GetReferences() const { return m_references; }
124 inline bool ReferencesHasBeenSet() const { return m_referencesHasBeenSet; }
125 template <typename ReferencesT = Aws::Map<Aws::String, Reference>>
126 void SetReferences(ReferencesT&& value) {
127 m_referencesHasBeenSet = true;
128 m_references = std::forward<ReferencesT>(value);
129 }
130 template <typename ReferencesT = Aws::Map<Aws::String, Reference>>
132 SetReferences(std::forward<ReferencesT>(value));
133 return *this;
134 }
135 template <typename ReferencesKeyT = Aws::String, typename ReferencesValueT = Reference>
136 StartEmailContactRequest& AddReferences(ReferencesKeyT&& key, ReferencesValueT&& value) {
137 m_referencesHasBeenSet = true;
138 m_references.emplace(std::forward<ReferencesKeyT>(key), std::forward<ReferencesValueT>(value));
139 return *this;
140 }
142
144
148 inline const Aws::String& GetName() const { return m_name; }
149 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
150 template <typename NameT = Aws::String>
151 void SetName(NameT&& value) {
152 m_nameHasBeenSet = true;
153 m_name = std::forward<NameT>(value);
154 }
155 template <typename NameT = Aws::String>
157 SetName(std::forward<NameT>(value));
158 return *this;
159 }
161
163
166 inline const InboundEmailContent& GetEmailMessage() const { return m_emailMessage; }
167 inline bool EmailMessageHasBeenSet() const { return m_emailMessageHasBeenSet; }
168 template <typename EmailMessageT = InboundEmailContent>
169 void SetEmailMessage(EmailMessageT&& value) {
170 m_emailMessageHasBeenSet = true;
171 m_emailMessage = std::forward<EmailMessageT>(value);
172 }
173 template <typename EmailMessageT = InboundEmailContent>
175 SetEmailMessage(std::forward<EmailMessageT>(value));
176 return *this;
177 }
179
181
184 inline const InboundAdditionalRecipients& GetAdditionalRecipients() const { return m_additionalRecipients; }
185 inline bool AdditionalRecipientsHasBeenSet() const { return m_additionalRecipientsHasBeenSet; }
186 template <typename AdditionalRecipientsT = InboundAdditionalRecipients>
187 void SetAdditionalRecipients(AdditionalRecipientsT&& value) {
188 m_additionalRecipientsHasBeenSet = true;
189 m_additionalRecipients = std::forward<AdditionalRecipientsT>(value);
190 }
191 template <typename AdditionalRecipientsT = InboundAdditionalRecipients>
192 StartEmailContactRequest& WithAdditionalRecipients(AdditionalRecipientsT&& value) {
193 SetAdditionalRecipients(std::forward<AdditionalRecipientsT>(value));
194 return *this;
195 }
197
199
202 inline const Aws::Vector<EmailAttachment>& GetAttachments() const { return m_attachments; }
203 inline bool AttachmentsHasBeenSet() const { return m_attachmentsHasBeenSet; }
204 template <typename AttachmentsT = Aws::Vector<EmailAttachment>>
205 void SetAttachments(AttachmentsT&& value) {
206 m_attachmentsHasBeenSet = true;
207 m_attachments = std::forward<AttachmentsT>(value);
208 }
209 template <typename AttachmentsT = Aws::Vector<EmailAttachment>>
211 SetAttachments(std::forward<AttachmentsT>(value));
212 return *this;
213 }
214 template <typename AttachmentsT = EmailAttachment>
216 m_attachmentsHasBeenSet = true;
217 m_attachments.emplace_back(std::forward<AttachmentsT>(value));
218 return *this;
219 }
221
223
232 inline const Aws::String& GetContactFlowId() const { return m_contactFlowId; }
233 inline bool ContactFlowIdHasBeenSet() const { return m_contactFlowIdHasBeenSet; }
234 template <typename ContactFlowIdT = Aws::String>
235 void SetContactFlowId(ContactFlowIdT&& value) {
236 m_contactFlowIdHasBeenSet = true;
237 m_contactFlowId = std::forward<ContactFlowIdT>(value);
238 }
239 template <typename ContactFlowIdT = Aws::String>
241 SetContactFlowId(std::forward<ContactFlowIdT>(value));
242 return *this;
243 }
245
247
255 inline const Aws::String& GetRelatedContactId() const { return m_relatedContactId; }
256 inline bool RelatedContactIdHasBeenSet() const { return m_relatedContactIdHasBeenSet; }
257 template <typename RelatedContactIdT = Aws::String>
258 void SetRelatedContactId(RelatedContactIdT&& value) {
259 m_relatedContactIdHasBeenSet = true;
260 m_relatedContactId = std::forward<RelatedContactIdT>(value);
261 }
262 template <typename RelatedContactIdT = Aws::String>
263 StartEmailContactRequest& WithRelatedContactId(RelatedContactIdT&& value) {
264 SetRelatedContactId(std::forward<RelatedContactIdT>(value));
265 return *this;
266 }
268
270
277 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
278 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
279 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
280 void SetAttributes(AttributesT&& value) {
281 m_attributesHasBeenSet = true;
282 m_attributes = std::forward<AttributesT>(value);
283 }
284 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
286 SetAttributes(std::forward<AttributesT>(value));
287 return *this;
288 }
289 template <typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
290 StartEmailContactRequest& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
291 m_attributesHasBeenSet = true;
292 m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value));
293 return *this;
294 }
296
298
309 inline const Aws::Map<Aws::String, SegmentAttributeValue>& GetSegmentAttributes() const { return m_segmentAttributes; }
310 inline bool SegmentAttributesHasBeenSet() const { return m_segmentAttributesHasBeenSet; }
311 template <typename SegmentAttributesT = Aws::Map<Aws::String, SegmentAttributeValue>>
312 void SetSegmentAttributes(SegmentAttributesT&& value) {
313 m_segmentAttributesHasBeenSet = true;
314 m_segmentAttributes = std::forward<SegmentAttributesT>(value);
315 }
316 template <typename SegmentAttributesT = Aws::Map<Aws::String, SegmentAttributeValue>>
317 StartEmailContactRequest& WithSegmentAttributes(SegmentAttributesT&& value) {
318 SetSegmentAttributes(std::forward<SegmentAttributesT>(value));
319 return *this;
320 }
321 template <typename SegmentAttributesKeyT = Aws::String, typename SegmentAttributesValueT = SegmentAttributeValue>
322 StartEmailContactRequest& AddSegmentAttributes(SegmentAttributesKeyT&& key, SegmentAttributesValueT&& value) {
323 m_segmentAttributesHasBeenSet = true;
324 m_segmentAttributes.emplace(std::forward<SegmentAttributesKeyT>(key), std::forward<SegmentAttributesValueT>(value));
325 return *this;
326 }
328
330
337 inline const Aws::String& GetClientToken() const { return m_clientToken; }
338 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
339 template <typename ClientTokenT = Aws::String>
340 void SetClientToken(ClientTokenT&& value) {
341 m_clientTokenHasBeenSet = true;
342 m_clientToken = std::forward<ClientTokenT>(value);
343 }
344 template <typename ClientTokenT = Aws::String>
346 SetClientToken(std::forward<ClientTokenT>(value));
347 return *this;
348 }
350 private:
351 Aws::String m_instanceId;
352 bool m_instanceIdHasBeenSet = false;
353
354 EmailAddressInfo m_fromEmailAddress;
355 bool m_fromEmailAddressHasBeenSet = false;
356
357 Aws::String m_destinationEmailAddress;
358 bool m_destinationEmailAddressHasBeenSet = false;
359
360 Aws::String m_description;
361 bool m_descriptionHasBeenSet = false;
362
364 bool m_referencesHasBeenSet = false;
365
366 Aws::String m_name;
367 bool m_nameHasBeenSet = false;
368
369 InboundEmailContent m_emailMessage;
370 bool m_emailMessageHasBeenSet = false;
371
372 InboundAdditionalRecipients m_additionalRecipients;
373 bool m_additionalRecipientsHasBeenSet = false;
374
375 Aws::Vector<EmailAttachment> m_attachments;
376 bool m_attachmentsHasBeenSet = false;
377
378 Aws::String m_contactFlowId;
379 bool m_contactFlowIdHasBeenSet = false;
380
381 Aws::String m_relatedContactId;
382 bool m_relatedContactIdHasBeenSet = false;
383
385 bool m_attributesHasBeenSet = false;
386
388 bool m_segmentAttributesHasBeenSet = false;
389
391 bool m_clientTokenHasBeenSet = true;
392};
393
394} // namespace Model
395} // namespace Connect
396} // namespace Aws
virtual const char * GetServiceRequestName() const override
StartEmailContactRequest & AddSegmentAttributes(SegmentAttributesKeyT &&key, SegmentAttributesValueT &&value)
StartEmailContactRequest & WithReferences(ReferencesT &&value)
void SetDestinationEmailAddress(DestinationEmailAddressT &&value)
StartEmailContactRequest & WithSegmentAttributes(SegmentAttributesT &&value)
StartEmailContactRequest & WithAttachments(AttachmentsT &&value)
StartEmailContactRequest & WithName(NameT &&value)
AWS_CONNECT_API StartEmailContactRequest()=default
const Aws::Map< Aws::String, Reference > & GetReferences() const
void SetAdditionalRecipients(AdditionalRecipientsT &&value)
StartEmailContactRequest & WithFromEmailAddress(FromEmailAddressT &&value)
const Aws::Map< Aws::String, SegmentAttributeValue > & GetSegmentAttributes() const
StartEmailContactRequest & WithAdditionalRecipients(AdditionalRecipientsT &&value)
StartEmailContactRequest & AddReferences(ReferencesKeyT &&key, ReferencesValueT &&value)
StartEmailContactRequest & WithClientToken(ClientTokenT &&value)
StartEmailContactRequest & WithAttributes(AttributesT &&value)
StartEmailContactRequest & WithInstanceId(InstanceIdT &&value)
const Aws::Vector< EmailAttachment > & GetAttachments() const
StartEmailContactRequest & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
StartEmailContactRequest & AddAttachments(AttachmentsT &&value)
StartEmailContactRequest & WithContactFlowId(ContactFlowIdT &&value)
AWS_CONNECT_API Aws::String SerializePayload() const override
StartEmailContactRequest & WithDestinationEmailAddress(DestinationEmailAddressT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
StartEmailContactRequest & WithRelatedContactId(RelatedContactIdT &&value)
StartEmailContactRequest & WithEmailMessage(EmailMessageT &&value)
const InboundAdditionalRecipients & GetAdditionalRecipients() const
StartEmailContactRequest & WithDescription(DescriptionT &&value)
const InboundEmailContent & GetEmailMessage() const
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector