tagResource method

Future<TagResourceResponse> tagResource({
  1. required String resourceArn,
  2. required List<Tag> tags,
})

Assigns one or more tags (key-value pairs) to the specified QuickSight resource.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only resources with certain tag values. You can use the TagResource operation with a resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a resource. QuickSight supports tagging on data set, data source, dashboard, and template.

Tagging for QuickSight works in a similar way to tagging for other AWS services, except for the following:

  • You can't use tags to track AWS costs for QuickSight. This restriction is because QuickSight costs are based on users and SPICE capacity, which aren't taggable resources.
  • QuickSight doesn't currently support the Tag Editor for AWS Resource Groups.

May throw LimitExceededException. May throw AccessDeniedException. May throw InvalidParameterValueException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw InternalFailureException.

Parameter resourceArn : The Amazon Resource Name (ARN) of the resource that you want to tag.

Parameter tags : Contains a map of the key-value pairs for the resource tag or tags assigned to the resource.

Implementation

Future<TagResourceResponse> tagResource({
  required String resourceArn,
  required List<Tag> tags,
}) async {
  ArgumentError.checkNotNull(resourceArn, 'resourceArn');
  ArgumentError.checkNotNull(tags, 'tags');
  final $payload = <String, dynamic>{
    'Tags': tags,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/resources/${Uri.encodeComponent(resourceArn)}/tags',
    exceptionFnMap: _exceptionFns,
  );
  return TagResourceResponse.fromJson(response);
}