listGroupResources method

Future<ListGroupResourcesOutput> listGroupResources(
  1. {List<ResourceFilter>? filters,
  2. String? group,
  3. String? groupName,
  4. int? maxResults,
  5. String? nextToken}
)

Returns a list of ARNs of the resources that are members of a specified resource group.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:ListGroupResources

May throw UnauthorizedException. May throw BadRequestException. May throw ForbiddenException. May throw NotFoundException. May throw MethodNotAllowedException. May throw TooManyRequestsException. May throw InternalServerErrorException.

Parameter filters : Filters, formatted as ResourceFilter objects, that you want to apply to a ListGroupResources operation. Filters the results to include only those of the specified resource types.

  • resource-type - Filter resources by their type. Specify up to five resource types in the format AWS::ServiceCode::ResourceType. For example, AWS::EC2::Instance, or AWS::S3::Bucket.
When you specify a resource-type filter for ListGroupResources, AWS Resource Groups validates your filter resource types against the types that are defined in the query associated with the group. For example, if a group contains only S3 buckets because its query specifies only that resource type, but your resource-type filter includes EC2 instances, AWS Resource Groups does not filter for EC2 instances. In this case, a ListGroupResources request returns a BadRequestException error with a message similar to the following:

The resource types specified as filters in the request are not valid.

The error includes a list of resource types that failed the validation because they are not part of the query associated with the group. This validation doesn't occur when the group query specifies AWS::AllSupported, because a group based on such a query can contain any of the allowed resource types for the query type (tag-based or AWS CloudFormation stack-based queries).

Parameter group : The name or the ARN of the resource group

Parameter groupName :

Parameter maxResults : The total number of results that you want included on each page of the response. If you do not include this parameter, it defaults to a value that is specific to the operation. If additional items exist beyond the maximum you specify, the NextToken response element is present and has a value (is not null). Include that value as the NextToken request parameter in the next call to the operation to get the next part of the results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

Parameter nextToken : The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value provided by a previous call's NextToken response to indicate where the output should continue from.

Implementation

Future<ListGroupResourcesOutput> listGroupResources({
  List<ResourceFilter>? filters,
  String? group,
  String? groupName,
  int? maxResults,
  String? nextToken,
}) async {
  _s.validateStringLength(
    'group',
    group,
    1,
    1600,
  );
  _s.validateStringLength(
    'groupName',
    groupName,
    1,
    128,
  );
  _s.validateNumRange(
    'maxResults',
    maxResults,
    1,
    50,
  );
  _s.validateStringLength(
    'nextToken',
    nextToken,
    0,
    8192,
  );
  final $payload = <String, dynamic>{
    if (filters != null) 'Filters': filters,
    if (group != null) 'Group': group,
    if (groupName != null) 'GroupName': groupName,
    if (maxResults != null) 'MaxResults': maxResults,
    if (nextToken != null) 'NextToken': nextToken,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/list-group-resources',
    exceptionFnMap: _exceptionFns,
  );
  return ListGroupResourcesOutput.fromJson(response);
}