updateStreamStorageConfiguration method

Future<void> updateStreamStorageConfiguration({
  1. required String currentVersion,
  2. required StreamStorageConfiguration streamStorageConfiguration,
  3. String? streamARN,
  4. String? streamName,
})

Updates the storage configuration for an existing Kinesis video stream.

This operation allows you to modify the storage tier settings for a stream, enabling you to optimize storage costs and performance based on your access patterns.

UpdateStreamStorageConfiguration is an asynchronous operation.

You must have permissions for the KinesisVideo:UpdateStreamStorageConfiguration action.

May throw AccessDeniedException. May throw ClientLimitExceededException. May throw InvalidArgumentException. May throw ResourceInUseException. May throw ResourceNotFoundException. May throw VersionMismatchException.

Parameter currentVersion : The version of the stream whose storage configuration you want to change. To get the version, call either the DescribeStream or the ListStreams API.

Parameter streamStorageConfiguration : The new storage configuration for the stream. This includes the default storage tier that determines how stream data is stored and accessed.

Different storage tiers offer varying levels of performance and cost optimization to match your specific use case requirements.

Parameter streamARN : The Amazon Resource Name (ARN) of the stream for which you want to update the storage configuration.

Parameter streamName : The name of the stream for which you want to update the storage configuration.

Implementation

Future<void> updateStreamStorageConfiguration({
  required String currentVersion,
  required StreamStorageConfiguration streamStorageConfiguration,
  String? streamARN,
  String? streamName,
}) async {
  final $payload = <String, dynamic>{
    'CurrentVersion': currentVersion,
    'StreamStorageConfiguration': streamStorageConfiguration,
    if (streamARN != null) 'StreamARN': streamARN,
    if (streamName != null) 'StreamName': streamName,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/updateStreamStorageConfiguration',
    exceptionFnMap: _exceptionFns,
  );
}