

# ListRegions
<a name="API_ListRegions"></a>

Lists all the Regions for a given account and their respective opt-in statuses. Optionally, this list can be filtered by the `region-opt-status-contains` parameter. 

## Request Syntax
<a name="API_ListRegions_RequestSyntax"></a>

```
POST /listRegions HTTP/1.1
Content-type: application/json

{
   "AccountId": "string",
   "MaxResults": number,
   "NextToken": "string",
   "RegionOptStatusContains": [ "string" ]
}
```

## URI Request Parameters
<a name="API_ListRegions_RequestParameters"></a>

The request does not use any URI parameters.

## Request Body
<a name="API_ListRegions_RequestBody"></a>

The request accepts the following data in JSON format.

 ** [AccountId](#API_ListRegions_RequestSyntax) **   <a name="accounts-ListRegions-request-AccountId"></a>
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](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_getting-started_concepts.html#account) or a delegated administrator account. The specified account ID must be a member account in the same organization. The organization must have [all features enabled](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_manage_org_support-all-features.html), and the organization must have [trusted access](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_integrate_services.html) enabled for the Account Management service, and optionally a [delegated admin](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_getting-started_concepts.html#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.  
Type: String  
Pattern: `\d{12}`   
Required: No

 ** [MaxResults](#API_ListRegions_RequestSyntax) **   <a name="accounts-ListRegions-request-MaxResults"></a>
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 CLI. For usage examples, see [Pagination](http://docs.aws.amazon.com/cli/latest/userguide/pagination.html) in the * Amazon Command Line Interface User Guide*.   
Type: Integer  
Valid Range: Minimum value of 1. Maximum value of 50.  
Required: No

 ** [NextToken](#API_ListRegions_RequestSyntax) **   <a name="accounts-ListRegions-request-NextToken"></a>
A token used to specify where to start paginating. This is the `NextToken` from a previously truncated response. For usage examples, see [Pagination](http://docs.aws.amazon.com/cli/latest/userguide/pagination.html) in the * Amazon Command Line Interface User Guide*.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1000.  
Required: No

 ** [RegionOptStatusContains](#API_ListRegions_RequestSyntax) **   <a name="accounts-ListRegions-request-RegionOptStatusContains"></a>
A list of Region statuses (Enabling, Enabled, Disabling, Disabled, Enabled\$1by\$1default) 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.  
Type: Array of strings  
Valid Values: `ENABLED | ENABLING | DISABLING | DISABLED | ENABLED_BY_DEFAULT`   
Required: No

## Response Syntax
<a name="API_ListRegions_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "NextToken": "string",
   "Regions": [ 
      { 
         "RegionName": "string",
         "RegionOptStatus": "string"
      }
   ]
}
```

## Response Elements
<a name="API_ListRegions_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [NextToken](#API_ListRegions_ResponseSyntax) **   <a name="accounts-ListRegions-response-NextToken"></a>
If there is more data to be returned, this will be populated. It should be passed into the `next-token` request parameter of `list-regions`.  
Type: String

 ** [Regions](#API_ListRegions_ResponseSyntax) **   <a name="accounts-ListRegions-response-Regions"></a>
This is a list of Regions for a given account, or if the filtered parameter was used, a list of Regions that match the filter criteria set in the `filter` parameter.  
Type: Array of [Region](API_Region.md) objects

## Errors
<a name="API_ListRegions_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
The operation failed because the calling identity doesn't have the minimum required permissions.    
 ** errorType **   
The value populated to the `x-amzn-ErrorType` response header by API Gateway.
HTTP Status Code: 403

 ** InternalServerException **   
The operation failed because of an error internal to Amazon. Try your operation again later.    
 ** errorType **   
The value populated to the `x-amzn-ErrorType` response header by API Gateway.
HTTP Status Code: 500

 ** TooManyRequestsException **   
The operation failed because it was called too frequently and exceeded a throttle limit.    
 ** errorType **   
The value populated to the `x-amzn-ErrorType` response header by API Gateway.
HTTP Status Code: 429

 ** ValidationException **   
The operation failed because one of the input parameters was invalid.    
 ** fieldList **   
The field where the invalid entry was detected.  
 ** message **   
The message that informs you about what was invalid about the request.  
 ** reason **   
The reason that validation failed.
HTTP Status Code: 400

## See Also
<a name="API_ListRegions_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/account-2021-02-01/ListRegions) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/account-2021-02-01/ListRegions) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/account-2021-02-01/ListRegions) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/account-2021-02-01/ListRegions) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/account-2021-02-01/ListRegions) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/account-2021-02-01/ListRegions) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/account-2021-02-01/ListRegions) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/account-2021-02-01/ListRegions) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/account-2021-02-01/ListRegions) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/account-2021-02-01/ListRegions) 