/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Account { namespace Model { /** */ class PutAlternateContactRequest : public AccountRequest { public: AWS_ACCOUNT_API PutAlternateContactRequest(); // 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 "PutAlternateContact"; } AWS_ACCOUNT_API Aws::String SerializePayload() const override; /** *

Specifies the 12 digit account ID number of the Amazon Web Services account * that you want to access or modify with this operation.

If you do not * specify this parameter, it defaults to the Amazon Web Services account of the * identity used to call the operation.

To use this parameter, the caller * must be an identity in the organization's * management account or a delegated administrator account, and the specified * account ID must be a member account in the same organization. The organization * must have all * features enabled, and the organization must have trusted * access enabled for the Account Management service, and optionally a delegated * admin account assigned.

The management account can't specify * its own AccountId; it must call the operation in standalone context * by not including the AccountId parameter.

To call * this operation on an account that is not a member of an organization, then don't * specify this parameter, and call the operation using an identity belonging to * the account whose contacts you wish to retrieve or modify.

*/ inline const Aws::String& GetAccountId() const{ return m_accountId; } /** *

Specifies the 12 digit account ID number of the Amazon Web Services account * that you want to access or modify with this operation.

If you do not * specify this parameter, it defaults to the Amazon Web Services account of the * identity used to call the operation.

To use this parameter, the caller * must be an identity in the organization's * management account or a delegated administrator account, and the specified * account ID must be a member account in the same organization. The organization * must have all * features enabled, and the organization must have trusted * access enabled for the Account Management service, and optionally a delegated * admin account assigned.

The management account can't specify * its own AccountId; it must call the operation in standalone context * by not including the AccountId parameter.

To call * this operation on an account that is not a member of an organization, then don't * specify this parameter, and call the operation using an identity belonging to * the account whose contacts you wish to retrieve or modify.

*/ inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } /** *

Specifies the 12 digit account ID number of the Amazon Web Services account * that you want to access or modify with this operation.

If you do not * specify this parameter, it defaults to the Amazon Web Services account of the * identity used to call the operation.

To use this parameter, the caller * must be an identity in the organization's * management account or a delegated administrator account, and the specified * account ID must be a member account in the same organization. The organization * must have all * features enabled, and the organization must have trusted * access enabled for the Account Management service, and optionally a delegated * admin account assigned.

The management account can't specify * its own AccountId; it must call the operation in standalone context * by not including the AccountId parameter.

To call * this operation on an account that is not a member of an organization, then don't * specify this parameter, and call the operation using an identity belonging to * the account whose contacts you wish to retrieve or modify.

*/ inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } /** *

Specifies the 12 digit account ID number of the Amazon Web Services account * that you want to access or modify with this operation.

If you do not * specify this parameter, it defaults to the Amazon Web Services account of the * identity used to call the operation.

To use this parameter, the caller * must be an identity in the organization's * management account or a delegated administrator account, and the specified * account ID must be a member account in the same organization. The organization * must have all * features enabled, and the organization must have trusted * access enabled for the Account Management service, and optionally a delegated * admin account assigned.

The management account can't specify * its own AccountId; it must call the operation in standalone context * by not including the AccountId parameter.

To call * this operation on an account that is not a member of an organization, then don't * specify this parameter, and call the operation using an identity belonging to * the account whose contacts you wish to retrieve or modify.

*/ inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } /** *

Specifies the 12 digit account ID number of the Amazon Web Services account * that you want to access or modify with this operation.

If you do not * specify this parameter, it defaults to the Amazon Web Services account of the * identity used to call the operation.

To use this parameter, the caller * must be an identity in the organization's * management account or a delegated administrator account, and the specified * account ID must be a member account in the same organization. The organization * must have all * features enabled, and the organization must have trusted * access enabled for the Account Management service, and optionally a delegated * admin account assigned.

The management account can't specify * its own AccountId; it must call the operation in standalone context * by not including the AccountId parameter.

To call * this operation on an account that is not a member of an organization, then don't * specify this parameter, and call the operation using an identity belonging to * the account whose contacts you wish to retrieve or modify.

*/ inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } /** *

Specifies the 12 digit account ID number of the Amazon Web Services account * that you want to access or modify with this operation.

If you do not * specify this parameter, it defaults to the Amazon Web Services account of the * identity used to call the operation.

To use this parameter, the caller * must be an identity in the organization's * management account or a delegated administrator account, and the specified * account ID must be a member account in the same organization. The organization * must have all * features enabled, and the organization must have trusted * access enabled for the Account Management service, and optionally a delegated * admin account assigned.

The management account can't specify * its own AccountId; it must call the operation in standalone context * by not including the AccountId parameter.

To call * this operation on an account that is not a member of an organization, then don't * specify this parameter, and call the operation using an identity belonging to * the account whose contacts you wish to retrieve or modify.

*/ inline PutAlternateContactRequest& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} /** *

Specifies the 12 digit account ID number of the Amazon Web Services account * that you want to access or modify with this operation.

If you do not * specify this parameter, it defaults to the Amazon Web Services account of the * identity used to call the operation.

To use this parameter, the caller * must be an identity in the organization's * management account or a delegated administrator account, and the specified * account ID must be a member account in the same organization. The organization * must have all * features enabled, and the organization must have trusted * access enabled for the Account Management service, and optionally a delegated * admin account assigned.

The management account can't specify * its own AccountId; it must call the operation in standalone context * by not including the AccountId parameter.

To call * this operation on an account that is not a member of an organization, then don't * specify this parameter, and call the operation using an identity belonging to * the account whose contacts you wish to retrieve or modify.

*/ inline PutAlternateContactRequest& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} /** *

Specifies the 12 digit account ID number of the Amazon Web Services account * that you want to access or modify with this operation.

If you do not * specify this parameter, it defaults to the Amazon Web Services account of the * identity used to call the operation.

To use this parameter, the caller * must be an identity in the organization's * management account or a delegated administrator account, and the specified * account ID must be a member account in the same organization. The organization * must have all * features enabled, and the organization must have trusted * access enabled for the Account Management service, and optionally a delegated * admin account assigned.

The management account can't specify * its own AccountId; it must call the operation in standalone context * by not including the AccountId parameter.

To call * this operation on an account that is not a member of an organization, then don't * specify this parameter, and call the operation using an identity belonging to * the account whose contacts you wish to retrieve or modify.

*/ inline PutAlternateContactRequest& WithAccountId(const char* value) { SetAccountId(value); return *this;} /** *

Specifies which alternate contact you want to create or update.

*/ inline const AlternateContactType& GetAlternateContactType() const{ return m_alternateContactType; } /** *

Specifies which alternate contact you want to create or update.

*/ inline bool AlternateContactTypeHasBeenSet() const { return m_alternateContactTypeHasBeenSet; } /** *

Specifies which alternate contact you want to create or update.

*/ inline void SetAlternateContactType(const AlternateContactType& value) { m_alternateContactTypeHasBeenSet = true; m_alternateContactType = value; } /** *

Specifies which alternate contact you want to create or update.

*/ inline void SetAlternateContactType(AlternateContactType&& value) { m_alternateContactTypeHasBeenSet = true; m_alternateContactType = std::move(value); } /** *

Specifies which alternate contact you want to create or update.

*/ inline PutAlternateContactRequest& WithAlternateContactType(const AlternateContactType& value) { SetAlternateContactType(value); return *this;} /** *

Specifies which alternate contact you want to create or update.

*/ inline PutAlternateContactRequest& WithAlternateContactType(AlternateContactType&& value) { SetAlternateContactType(std::move(value)); return *this;} /** *

Specifies an email address for the alternate contact.

*/ inline const Aws::String& GetEmailAddress() const{ return m_emailAddress; } /** *

Specifies an email address for the alternate contact.

*/ inline bool EmailAddressHasBeenSet() const { return m_emailAddressHasBeenSet; } /** *

Specifies an email address for the alternate contact.

*/ inline void SetEmailAddress(const Aws::String& value) { m_emailAddressHasBeenSet = true; m_emailAddress = value; } /** *

Specifies an email address for the alternate contact.

*/ inline void SetEmailAddress(Aws::String&& value) { m_emailAddressHasBeenSet = true; m_emailAddress = std::move(value); } /** *

Specifies an email address for the alternate contact.

*/ inline void SetEmailAddress(const char* value) { m_emailAddressHasBeenSet = true; m_emailAddress.assign(value); } /** *

Specifies an email address for the alternate contact.

*/ inline PutAlternateContactRequest& WithEmailAddress(const Aws::String& value) { SetEmailAddress(value); return *this;} /** *

Specifies an email address for the alternate contact.

*/ inline PutAlternateContactRequest& WithEmailAddress(Aws::String&& value) { SetEmailAddress(std::move(value)); return *this;} /** *

Specifies an email address for the alternate contact.

*/ inline PutAlternateContactRequest& WithEmailAddress(const char* value) { SetEmailAddress(value); return *this;} /** *

Specifies a name for the alternate contact.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

Specifies a name for the alternate contact.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

Specifies a name for the alternate contact.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

Specifies a name for the alternate contact.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

Specifies a name for the alternate contact.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

Specifies a name for the alternate contact.

*/ inline PutAlternateContactRequest& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

