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

The edition of Amazon QuickSight that you want your account to have. * Currently, you can choose from ENTERPRISE or * ENTERPRISE_AND_Q.

If you choose * ENTERPRISE_AND_Q, the following parameters are required:

    *
  • FirstName

  • LastName

    *
  • EmailAddress

  • * ContactNumber

*/ inline const Edition& GetEdition() const{ return m_edition; } /** *

The edition of Amazon QuickSight that you want your account to have. * Currently, you can choose from ENTERPRISE or * ENTERPRISE_AND_Q.

If you choose * ENTERPRISE_AND_Q, the following parameters are required:

    *
  • FirstName

  • LastName

    *
  • EmailAddress

  • * ContactNumber

*/ inline bool EditionHasBeenSet() const { return m_editionHasBeenSet; } /** *

The edition of Amazon QuickSight that you want your account to have. * Currently, you can choose from ENTERPRISE or * ENTERPRISE_AND_Q.

If you choose * ENTERPRISE_AND_Q, the following parameters are required:

    *
  • FirstName

  • LastName

    *
  • EmailAddress

  • * ContactNumber

*/ inline void SetEdition(const Edition& value) { m_editionHasBeenSet = true; m_edition = value; } /** *

The edition of Amazon QuickSight that you want your account to have. * Currently, you can choose from ENTERPRISE or * ENTERPRISE_AND_Q.

If you choose * ENTERPRISE_AND_Q, the following parameters are required:

    *
  • FirstName

  • LastName

    *
  • EmailAddress

  • * ContactNumber

*/ inline void SetEdition(Edition&& value) { m_editionHasBeenSet = true; m_edition = std::move(value); } /** *

The edition of Amazon QuickSight that you want your account to have. * Currently, you can choose from ENTERPRISE or * ENTERPRISE_AND_Q.

If you choose * ENTERPRISE_AND_Q, the following parameters are required:

    *
  • FirstName

  • LastName

    *
  • EmailAddress

  • * ContactNumber

*/ inline CreateAccountSubscriptionRequest& WithEdition(const Edition& value) { SetEdition(value); return *this;} /** *

The edition of Amazon QuickSight that you want your account to have. * Currently, you can choose from ENTERPRISE or * ENTERPRISE_AND_Q.

If you choose * ENTERPRISE_AND_Q, the following parameters are required:

    *
  • FirstName

  • LastName

    *
  • EmailAddress

  • * ContactNumber

*/ inline CreateAccountSubscriptionRequest& WithEdition(Edition&& value) { SetEdition(std::move(value)); return *this;} /** *

The method that you want to use to authenticate your Amazon QuickSight * account. Currently, the valid values for this parameter are * IAM_AND_QUICKSIGHT, IAM_ONLY, and * ACTIVE_DIRECTORY.

If you choose * ACTIVE_DIRECTORY, provide an ActiveDirectoryName and * an AdminGroup associated with your Active Directory.

*/ inline const AuthenticationMethodOption& GetAuthenticationMethod() const{ return m_authenticationMethod; } /** *

The method that you want to use to authenticate your Amazon QuickSight * account. Currently, the valid values for this parameter are * IAM_AND_QUICKSIGHT, IAM_ONLY, and * ACTIVE_DIRECTORY.

If you choose * ACTIVE_DIRECTORY, provide an ActiveDirectoryName and * an AdminGroup associated with your Active Directory.

*/ inline bool AuthenticationMethodHasBeenSet() const { return m_authenticationMethodHasBeenSet; } /** *

The method that you want to use to authenticate your Amazon QuickSight * account. Currently, the valid values for this parameter are * IAM_AND_QUICKSIGHT, IAM_ONLY, and * ACTIVE_DIRECTORY.

If you choose * ACTIVE_DIRECTORY, provide an ActiveDirectoryName and * an AdminGroup associated with your Active Directory.

*/ inline void SetAuthenticationMethod(const AuthenticationMethodOption& value) { m_authenticationMethodHasBeenSet = true; m_authenticationMethod = value; } /** *

The method that you want to use to authenticate your Amazon QuickSight * account. Currently, the valid values for this parameter are * IAM_AND_QUICKSIGHT, IAM_ONLY, and * ACTIVE_DIRECTORY.

If you choose * ACTIVE_DIRECTORY, provide an ActiveDirectoryName and * an AdminGroup associated with your Active Directory.

*/ inline void SetAuthenticationMethod(AuthenticationMethodOption&& value) { m_authenticationMethodHasBeenSet = true; m_authenticationMethod = std::move(value); } /** *

The method that you want to use to authenticate your Amazon QuickSight * account. Currently, the valid values for this parameter are * IAM_AND_QUICKSIGHT, IAM_ONLY, and * ACTIVE_DIRECTORY.

If you choose * ACTIVE_DIRECTORY, provide an ActiveDirectoryName and * an AdminGroup associated with your Active Directory.

*/ inline CreateAccountSubscriptionRequest& WithAuthenticationMethod(const AuthenticationMethodOption& value) { SetAuthenticationMethod(value); return *this;} /** *

The method that you want to use to authenticate your Amazon QuickSight * account. Currently, the valid values for this parameter are * IAM_AND_QUICKSIGHT, IAM_ONLY, and * ACTIVE_DIRECTORY.

If you choose * ACTIVE_DIRECTORY, provide an ActiveDirectoryName and * an AdminGroup associated with your Active Directory.

*/ inline CreateAccountSubscriptionRequest& WithAuthenticationMethod(AuthenticationMethodOption&& value) { SetAuthenticationMethod(std::move(value)); return *this;} /** *

The Amazon Web Services account ID of the account that you're using to create * your Amazon QuickSight account.

*/ inline const Aws::String& GetAwsAccountId() const{ return m_awsAccountId; } /** *

The Amazon Web Services account ID of the account that you're using to create * your Amazon QuickSight account.

*/ inline bool AwsAccountIdHasBeenSet() const { return m_awsAccountIdHasBeenSet; } /** *

The Amazon Web Services account ID of the account that you're using to create * your Amazon QuickSight account.

*/ inline void SetAwsAccountId(const Aws::String& value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId = value; } /** *

The Amazon Web Services account ID of the account that you're using to create * your Amazon QuickSight account.

*/ inline void SetAwsAccountId(Aws::String&& value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId = std::move(value); } /** *

The Amazon Web Services account ID of the account that you're using to create * your Amazon QuickSight account.

*/ inline void SetAwsAccountId(const char* value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId.assign(value); } /** *

The Amazon Web Services account ID of the account that you're using to create * your Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithAwsAccountId(const Aws::String& value) { SetAwsAccountId(value); return *this;} /** *

The Amazon Web Services account ID of the account that you're using to create * your Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithAwsAccountId(Aws::String&& value) { SetAwsAccountId(std::move(value)); return *this;} /** *

The Amazon Web Services account ID of the account that you're using to create * your Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithAwsAccountId(const char* value) { SetAwsAccountId(value); return *this;} /** *

The name of your Amazon QuickSight account. This name is unique over all of * Amazon Web Services, and it appears only when users sign in. You can't change * AccountName value after the Amazon QuickSight account is * created.

*/ inline const Aws::String& GetAccountName() const{ return m_accountName; } /** *

The name of your Amazon QuickSight account. This name is unique over all of * Amazon Web Services, and it appears only when users sign in. You can't change * AccountName value after the Amazon QuickSight account is * created.

*/ inline bool AccountNameHasBeenSet() const { return m_accountNameHasBeenSet; } /** *

The name of your Amazon QuickSight account. This name is unique over all of * Amazon Web Services, and it appears only when users sign in. You can't change * AccountName value after the Amazon QuickSight account is * created.

*/ inline void SetAccountName(const Aws::String& value) { m_accountNameHasBeenSet = true; m_accountName = value; } /** *

The name of your Amazon QuickSight account. This name is unique over all of * Amazon Web Services, and it appears only when users sign in. You can't change * AccountName value after the Amazon QuickSight account is * created.

*/ inline void SetAccountName(Aws::String&& value) { m_accountNameHasBeenSet = true; m_accountName = std::move(value); } /** *

The name of your Amazon QuickSight account. This name is unique over all of * Amazon Web Services, and it appears only when users sign in. You can't change * AccountName value after the Amazon QuickSight account is * created.

*/ inline void SetAccountName(const char* value) { m_accountNameHasBeenSet = true; m_accountName.assign(value); } /** *

The name of your Amazon QuickSight account. This name is unique over all of * Amazon Web Services, and it appears only when users sign in. You can't change * AccountName value after the Amazon QuickSight account is * created.

*/ inline CreateAccountSubscriptionRequest& WithAccountName(const Aws::String& value) { SetAccountName(value); return *this;} /** *

The name of your Amazon QuickSight account. This name is unique over all of * Amazon Web Services, and it appears only when users sign in. You can't change * AccountName value after the Amazon QuickSight account is * created.

*/ inline CreateAccountSubscriptionRequest& WithAccountName(Aws::String&& value) { SetAccountName(std::move(value)); return *this;} /** *

The name of your Amazon QuickSight account. This name is unique over all of * Amazon Web Services, and it appears only when users sign in. You can't change * AccountName value after the Amazon QuickSight account is * created.

*/ inline CreateAccountSubscriptionRequest& WithAccountName(const char* value) { SetAccountName(value); return *this;} /** *

The email address that you want Amazon QuickSight to send notifications to * regarding your Amazon QuickSight account or Amazon QuickSight subscription.

*/ inline const Aws::String& GetNotificationEmail() const{ return m_notificationEmail; } /** *

The email address that you want Amazon QuickSight to send notifications to * regarding your Amazon QuickSight account or Amazon QuickSight subscription.

*/ inline bool NotificationEmailHasBeenSet() const { return m_notificationEmailHasBeenSet; } /** *

The email address that you want Amazon QuickSight to send notifications to * regarding your Amazon QuickSight account or Amazon QuickSight subscription.

*/ inline void SetNotificationEmail(const Aws::String& value) { m_notificationEmailHasBeenSet = true; m_notificationEmail = value; } /** *

The email address that you want Amazon QuickSight to send notifications to * regarding your Amazon QuickSight account or Amazon QuickSight subscription.

*/ inline void SetNotificationEmail(Aws::String&& value) { m_notificationEmailHasBeenSet = true; m_notificationEmail = std::move(value); } /** *

The email address that you want Amazon QuickSight to send notifications to * regarding your Amazon QuickSight account or Amazon QuickSight subscription.

*/ inline void SetNotificationEmail(const char* value) { m_notificationEmailHasBeenSet = true; m_notificationEmail.assign(value); } /** *

The email address that you want Amazon QuickSight to send notifications to * regarding your Amazon QuickSight account or Amazon QuickSight subscription.

*/ inline CreateAccountSubscriptionRequest& WithNotificationEmail(const Aws::String& value) { SetNotificationEmail(value); return *this;} /** *

The email address that you want Amazon QuickSight to send notifications to * regarding your Amazon QuickSight account or Amazon QuickSight subscription.

*/ inline CreateAccountSubscriptionRequest& WithNotificationEmail(Aws::String&& value) { SetNotificationEmail(std::move(value)); return *this;} /** *

The email address that you want Amazon QuickSight to send notifications to * regarding your Amazon QuickSight account or Amazon QuickSight subscription.

*/ inline CreateAccountSubscriptionRequest& WithNotificationEmail(const char* value) { SetNotificationEmail(value); return *this;} /** *

The name of your Active Directory. This field is required if * ACTIVE_DIRECTORY is the selected authentication method of the new * Amazon QuickSight account.

*/ inline const Aws::String& GetActiveDirectoryName() const{ return m_activeDirectoryName; } /** *

The name of your Active Directory. This field is required if * ACTIVE_DIRECTORY is the selected authentication method of the new * Amazon QuickSight account.

*/ inline bool ActiveDirectoryNameHasBeenSet() const { return m_activeDirectoryNameHasBeenSet; } /** *

The name of your Active Directory. This field is required if * ACTIVE_DIRECTORY is the selected authentication method of the new * Amazon QuickSight account.

*/ inline void SetActiveDirectoryName(const Aws::String& value) { m_activeDirectoryNameHasBeenSet = true; m_activeDirectoryName = value; } /** *

The name of your Active Directory. This field is required if * ACTIVE_DIRECTORY is the selected authentication method of the new * Amazon QuickSight account.

*/ inline void SetActiveDirectoryName(Aws::String&& value) { m_activeDirectoryNameHasBeenSet = true; m_activeDirectoryName = std::move(value); } /** *

The name of your Active Directory. This field is required if * ACTIVE_DIRECTORY is the selected authentication method of the new * Amazon QuickSight account.

*/ inline void SetActiveDirectoryName(const char* value) { m_activeDirectoryNameHasBeenSet = true; m_activeDirectoryName.assign(value); } /** *

The name of your Active Directory. This field is required if * ACTIVE_DIRECTORY is the selected authentication method of the new * Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithActiveDirectoryName(const Aws::String& value) { SetActiveDirectoryName(value); return *this;} /** *

The name of your Active Directory. This field is required if * ACTIVE_DIRECTORY is the selected authentication method of the new * Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithActiveDirectoryName(Aws::String&& value) { SetActiveDirectoryName(std::move(value)); return *this;} /** *

The name of your Active Directory. This field is required if * ACTIVE_DIRECTORY is the selected authentication method of the new * Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithActiveDirectoryName(const char* value) { SetActiveDirectoryName(value); return *this;} /** *

The realm of the Active Directory that is associated with your Amazon * QuickSight account. This field is required if ACTIVE_DIRECTORY is * the selected authentication method of the new Amazon QuickSight account.

*/ inline const Aws::String& GetRealm() const{ return m_realm; } /** *

The realm of the Active Directory that is associated with your Amazon * QuickSight account. This field is required if ACTIVE_DIRECTORY is * the selected authentication method of the new Amazon QuickSight account.

*/ inline bool RealmHasBeenSet() const { return m_realmHasBeenSet; } /** *

The realm of the Active Directory that is associated with your Amazon * QuickSight account. This field is required if ACTIVE_DIRECTORY is * the selected authentication method of the new Amazon QuickSight account.

*/ inline void SetRealm(const Aws::String& value) { m_realmHasBeenSet = true; m_realm = value; } /** *

The realm of the Active Directory that is associated with your Amazon * QuickSight account. This field is required if ACTIVE_DIRECTORY is * the selected authentication method of the new Amazon QuickSight account.

*/ inline void SetRealm(Aws::String&& value) { m_realmHasBeenSet = true; m_realm = std::move(value); } /** *

The realm of the Active Directory that is associated with your Amazon * QuickSight account. This field is required if ACTIVE_DIRECTORY is * the selected authentication method of the new Amazon QuickSight account.

*/ inline void SetRealm(const char* value) { m_realmHasBeenSet = true; m_realm.assign(value); } /** *

The realm of the Active Directory that is associated with your Amazon * QuickSight account. This field is required if ACTIVE_DIRECTORY is * the selected authentication method of the new Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithRealm(const Aws::String& value) { SetRealm(value); return *this;} /** *

The realm of the Active Directory that is associated with your Amazon * QuickSight account. This field is required if ACTIVE_DIRECTORY is * the selected authentication method of the new Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithRealm(Aws::String&& value) { SetRealm(std::move(value)); return *this;} /** *

The realm of the Active Directory that is associated with your Amazon * QuickSight account. This field is required if ACTIVE_DIRECTORY is * the selected authentication method of the new Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithRealm(const char* value) { SetRealm(value); return *this;} /** *

The ID of the Active Directory that is associated with your Amazon QuickSight * account.

*/ inline const Aws::String& GetDirectoryId() const{ return m_directoryId; } /** *

The ID of the Active Directory that is associated with your Amazon QuickSight * account.

*/ inline bool DirectoryIdHasBeenSet() const { return m_directoryIdHasBeenSet; } /** *

The ID of the Active Directory that is associated with your Amazon QuickSight * account.

*/ inline void SetDirectoryId(const Aws::String& value) { m_directoryIdHasBeenSet = true; m_directoryId = value; } /** *

The ID of the Active Directory that is associated with your Amazon QuickSight * account.

*/ inline void SetDirectoryId(Aws::String&& value) { m_directoryIdHasBeenSet = true; m_directoryId = std::move(value); } /** *

The ID of the Active Directory that is associated with your Amazon QuickSight * account.

*/ inline void SetDirectoryId(const char* value) { m_directoryIdHasBeenSet = true; m_directoryId.assign(value); } /** *

The ID of the Active Directory that is associated with your Amazon QuickSight * account.

*/ inline CreateAccountSubscriptionRequest& WithDirectoryId(const Aws::String& value) { SetDirectoryId(value); return *this;} /** *

The ID of the Active Directory that is associated with your Amazon QuickSight * account.

*/ inline CreateAccountSubscriptionRequest& WithDirectoryId(Aws::String&& value) { SetDirectoryId(std::move(value)); return *this;} /** *

The ID of the Active Directory that is associated with your Amazon QuickSight * account.

*/ inline CreateAccountSubscriptionRequest& WithDirectoryId(const char* value) { SetDirectoryId(value); return *this;} /** *

The admin group associated with your Active Directory. This field is required * if ACTIVE_DIRECTORY is the selected authentication method of the * new Amazon QuickSight account. For more information about using Active Directory * in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline const Aws::Vector& GetAdminGroup() const{ return m_adminGroup; } /** *

The admin group associated with your Active Directory. This field is required * if ACTIVE_DIRECTORY is the selected authentication method of the * new Amazon QuickSight account. For more information about using Active Directory * in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline bool AdminGroupHasBeenSet() const { return m_adminGroupHasBeenSet; } /** *

The admin group associated with your Active Directory. This field is required * if ACTIVE_DIRECTORY is the selected authentication method of the * new Amazon QuickSight account. For more information about using Active Directory * in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline void SetAdminGroup(const Aws::Vector& value) { m_adminGroupHasBeenSet = true; m_adminGroup = value; } /** *

The admin group associated with your Active Directory. This field is required * if ACTIVE_DIRECTORY is the selected authentication method of the * new Amazon QuickSight account. For more information about using Active Directory * in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline void SetAdminGroup(Aws::Vector&& value) { m_adminGroupHasBeenSet = true; m_adminGroup = std::move(value); } /** *

The admin group associated with your Active Directory. This field is required * if ACTIVE_DIRECTORY is the selected authentication method of the * new Amazon QuickSight account. For more information about using Active Directory * in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& WithAdminGroup(const Aws::Vector& value) { SetAdminGroup(value); return *this;} /** *

The admin group associated with your Active Directory. This field is required * if ACTIVE_DIRECTORY is the selected authentication method of the * new Amazon QuickSight account. For more information about using Active Directory * in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& WithAdminGroup(Aws::Vector&& value) { SetAdminGroup(std::move(value)); return *this;} /** *

The admin group associated with your Active Directory. This field is required * if ACTIVE_DIRECTORY is the selected authentication method of the * new Amazon QuickSight account. For more information about using Active Directory * in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& AddAdminGroup(const Aws::String& value) { m_adminGroupHasBeenSet = true; m_adminGroup.push_back(value); return *this; } /** *

The admin group associated with your Active Directory. This field is required * if ACTIVE_DIRECTORY is the selected authentication method of the * new Amazon QuickSight account. For more information about using Active Directory * in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& AddAdminGroup(Aws::String&& value) { m_adminGroupHasBeenSet = true; m_adminGroup.push_back(std::move(value)); return *this; } /** *

The admin group associated with your Active Directory. This field is required * if ACTIVE_DIRECTORY is the selected authentication method of the * new Amazon QuickSight account. For more information about using Active Directory * in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& AddAdminGroup(const char* value) { m_adminGroupHasBeenSet = true; m_adminGroup.push_back(value); return *this; } /** *

The author group associated with your Active Directory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline const Aws::Vector& GetAuthorGroup() const{ return m_authorGroup; } /** *

The author group associated with your Active Directory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline bool AuthorGroupHasBeenSet() const { return m_authorGroupHasBeenSet; } /** *

The author group associated with your Active Directory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline void SetAuthorGroup(const Aws::Vector& value) { m_authorGroupHasBeenSet = true; m_authorGroup = value; } /** *

The author group associated with your Active Directory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline void SetAuthorGroup(Aws::Vector&& value) { m_authorGroupHasBeenSet = true; m_authorGroup = std::move(value); } /** *

The author group associated with your Active Directory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& WithAuthorGroup(const Aws::Vector& value) { SetAuthorGroup(value); return *this;} /** *

The author group associated with your Active Directory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& WithAuthorGroup(Aws::Vector&& value) { SetAuthorGroup(std::move(value)); return *this;} /** *

The author group associated with your Active Directory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& AddAuthorGroup(const Aws::String& value) { m_authorGroupHasBeenSet = true; m_authorGroup.push_back(value); return *this; } /** *

The author group associated with your Active Directory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& AddAuthorGroup(Aws::String&& value) { m_authorGroupHasBeenSet = true; m_authorGroup.push_back(std::move(value)); return *this; } /** *

The author group associated with your Active Directory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& AddAuthorGroup(const char* value) { m_authorGroupHasBeenSet = true; m_authorGroup.push_back(value); return *this; } /** *

The reader group associated with your Active Direcrtory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline const Aws::Vector& GetReaderGroup() const{ return m_readerGroup; } /** *

The reader group associated with your Active Direcrtory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline bool ReaderGroupHasBeenSet() const { return m_readerGroupHasBeenSet; } /** *

The reader group associated with your Active Direcrtory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline void SetReaderGroup(const Aws::Vector& value) { m_readerGroupHasBeenSet = true; m_readerGroup = value; } /** *

The reader group associated with your Active Direcrtory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline void SetReaderGroup(Aws::Vector&& value) { m_readerGroupHasBeenSet = true; m_readerGroup = std::move(value); } /** *

The reader group associated with your Active Direcrtory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& WithReaderGroup(const Aws::Vector& value) { SetReaderGroup(value); return *this;} /** *

The reader group associated with your Active Direcrtory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& WithReaderGroup(Aws::Vector&& value) { SetReaderGroup(std::move(value)); return *this;} /** *

The reader group associated with your Active Direcrtory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& AddReaderGroup(const Aws::String& value) { m_readerGroupHasBeenSet = true; m_readerGroup.push_back(value); return *this; } /** *

The reader group associated with your Active Direcrtory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& AddReaderGroup(Aws::String&& value) { m_readerGroupHasBeenSet = true; m_readerGroup.push_back(std::move(value)); return *this; } /** *

The reader group associated with your Active Direcrtory. For more information * about using Active Directory in Amazon QuickSight, see Using * Active Directory with Amazon QuickSight Enterprise Edition in the Amazon * QuickSight User Guide.

*/ inline CreateAccountSubscriptionRequest& AddReaderGroup(const char* value) { m_readerGroupHasBeenSet = true; m_readerGroup.push_back(value); return *this; } /** *

The first name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline const Aws::String& GetFirstName() const{ return m_firstName; } /** *

The first name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline bool FirstNameHasBeenSet() const { return m_firstNameHasBeenSet; } /** *

The first name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline void SetFirstName(const Aws::String& value) { m_firstNameHasBeenSet = true; m_firstName = value; } /** *

The first name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline void SetFirstName(Aws::String&& value) { m_firstNameHasBeenSet = true; m_firstName = std::move(value); } /** *

The first name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline void SetFirstName(const char* value) { m_firstNameHasBeenSet = true; m_firstName.assign(value); } /** *

The first name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithFirstName(const Aws::String& value) { SetFirstName(value); return *this;} /** *

The first name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithFirstName(Aws::String&& value) { SetFirstName(std::move(value)); return *this;} /** *

The first name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithFirstName(const char* value) { SetFirstName(value); return *this;} /** *

The last name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline const Aws::String& GetLastName() const{ return m_lastName; } /** *

The last name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline bool LastNameHasBeenSet() const { return m_lastNameHasBeenSet; } /** *

The last name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline void SetLastName(const Aws::String& value) { m_lastNameHasBeenSet = true; m_lastName = value; } /** *

The last name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline void SetLastName(Aws::String&& value) { m_lastNameHasBeenSet = true; m_lastName = std::move(value); } /** *

The last name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline void SetLastName(const char* value) { m_lastNameHasBeenSet = true; m_lastName.assign(value); } /** *

The last name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithLastName(const Aws::String& value) { SetLastName(value); return *this;} /** *

The last name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithLastName(Aws::String&& value) { SetLastName(std::move(value)); return *this;} /** *

The last name of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithLastName(const char* value) { SetLastName(value); return *this;} /** *

The email address of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

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

The email address of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

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

The email address of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

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

The email address of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

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

The email address of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

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

The email address of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

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

The email address of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

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

The email address of the author of the Amazon QuickSight account to use for * future communications. This field is required if ENTERPPRISE_AND_Q * is the selected edition of the new Amazon QuickSight account.

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

A 10-digit phone number for the author of the Amazon QuickSight account to * use for future communications. This field is required if * ENTERPPRISE_AND_Q is the selected edition of the new Amazon * QuickSight account.

*/ inline const Aws::String& GetContactNumber() const{ return m_contactNumber; } /** *

A 10-digit phone number for the author of the Amazon QuickSight account to * use for future communications. This field is required if * ENTERPPRISE_AND_Q is the selected edition of the new Amazon * QuickSight account.

*/ inline bool ContactNumberHasBeenSet() const { return m_contactNumberHasBeenSet; } /** *

A 10-digit phone number for the author of the Amazon QuickSight account to * use for future communications. This field is required if * ENTERPPRISE_AND_Q is the selected edition of the new Amazon * QuickSight account.

*/ inline void SetContactNumber(const Aws::String& value) { m_contactNumberHasBeenSet = true; m_contactNumber = value; } /** *

A 10-digit phone number for the author of the Amazon QuickSight account to * use for future communications. This field is required if * ENTERPPRISE_AND_Q is the selected edition of the new Amazon * QuickSight account.

*/ inline void SetContactNumber(Aws::String&& value) { m_contactNumberHasBeenSet = true; m_contactNumber = std::move(value); } /** *

A 10-digit phone number for the author of the Amazon QuickSight account to * use for future communications. This field is required if * ENTERPPRISE_AND_Q is the selected edition of the new Amazon * QuickSight account.

*/ inline void SetContactNumber(const char* value) { m_contactNumberHasBeenSet = true; m_contactNumber.assign(value); } /** *

A 10-digit phone number for the author of the Amazon QuickSight account to * use for future communications. This field is required if * ENTERPPRISE_AND_Q is the selected edition of the new Amazon * QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithContactNumber(const Aws::String& value) { SetContactNumber(value); return *this;} /** *

A 10-digit phone number for the author of the Amazon QuickSight account to * use for future communications. This field is required if * ENTERPPRISE_AND_Q is the selected edition of the new Amazon * QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithContactNumber(Aws::String&& value) { SetContactNumber(std::move(value)); return *this;} /** *

A 10-digit phone number for the author of the Amazon QuickSight account to * use for future communications. This field is required if * ENTERPPRISE_AND_Q is the selected edition of the new Amazon * QuickSight account.

*/ inline CreateAccountSubscriptionRequest& WithContactNumber(const char* value) { SetContactNumber(value); return *this;} private: Edition m_edition; bool m_editionHasBeenSet = false; AuthenticationMethodOption m_authenticationMethod; bool m_authenticationMethodHasBeenSet = false; Aws::String m_awsAccountId; bool m_awsAccountIdHasBeenSet = false; Aws::String m_accountName; bool m_accountNameHasBeenSet = false; Aws::String m_notificationEmail; bool m_notificationEmailHasBeenSet = false; Aws::String m_activeDirectoryName; bool m_activeDirectoryNameHasBeenSet = false; Aws::String m_realm; bool m_realmHasBeenSet = false; Aws::String m_directoryId; bool m_directoryIdHasBeenSet = false; Aws::Vector m_adminGroup; bool m_adminGroupHasBeenSet = false; Aws::Vector m_authorGroup; bool m_authorGroupHasBeenSet = false; Aws::Vector m_readerGroup; bool m_readerGroupHasBeenSet = false; Aws::String m_firstName; bool m_firstNameHasBeenSet = false; Aws::String m_lastName; bool m_lastNameHasBeenSet = false; Aws::String m_emailAddress; bool m_emailAddressHasBeenSet = false; Aws::String m_contactNumber; bool m_contactNumberHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws