AWS Resource Groups
API Reference (API Version 2017-11-27)


Returns a list of AWS resource identifiers that matches a specified query. The query uses the same format as a resource query in a CreateGroup or UpdateGroupQuery operation.

Request Syntax

POST /resources/search HTTP/1.1 Content-type: application/json { "MaxResults": number, "NextToken": "string", "ResourceQuery": { "Query": "string", "Type": "string" } }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.


The maximum number of group member ARNs returned by SearchResources in paginated output. By default, this number is 50.

Type: Integer

Valid Range: Minimum value of 1. Maximum value of 50.

Required: No


The NextToken value that is returned in a paginated SearchResources request. To get the next page of results, run the call again, add the NextToken parameter, and specify the NextToken value.

Type: String

Required: No


The search query, using the same formats that are supported for resource group definition.

Type: ResourceQuery object

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "NextToken": "string", "QueryErrors": [ { "ErrorCode": "string", "Message": "string" } ], "ResourceIdentifiers": [ { "ResourceArn": "string", "ResourceType": "string" } ] }

Response Elements

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

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


The NextToken value to include in a subsequent SearchResources request, to get more results.

Type: String


A list of QueryError objects. Each error is an object that contains ErrorCode and Message structures. Possible values for ErrorCode are CLOUDFORMATION_STACK_INACTIVE and CLOUDFORMATION_STACK_NOT_EXISTING.

Type: Array of QueryError objects


The ARNs and resource types of resources that are members of the group that you specified.

Type: Array of ResourceIdentifier objects


For information about the errors that are common to all actions, see Common Errors.


The request does not comply with validation rules that are defined for the request parameters.

HTTP Status Code: 400


The caller is not authorized to make the request.

HTTP Status Code: 403


An internal error occurred while processing the request.

HTTP Status Code: 500


The request uses an HTTP method which is not allowed for the specified resource.

HTTP Status Code: 405


The caller has exceeded throttling limits.

HTTP Status Code: 429


The request has not been applied because it lacks valid authentication credentials for the target resource.

HTTP Status Code: 401


Sample Request

POST /resources/search HTTP/1.1 Content-type: application/json { "MaxResults": 25, "NextToken": "eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==", "ResourceQuery": { "Query": "{\"ResourceTypeFilters\":[\"AWS::AllSupported\"],\"TagFilters\":[{\"Key\":\"Stage\",\"Values\":[\"Test\",\"Prod\"]}]}", "Type": "TAG_FILTERS_1_0" } }

Sample Response

HTTP/1.1 200 Content-type: application/json { "NextToken": "eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==", "ResourceIdentifiers": [ { "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:instance/*", "ResourceType": "instance" }, { "ResourceArn": "arn:aws:ec2:us-west-2:123456789000:instance/*", "ResourceType": "instance" }, { "ResourceArn": "arn:aws:rds:us-west-2:123456789012:db:mysql-db-instance1", "ResourceType": "db-instance" } ] }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: