AWS SDK for C++

AWS SDK for C++ Version 1.11.741

Loading...
Searching...
No Matches
CreateProfileRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/customer-profiles/CustomerProfilesRequest.h>
10#include <aws/customer-profiles/CustomerProfiles_EXPORTS.h>
11#include <aws/customer-profiles/model/Address.h>
12#include <aws/customer-profiles/model/EngagementPreferences.h>
13#include <aws/customer-profiles/model/Gender.h>
14#include <aws/customer-profiles/model/PartyType.h>
15#include <aws/customer-profiles/model/ProfileType.h>
16
17#include <utility>
18
19namespace Aws {
20namespace CustomerProfiles {
21namespace Model {
22
26 public:
27 AWS_CUSTOMERPROFILES_API CreateProfileRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "CreateProfile"; }
34
35 AWS_CUSTOMERPROFILES_API Aws::String SerializePayload() const override;
36
38
41 inline const Aws::String& GetDomainName() const { return m_domainName; }
42 inline bool DomainNameHasBeenSet() const { return m_domainNameHasBeenSet; }
43 template <typename DomainNameT = Aws::String>
44 void SetDomainName(DomainNameT&& value) {
45 m_domainNameHasBeenSet = true;
46 m_domainName = std::forward<DomainNameT>(value);
47 }
48 template <typename DomainNameT = Aws::String>
49 CreateProfileRequest& WithDomainName(DomainNameT&& value) {
50 SetDomainName(std::forward<DomainNameT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetAccountNumber() const { return m_accountNumber; }
60 inline bool AccountNumberHasBeenSet() const { return m_accountNumberHasBeenSet; }
61 template <typename AccountNumberT = Aws::String>
62 void SetAccountNumber(AccountNumberT&& value) {
63 m_accountNumberHasBeenSet = true;
64 m_accountNumber = std::forward<AccountNumberT>(value);
65 }
66 template <typename AccountNumberT = Aws::String>
67 CreateProfileRequest& WithAccountNumber(AccountNumberT&& value) {
68 SetAccountNumber(std::forward<AccountNumberT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::String& GetAdditionalInformation() const { return m_additionalInformation; }
78 inline bool AdditionalInformationHasBeenSet() const { return m_additionalInformationHasBeenSet; }
79 template <typename AdditionalInformationT = Aws::String>
80 void SetAdditionalInformation(AdditionalInformationT&& value) {
81 m_additionalInformationHasBeenSet = true;
82 m_additionalInformation = std::forward<AdditionalInformationT>(value);
83 }
84 template <typename AdditionalInformationT = Aws::String>
85 CreateProfileRequest& WithAdditionalInformation(AdditionalInformationT&& value) {
86 SetAdditionalInformation(std::forward<AdditionalInformationT>(value));
87 return *this;
88 }
90
92
95 inline PartyType GetPartyType() const { return m_partyType; }
96 inline bool PartyTypeHasBeenSet() const { return m_partyTypeHasBeenSet; }
97 inline void SetPartyType(PartyType value) {
98 m_partyTypeHasBeenSet = true;
99 m_partyType = value;
100 }
102 SetPartyType(value);
103 return *this;
104 }
106
108
111 inline const Aws::String& GetBusinessName() const { return m_businessName; }
112 inline bool BusinessNameHasBeenSet() const { return m_businessNameHasBeenSet; }
113 template <typename BusinessNameT = Aws::String>
114 void SetBusinessName(BusinessNameT&& value) {
115 m_businessNameHasBeenSet = true;
116 m_businessName = std::forward<BusinessNameT>(value);
117 }
118 template <typename BusinessNameT = Aws::String>
119 CreateProfileRequest& WithBusinessName(BusinessNameT&& value) {
120 SetBusinessName(std::forward<BusinessNameT>(value));
121 return *this;
122 }
124
126
129 inline const Aws::String& GetFirstName() const { return m_firstName; }
130 inline bool FirstNameHasBeenSet() const { return m_firstNameHasBeenSet; }
131 template <typename FirstNameT = Aws::String>
132 void SetFirstName(FirstNameT&& value) {
133 m_firstNameHasBeenSet = true;
134 m_firstName = std::forward<FirstNameT>(value);
135 }
136 template <typename FirstNameT = Aws::String>
137 CreateProfileRequest& WithFirstName(FirstNameT&& value) {
138 SetFirstName(std::forward<FirstNameT>(value));
139 return *this;
140 }
142
144
147 inline const Aws::String& GetMiddleName() const { return m_middleName; }
148 inline bool MiddleNameHasBeenSet() const { return m_middleNameHasBeenSet; }
149 template <typename MiddleNameT = Aws::String>
150 void SetMiddleName(MiddleNameT&& value) {
151 m_middleNameHasBeenSet = true;
152 m_middleName = std::forward<MiddleNameT>(value);
153 }
154 template <typename MiddleNameT = Aws::String>
155 CreateProfileRequest& WithMiddleName(MiddleNameT&& value) {
156 SetMiddleName(std::forward<MiddleNameT>(value));
157 return *this;
158 }
160
162
165 inline const Aws::String& GetLastName() const { return m_lastName; }
166 inline bool LastNameHasBeenSet() const { return m_lastNameHasBeenSet; }
167 template <typename LastNameT = Aws::String>
168 void SetLastName(LastNameT&& value) {
169 m_lastNameHasBeenSet = true;
170 m_lastName = std::forward<LastNameT>(value);
171 }
172 template <typename LastNameT = Aws::String>
173 CreateProfileRequest& WithLastName(LastNameT&& value) {
174 SetLastName(std::forward<LastNameT>(value));
175 return *this;
176 }
178
180
183 inline const Aws::String& GetBirthDate() const { return m_birthDate; }
184 inline bool BirthDateHasBeenSet() const { return m_birthDateHasBeenSet; }
185 template <typename BirthDateT = Aws::String>
186 void SetBirthDate(BirthDateT&& value) {
187 m_birthDateHasBeenSet = true;
188 m_birthDate = std::forward<BirthDateT>(value);
189 }
190 template <typename BirthDateT = Aws::String>
191 CreateProfileRequest& WithBirthDate(BirthDateT&& value) {
192 SetBirthDate(std::forward<BirthDateT>(value));
193 return *this;
194 }
196
198
201 inline Gender GetGender() const { return m_gender; }
202 inline bool GenderHasBeenSet() const { return m_genderHasBeenSet; }
203 inline void SetGender(Gender value) {
204 m_genderHasBeenSet = true;
205 m_gender = value;
206 }
208 SetGender(value);
209 return *this;
210 }
212
214
218 inline const Aws::String& GetPhoneNumber() const { return m_phoneNumber; }
219 inline bool PhoneNumberHasBeenSet() const { return m_phoneNumberHasBeenSet; }
220 template <typename PhoneNumberT = Aws::String>
221 void SetPhoneNumber(PhoneNumberT&& value) {
222 m_phoneNumberHasBeenSet = true;
223 m_phoneNumber = std::forward<PhoneNumberT>(value);
224 }
225 template <typename PhoneNumberT = Aws::String>
226 CreateProfileRequest& WithPhoneNumber(PhoneNumberT&& value) {
227 SetPhoneNumber(std::forward<PhoneNumberT>(value));
228 return *this;
229 }
231
233
236 inline const Aws::String& GetMobilePhoneNumber() const { return m_mobilePhoneNumber; }
237 inline bool MobilePhoneNumberHasBeenSet() const { return m_mobilePhoneNumberHasBeenSet; }
238 template <typename MobilePhoneNumberT = Aws::String>
239 void SetMobilePhoneNumber(MobilePhoneNumberT&& value) {
240 m_mobilePhoneNumberHasBeenSet = true;
241 m_mobilePhoneNumber = std::forward<MobilePhoneNumberT>(value);
242 }
243 template <typename MobilePhoneNumberT = Aws::String>
244 CreateProfileRequest& WithMobilePhoneNumber(MobilePhoneNumberT&& value) {
245 SetMobilePhoneNumber(std::forward<MobilePhoneNumberT>(value));
246 return *this;
247 }
249
251
254 inline const Aws::String& GetHomePhoneNumber() const { return m_homePhoneNumber; }
255 inline bool HomePhoneNumberHasBeenSet() const { return m_homePhoneNumberHasBeenSet; }
256 template <typename HomePhoneNumberT = Aws::String>
257 void SetHomePhoneNumber(HomePhoneNumberT&& value) {
258 m_homePhoneNumberHasBeenSet = true;
259 m_homePhoneNumber = std::forward<HomePhoneNumberT>(value);
260 }
261 template <typename HomePhoneNumberT = Aws::String>
262 CreateProfileRequest& WithHomePhoneNumber(HomePhoneNumberT&& value) {
263 SetHomePhoneNumber(std::forward<HomePhoneNumberT>(value));
264 return *this;
265 }
267
269
272 inline const Aws::String& GetBusinessPhoneNumber() const { return m_businessPhoneNumber; }
273 inline bool BusinessPhoneNumberHasBeenSet() const { return m_businessPhoneNumberHasBeenSet; }
274 template <typename BusinessPhoneNumberT = Aws::String>
275 void SetBusinessPhoneNumber(BusinessPhoneNumberT&& value) {
276 m_businessPhoneNumberHasBeenSet = true;
277 m_businessPhoneNumber = std::forward<BusinessPhoneNumberT>(value);
278 }
279 template <typename BusinessPhoneNumberT = Aws::String>
280 CreateProfileRequest& WithBusinessPhoneNumber(BusinessPhoneNumberT&& value) {
281 SetBusinessPhoneNumber(std::forward<BusinessPhoneNumberT>(value));
282 return *this;
283 }
285
287
291 inline const Aws::String& GetEmailAddress() const { return m_emailAddress; }
292 inline bool EmailAddressHasBeenSet() const { return m_emailAddressHasBeenSet; }
293 template <typename EmailAddressT = Aws::String>
294 void SetEmailAddress(EmailAddressT&& value) {
295 m_emailAddressHasBeenSet = true;
296 m_emailAddress = std::forward<EmailAddressT>(value);
297 }
298 template <typename EmailAddressT = Aws::String>
299 CreateProfileRequest& WithEmailAddress(EmailAddressT&& value) {
300 SetEmailAddress(std::forward<EmailAddressT>(value));
301 return *this;
302 }
304
306
309 inline const Aws::String& GetPersonalEmailAddress() const { return m_personalEmailAddress; }
310 inline bool PersonalEmailAddressHasBeenSet() const { return m_personalEmailAddressHasBeenSet; }
311 template <typename PersonalEmailAddressT = Aws::String>
312 void SetPersonalEmailAddress(PersonalEmailAddressT&& value) {
313 m_personalEmailAddressHasBeenSet = true;
314 m_personalEmailAddress = std::forward<PersonalEmailAddressT>(value);
315 }
316 template <typename PersonalEmailAddressT = Aws::String>
317 CreateProfileRequest& WithPersonalEmailAddress(PersonalEmailAddressT&& value) {
318 SetPersonalEmailAddress(std::forward<PersonalEmailAddressT>(value));
319 return *this;
320 }
322
324
327 inline const Aws::String& GetBusinessEmailAddress() const { return m_businessEmailAddress; }
328 inline bool BusinessEmailAddressHasBeenSet() const { return m_businessEmailAddressHasBeenSet; }
329 template <typename BusinessEmailAddressT = Aws::String>
330 void SetBusinessEmailAddress(BusinessEmailAddressT&& value) {
331 m_businessEmailAddressHasBeenSet = true;
332 m_businessEmailAddress = std::forward<BusinessEmailAddressT>(value);
333 }
334 template <typename BusinessEmailAddressT = Aws::String>
335 CreateProfileRequest& WithBusinessEmailAddress(BusinessEmailAddressT&& value) {
336 SetBusinessEmailAddress(std::forward<BusinessEmailAddressT>(value));
337 return *this;
338 }
340
342
346 inline const Address& GetAddress() const { return m_address; }
347 inline bool AddressHasBeenSet() const { return m_addressHasBeenSet; }
348 template <typename AddressT = Address>
349 void SetAddress(AddressT&& value) {
350 m_addressHasBeenSet = true;
351 m_address = std::forward<AddressT>(value);
352 }
353 template <typename AddressT = Address>
355 SetAddress(std::forward<AddressT>(value));
356 return *this;
357 }
359
361
364 inline const Address& GetShippingAddress() const { return m_shippingAddress; }
365 inline bool ShippingAddressHasBeenSet() const { return m_shippingAddressHasBeenSet; }
366 template <typename ShippingAddressT = Address>
367 void SetShippingAddress(ShippingAddressT&& value) {
368 m_shippingAddressHasBeenSet = true;
369 m_shippingAddress = std::forward<ShippingAddressT>(value);
370 }
371 template <typename ShippingAddressT = Address>
372 CreateProfileRequest& WithShippingAddress(ShippingAddressT&& value) {
373 SetShippingAddress(std::forward<ShippingAddressT>(value));
374 return *this;
375 }
377
379
382 inline const Address& GetMailingAddress() const { return m_mailingAddress; }
383 inline bool MailingAddressHasBeenSet() const { return m_mailingAddressHasBeenSet; }
384 template <typename MailingAddressT = Address>
385 void SetMailingAddress(MailingAddressT&& value) {
386 m_mailingAddressHasBeenSet = true;
387 m_mailingAddress = std::forward<MailingAddressT>(value);
388 }
389 template <typename MailingAddressT = Address>
390 CreateProfileRequest& WithMailingAddress(MailingAddressT&& value) {
391 SetMailingAddress(std::forward<MailingAddressT>(value));
392 return *this;
393 }
395
397
400 inline const Address& GetBillingAddress() const { return m_billingAddress; }
401 inline bool BillingAddressHasBeenSet() const { return m_billingAddressHasBeenSet; }
402 template <typename BillingAddressT = Address>
403 void SetBillingAddress(BillingAddressT&& value) {
404 m_billingAddressHasBeenSet = true;
405 m_billingAddress = std::forward<BillingAddressT>(value);
406 }
407 template <typename BillingAddressT = Address>
408 CreateProfileRequest& WithBillingAddress(BillingAddressT&& value) {
409 SetBillingAddress(std::forward<BillingAddressT>(value));
410 return *this;
411 }
413
415
418 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
419 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
420 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
421 void SetAttributes(AttributesT&& value) {
422 m_attributesHasBeenSet = true;
423 m_attributes = std::forward<AttributesT>(value);
424 }
425 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
426 CreateProfileRequest& WithAttributes(AttributesT&& value) {
427 SetAttributes(std::forward<AttributesT>(value));
428 return *this;
429 }
430 template <typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
431 CreateProfileRequest& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
432 m_attributesHasBeenSet = true;
433 m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value));
434 return *this;
435 }
437
439
443 inline const Aws::String& GetPartyTypeString() const { return m_partyTypeString; }
444 inline bool PartyTypeStringHasBeenSet() const { return m_partyTypeStringHasBeenSet; }
445 template <typename PartyTypeStringT = Aws::String>
446 void SetPartyTypeString(PartyTypeStringT&& value) {
447 m_partyTypeStringHasBeenSet = true;
448 m_partyTypeString = std::forward<PartyTypeStringT>(value);
449 }
450 template <typename PartyTypeStringT = Aws::String>
451 CreateProfileRequest& WithPartyTypeString(PartyTypeStringT&& value) {
452 SetPartyTypeString(std::forward<PartyTypeStringT>(value));
453 return *this;
454 }
456
458
461 inline const Aws::String& GetGenderString() const { return m_genderString; }
462 inline bool GenderStringHasBeenSet() const { return m_genderStringHasBeenSet; }
463 template <typename GenderStringT = Aws::String>
464 void SetGenderString(GenderStringT&& value) {
465 m_genderStringHasBeenSet = true;
466 m_genderString = std::forward<GenderStringT>(value);
467 }
468 template <typename GenderStringT = Aws::String>
469 CreateProfileRequest& WithGenderString(GenderStringT&& value) {
470 SetGenderString(std::forward<GenderStringT>(value));
471 return *this;
472 }
474
476
479 inline ProfileType GetProfileType() const { return m_profileType; }
480 inline bool ProfileTypeHasBeenSet() const { return m_profileTypeHasBeenSet; }
481 inline void SetProfileType(ProfileType value) {
482 m_profileTypeHasBeenSet = true;
483 m_profileType = value;
484 }
486 SetProfileType(value);
487 return *this;
488 }
490
492
495 inline const EngagementPreferences& GetEngagementPreferences() const { return m_engagementPreferences; }
496 inline bool EngagementPreferencesHasBeenSet() const { return m_engagementPreferencesHasBeenSet; }
497 template <typename EngagementPreferencesT = EngagementPreferences>
498 void SetEngagementPreferences(EngagementPreferencesT&& value) {
499 m_engagementPreferencesHasBeenSet = true;
500 m_engagementPreferences = std::forward<EngagementPreferencesT>(value);
501 }
502 template <typename EngagementPreferencesT = EngagementPreferences>
503 CreateProfileRequest& WithEngagementPreferences(EngagementPreferencesT&& value) {
504 SetEngagementPreferences(std::forward<EngagementPreferencesT>(value));
505 return *this;
506 }
508 private:
509 Aws::String m_domainName;
510
511 Aws::String m_accountNumber;
512
513 Aws::String m_additionalInformation;
514
515 PartyType m_partyType{PartyType::NOT_SET};
516
517 Aws::String m_businessName;
518
519 Aws::String m_firstName;
520
521 Aws::String m_middleName;
522
523 Aws::String m_lastName;
524
525 Aws::String m_birthDate;
526
527 Gender m_gender{Gender::NOT_SET};
528
529 Aws::String m_phoneNumber;
530
531 Aws::String m_mobilePhoneNumber;
532
533 Aws::String m_homePhoneNumber;
534
535 Aws::String m_businessPhoneNumber;
536
537 Aws::String m_emailAddress;
538
539 Aws::String m_personalEmailAddress;
540
541 Aws::String m_businessEmailAddress;
542
543 Address m_address;
544
545 Address m_shippingAddress;
546
547 Address m_mailingAddress;
548
549 Address m_billingAddress;
550
552
553 Aws::String m_partyTypeString;
554
555 Aws::String m_genderString;
556
557 ProfileType m_profileType{ProfileType::NOT_SET};
558
559 EngagementPreferences m_engagementPreferences;
560 bool m_domainNameHasBeenSet = false;
561 bool m_accountNumberHasBeenSet = false;
562 bool m_additionalInformationHasBeenSet = false;
563 bool m_partyTypeHasBeenSet = false;
564 bool m_businessNameHasBeenSet = false;
565 bool m_firstNameHasBeenSet = false;
566 bool m_middleNameHasBeenSet = false;
567 bool m_lastNameHasBeenSet = false;
568 bool m_birthDateHasBeenSet = false;
569 bool m_genderHasBeenSet = false;
570 bool m_phoneNumberHasBeenSet = false;
571 bool m_mobilePhoneNumberHasBeenSet = false;
572 bool m_homePhoneNumberHasBeenSet = false;
573 bool m_businessPhoneNumberHasBeenSet = false;
574 bool m_emailAddressHasBeenSet = false;
575 bool m_personalEmailAddressHasBeenSet = false;
576 bool m_businessEmailAddressHasBeenSet = false;
577 bool m_addressHasBeenSet = false;
578 bool m_shippingAddressHasBeenSet = false;
579 bool m_mailingAddressHasBeenSet = false;
580 bool m_billingAddressHasBeenSet = false;
581 bool m_attributesHasBeenSet = false;
582 bool m_partyTypeStringHasBeenSet = false;
583 bool m_genderStringHasBeenSet = false;
584 bool m_profileTypeHasBeenSet = false;
585 bool m_engagementPreferencesHasBeenSet = false;
586};
587
588} // namespace Model
589} // namespace CustomerProfiles
590} // namespace Aws
CreateProfileRequest & WithShippingAddress(ShippingAddressT &&value)
void SetBusinessEmailAddress(BusinessEmailAddressT &&value)
CreateProfileRequest & WithEmailAddress(EmailAddressT &&value)
CreateProfileRequest & WithBusinessEmailAddress(BusinessEmailAddressT &&value)
CreateProfileRequest & WithEngagementPreferences(EngagementPreferencesT &&value)
CreateProfileRequest & WithBillingAddress(BillingAddressT &&value)
CreateProfileRequest & WithMailingAddress(MailingAddressT &&value)
CreateProfileRequest & WithGenderString(GenderStringT &&value)
void SetAdditionalInformation(AdditionalInformationT &&value)
CreateProfileRequest & WithBirthDate(BirthDateT &&value)
CreateProfileRequest & WithHomePhoneNumber(HomePhoneNumberT &&value)
CreateProfileRequest & WithAccountNumber(AccountNumberT &&value)
CreateProfileRequest & WithFirstName(FirstNameT &&value)
CreateProfileRequest & WithMobilePhoneNumber(MobilePhoneNumberT &&value)
CreateProfileRequest & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
AWS_CUSTOMERPROFILES_API CreateProfileRequest()=default
CreateProfileRequest & WithLastName(LastNameT &&value)
CreateProfileRequest & WithBusinessName(BusinessNameT &&value)
CreateProfileRequest & WithMiddleName(MiddleNameT &&value)
void SetPersonalEmailAddress(PersonalEmailAddressT &&value)
CreateProfileRequest & WithAddress(AddressT &&value)
CreateProfileRequest & WithPartyType(PartyType value)
virtual const char * GetServiceRequestName() const override
CreateProfileRequest & WithPartyTypeString(PartyTypeStringT &&value)
CreateProfileRequest & WithAttributes(AttributesT &&value)
AWS_CUSTOMERPROFILES_API Aws::String SerializePayload() const override
CreateProfileRequest & WithDomainName(DomainNameT &&value)
CreateProfileRequest & WithProfileType(ProfileType value)
void SetEngagementPreferences(EngagementPreferencesT &&value)
void SetBusinessPhoneNumber(BusinessPhoneNumberT &&value)
CreateProfileRequest & WithAdditionalInformation(AdditionalInformationT &&value)
CreateProfileRequest & WithPhoneNumber(PhoneNumberT &&value)
CreateProfileRequest & WithBusinessPhoneNumber(BusinessPhoneNumberT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
CreateProfileRequest & WithPersonalEmailAddress(PersonalEmailAddressT &&value)
const EngagementPreferences & GetEngagementPreferences() const
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