searchResources method

Future<SearchResourcesOutput> searchResources({
  1. required ResourceQuery resourceQuery,
  2. int? maxResults,
  3. String? nextToken,
})

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

Minimum permissions

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

  • resource-groups:SearchResources

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

Parameter resourceQuery : The search query, using the same formats that are supported for resource group definition. For more information, see CreateGroup.

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<SearchResourcesOutput> searchResources({
  required ResourceQuery resourceQuery,
  int? maxResults,
  String? nextToken,
}) async {
  ArgumentError.checkNotNull(resourceQuery, 'resourceQuery');
  _s.validateNumRange(
    'maxResults',
    maxResults,
    1,
    50,
  );
  _s.validateStringLength(
    'nextToken',
    nextToken,
    0,
    8192,
  );
  final $payload = <String, dynamic>{
    'ResourceQuery': resourceQuery,
    if (maxResults != null) 'MaxResults': maxResults,
    if (nextToken != null) 'NextToken': nextToken,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/resources/search',
    exceptionFnMap: _exceptionFns,
  );
  return SearchResourcesOutput.fromJson(response);
}