Specifies a name for the alternate contact.

*/ inline PutAlternateContactRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

Specifies a name for the alternate contact.

*/ inline PutAlternateContactRequest& WithName(const char* value) { SetName(value); return *this;} /** *

Specifies a phone number for the alternate contact.

*/ inline const Aws::String& GetPhoneNumber() const{ return m_phoneNumber; } /** *

Specifies a phone number for the alternate contact.

*/ inline bool PhoneNumberHasBeenSet() const { return m_phoneNumberHasBeenSet; } /** *

Specifies a phone number for the alternate contact.

*/ inline void SetPhoneNumber(const Aws::String& value) { m_phoneNumberHasBeenSet = true; m_phoneNumber = value; } /** *

Specifies a phone number for the alternate contact.

*/ inline void SetPhoneNumber(Aws::String&& value) { m_phoneNumberHasBeenSet = true; m_phoneNumber = std::move(value); } /** *

Specifies a phone number for the alternate contact.

*/ inline void SetPhoneNumber(const char* value) { m_phoneNumberHasBeenSet = true; m_phoneNumber.assign(value); } /** *

Specifies a phone number for the alternate contact.

*/ inline PutAlternateContactRequest& WithPhoneNumber(const Aws::String& value) { SetPhoneNumber(value); return *this;} /** *

Specifies a phone number for the alternate contact.

*/ inline PutAlternateContactRequest& WithPhoneNumber(Aws::String&& value) { SetPhoneNumber(std::move(value)); return *this;} /** *

Specifies a phone number for the alternate contact.

*/ inline PutAlternateContactRequest& WithPhoneNumber(const char* value) { SetPhoneNumber(value); return *this;} /** *

Specifies a title for the alternate contact.

*/ inline const Aws::String& GetTitle() const{ return m_title; } /** *

Specifies a title for the alternate contact.

*/ inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; } /** *

Specifies a title for the alternate contact.

*/ inline void SetTitle(const Aws::String& value) { m_titleHasBeenSet = true; m_title = value; } /** *

Specifies a title for the alternate contact.

*/ inline void SetTitle(Aws::String&& value) { m_titleHasBeenSet = true; m_title = std::move(value); } /** *

Specifies a title for the alternate contact.

*/ inline void SetTitle(const char* value) { m_titleHasBeenSet = true; m_title.assign(value); } /** *

Specifies a title for the alternate contact.

*/ inline PutAlternateContactRequest& WithTitle(const Aws::String& value) { SetTitle(value); return *this;} /** *

Specifies a title for the alternate contact.

*/ inline PutAlternateContactRequest& WithTitle(Aws::String&& value) { SetTitle(std::move(value)); return *this;} /** *

Specifies a title for the alternate contact.

*/ inline PutAlternateContactRequest& WithTitle(const char* value) { SetTitle(value); return *this;} private: Aws::String m_accountId; bool m_accountIdHasBeenSet = false; AlternateContactType m_alternateContactType; bool m_alternateContactTypeHasBeenSet = false; Aws::String m_emailAddress; bool m_emailAddressHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_phoneNumber; bool m_phoneNumberHasBeenSet = false; Aws::String m_title; bool m_titleHasBeenSet = false; }; } // namespace Model } // namespace Account } // namespace Aws