/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Account { namespace Model { /** */ class ListRegionsRequest : public AccountRequest { public: AWS_ACCOUNT_API ListRegionsRequest(); // 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 "ListRegions"; } 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 don't 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. The specified * account ID must also 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, don't * specify this parameter. Instead, 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 don't 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. The specified * account ID must also 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, don't * specify this parameter. Instead, 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 don't 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. The specified * account ID must also 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, don't * specify this parameter. Instead, 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 don't 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. The specified * account ID must also 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, don't * specify this parameter. Instead, 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 don't 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. The specified * account ID must also 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, don't * specify this parameter. Instead, 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 don't 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. The specified * account ID must also 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, don't * specify this parameter. Instead, call the operation using an identity belonging * to the account whose contacts you wish to retrieve or modify.

*/ inline ListRegionsRequest& 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 don't 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. The specified * account ID must also 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, don't * specify this parameter. Instead, call the operation using an identity belonging * to the account whose contacts you wish to retrieve or modify.

*/ inline ListRegionsRequest& 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 don't 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. The specified * account ID must also 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, don't * specify this parameter. Instead, call the operation using an identity belonging * to the account whose contacts you wish to retrieve or modify.

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

The total number of items to return in the command’s output. If the total * number of items available is more than the value specified, a * NextToken is provided in the command’s output. To resume * pagination, provide the NextToken value in the * starting-token argument of a subsequent command. Do not use the * NextToken response element directly outside of the Amazon Web * Services CLI. For usage examples, see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline int GetMaxResults() const{ return m_maxResults; } /** *

The total number of items to return in the command’s output. If the total * number of items available is more than the value specified, a * NextToken is provided in the command’s output. To resume * pagination, provide the NextToken value in the * starting-token argument of a subsequent command. Do not use the * NextToken response element directly outside of the Amazon Web * Services CLI. For usage examples, see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } /** *

The total number of items to return in the command’s output. If the total * number of items available is more than the value specified, a * NextToken is provided in the command’s output. To resume * pagination, provide the NextToken value in the * starting-token argument of a subsequent command. Do not use the * NextToken response element directly outside of the Amazon Web * Services CLI. For usage examples, see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } /** *

The total number of items to return in the command’s output. If the total * number of items available is more than the value specified, a * NextToken is provided in the command’s output. To resume * pagination, provide the NextToken value in the * starting-token argument of a subsequent command. Do not use the * NextToken response element directly outside of the Amazon Web * Services CLI. For usage examples, see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline ListRegionsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} /** *

A token used to specify where to start paginating. This is the * NextToken from a previously truncated response. For usage examples, * see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline const Aws::String& GetNextToken() const{ return m_nextToken; } /** *

A token used to specify where to start paginating. This is the * NextToken from a previously truncated response. For usage examples, * see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } /** *

A token used to specify where to start paginating. This is the * NextToken from a previously truncated response. For usage examples, * see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } /** *

A token used to specify where to start paginating. This is the * NextToken from a previously truncated response. For usage examples, * see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } /** *

A token used to specify where to start paginating. This is the * NextToken from a previously truncated response. For usage examples, * see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } /** *

A token used to specify where to start paginating. This is the * NextToken from a previously truncated response. For usage examples, * see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline ListRegionsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} /** *

A token used to specify where to start paginating. This is the * NextToken from a previously truncated response. For usage examples, * see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline ListRegionsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} /** *

A token used to specify where to start paginating. This is the * NextToken from a previously truncated response. For usage examples, * see Pagination * in the Amazon Web Services Command Line Interface User Guide.

*/ inline ListRegionsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} /** *

A list of Region statuses (Enabling, Enabled, Disabling, Disabled, * Enabled_by_default) to use to filter the list of Regions for a given account. * For example, passing in a value of ENABLING will only return a list of Regions * with a Region status of ENABLING.

*/ inline const Aws::Vector& GetRegionOptStatusContains() const{ return m_regionOptStatusContains; } /** *

A list of Region statuses (Enabling, Enabled, Disabling, Disabled, * Enabled_by_default) to use to filter the list of Regions for a given account. * For example, passing in a value of ENABLING will only return a list of Regions * with a Region status of ENABLING.

*/ inline bool RegionOptStatusContainsHasBeenSet() const { return m_regionOptStatusContainsHasBeenSet; } /** *

A list of Region statuses (Enabling, Enabled, Disabling, Disabled, * Enabled_by_default) to use to filter the list of Regions for a given account. * For example, passing in a value of ENABLING will only return a list of Regions * with a Region status of ENABLING.

*/ inline void SetRegionOptStatusContains(const Aws::Vector& value) { m_regionOptStatusContainsHasBeenSet = true; m_regionOptStatusContains = value; } /** *

A list of Region statuses (Enabling, Enabled, Disabling, Disabled, * Enabled_by_default) to use to filter the list of Regions for a given account. * For example, passing in a value of ENABLING will only return a list of Regions * with a Region status of ENABLING.

*/ inline void SetRegionOptStatusContains(Aws::Vector&& value) { m_regionOptStatusContainsHasBeenSet = true; m_regionOptStatusContains = std::move(value); } /** *

A list of Region statuses (Enabling, Enabled, Disabling, Disabled, * Enabled_by_default) to use to filter the list of Regions for a given account. * For example, passing in a value of ENABLING will only return a list of Regions * with a Region status of ENABLING.

*/ inline ListRegionsRequest& WithRegionOptStatusContains(const Aws::Vector& value) { SetRegionOptStatusContains(value); return *this;} /** *

A list of Region statuses (Enabling, Enabled, Disabling, Disabled, * Enabled_by_default) to use to filter the list of Regions for a given account. * For example, passing in a value of ENABLING will only return a list of Regions * with a Region status of ENABLING.

*/ inline ListRegionsRequest& WithRegionOptStatusContains(Aws::Vector&& value) { SetRegionOptStatusContains(std::move(value)); return *this;} /** *

A list of Region statuses (Enabling, Enabled, Disabling, Disabled, * Enabled_by_default) to use to filter the list of Regions for a given account. * For example, passing in a value of ENABLING will only return a list of Regions * with a Region status of ENABLING.

*/ inline ListRegionsRequest& AddRegionOptStatusContains(const RegionOptStatus& value) { m_regionOptStatusContainsHasBeenSet = true; m_regionOptStatusContains.push_back(value); return *this; } /** *

A list of Region statuses (Enabling, Enabled, Disabling, Disabled, * Enabled_by_default) to use to filter the list of Regions for a given account. * For example, passing in a value of ENABLING will only return a list of Regions * with a Region status of ENABLING.

*/ inline ListRegionsRequest& AddRegionOptStatusContains(RegionOptStatus&& value) { m_regionOptStatusContainsHasBeenSet = true; m_regionOptStatusContains.push_back(std::move(value)); return *this; } private: Aws::String m_accountId; bool m_accountIdHasBeenSet = false; int m_maxResults; bool m_maxResultsHasBeenSet = false; Aws::String m_nextToken; bool m_nextTokenHasBeenSet = false; Aws::Vector m_regionOptStatusContains; bool m_regionOptStatusContainsHasBeenSet = false; }; } // namespace Model } // namespace Account } // namespace Aws