tagResource method

Future<void> tagResource({
  1. required String resourceARN,
  2. required Map<String, String> tags,
  3. String? streamId,
})

Adds or updates tags for the specified Kinesis resource. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources. You can assign up to 50 tags to a Kinesis resource.

May throw AccessDeniedException. May throw InvalidArgumentException. May throw LimitExceededException. May throw ResourceInUseException. May throw ResourceNotFoundException.

Parameter resourceARN : The Amazon Resource Name (ARN) of the Kinesis resource to which to add tags.

Parameter tags : An array of tags to be added to the Kinesis resource. A tag consists of a required key and an optional value. You can add up to 50 tags per resource.

Tags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @.

Parameter streamId : Not Implemented. Reserved for future use.

Implementation

Future<void> tagResource({
  required String resourceARN,
  required Map<String, String> tags,
  String? streamId,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'Kinesis_20131202.TagResource'
  };
  await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'ResourceARN': resourceARN,
      'Tags': tags,
      if (streamId != null) 'StreamId': streamId,
    },
  );
}