listTagsForResource method

Future<ListTagsForResourceResponse> listTagsForResource({
  1. required String resourceARN,
  2. int? limit,
  3. String? nextMarker,
})
Retrieves the TagInfoForResource for the specified resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each AWS resource, up to 50 tags for a resource.

You can tag the AWS resources that you manage through AWS WAF: web ACLs, rule groups, IP sets, and regex pattern sets. You can't manage or view tags through the AWS WAF console.

May throw WAFInternalErrorException. May throw WAFInvalidParameterException. May throw WAFNonexistentItemException. May throw WAFTagOperationException. May throw WAFTagOperationInternalErrorException. May throw WAFInvalidOperationException.

Parameter resourceARN : The Amazon Resource Name (ARN) of the resource.

Parameter limit : The maximum number of objects that you want AWS WAF to return for this request. If more objects are available, in the response, AWS WAF provides a NextMarker value that you can use in a subsequent call to get the next batch of objects.

Parameter nextMarker : When you request a list of objects with a Limit setting, if the number of objects that are still available for retrieval exceeds the limit, AWS WAF returns a NextMarker value in the response. To retrieve the next batch of objects, provide the marker from the prior call in your next request.

Implementation

Future<ListTagsForResourceResponse> listTagsForResource({
  required String resourceARN,
  int? limit,
  String? nextMarker,
}) async {
  ArgumentError.checkNotNull(resourceARN, 'resourceARN');
  _s.validateStringLength(
    'resourceARN',
    resourceARN,
    20,
    2048,
    isRequired: true,
  );
  _s.validateNumRange(
    'limit',
    limit,
    1,
    100,
  );
  _s.validateStringLength(
    'nextMarker',
    nextMarker,
    1,
    256,
  );
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'AWSWAF_20190729.ListTagsForResource'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'ResourceARN': resourceARN,
      if (limit != null) 'Limit': limit,
      if (nextMarker != null) 'NextMarker': nextMarker,
    },
  );

  return ListTagsForResourceResponse.fromJson(jsonResponse.body);
}