

This is the new *Amazon CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [Amazon CloudFormation User Guide](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS::KinesisVideo::Stream
<a name="aws-resource-kinesisvideo-stream"></a>

Specifies a new Kinesis video stream. 

When you create a new stream, Kinesis Video Streams assigns it a version number. When you change the stream's metadata, Kinesis Video Streams updates the version. 

`CreateStream` is an asynchronous operation.

For information about how the service works, see [How it Works](https://docs.amazonaws.cn/kinesisvideostreams/latest/dg/how-it-works.html). 

You must have permissions for the `KinesisVideo:CreateStream` action.

## Syntax
<a name="aws-resource-kinesisvideo-stream-syntax"></a>

To declare this entity in your Amazon CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-kinesisvideo-stream-syntax.json"></a>

```
{
  "Type" : "AWS::KinesisVideo::Stream",
  "Properties" : {
      "[DataRetentionInHours](#cfn-kinesisvideo-stream-dataretentioninhours)" : {{Integer}},
      "[DeviceName](#cfn-kinesisvideo-stream-devicename)" : {{String}},
      "[KmsKeyId](#cfn-kinesisvideo-stream-kmskeyid)" : {{String}},
      "[MediaType](#cfn-kinesisvideo-stream-mediatype)" : {{String}},
      "[Name](#cfn-kinesisvideo-stream-name)" : {{String}},
      "[StreamStorageConfiguration](#cfn-kinesisvideo-stream-streamstorageconfiguration)" : {{StreamStorageConfiguration}},
      "[Tags](#cfn-kinesisvideo-stream-tags)" : {{[ Tag, ... ]}}
    }
}
```

### YAML
<a name="aws-resource-kinesisvideo-stream-syntax.yaml"></a>

```
Type: AWS::KinesisVideo::Stream
Properties:
  [DataRetentionInHours](#cfn-kinesisvideo-stream-dataretentioninhours): {{Integer}}
  [DeviceName](#cfn-kinesisvideo-stream-devicename): {{String}}
  [KmsKeyId](#cfn-kinesisvideo-stream-kmskeyid): {{String}}
  [MediaType](#cfn-kinesisvideo-stream-mediatype): {{String}}
  [Name](#cfn-kinesisvideo-stream-name): {{String}}
  [StreamStorageConfiguration](#cfn-kinesisvideo-stream-streamstorageconfiguration): {{
    StreamStorageConfiguration}}
  [Tags](#cfn-kinesisvideo-stream-tags): {{
    - Tag}}
```

## Properties
<a name="aws-resource-kinesisvideo-stream-properties"></a>

`DataRetentionInHours`  <a name="cfn-kinesisvideo-stream-dataretentioninhours"></a>
How long the stream retains data, in hours.  
*Required*: No  
*Type*: Integer  
*Minimum*: `0`  
*Maximum*: `87600`  
*Update requires*: [No interruption](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DeviceName`  <a name="cfn-kinesisvideo-stream-devicename"></a>
The name of the device that is associated with the stream.  
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z0-9_.-]+`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KmsKeyId`  <a name="cfn-kinesisvideo-stream-kmskeyid"></a>
The ID of the Amazon Key Management Service (Amazon KMS) key that Kinesis Video Streams uses to encrypt data on the stream.  
*Required*: No  
*Type*: String  
*Pattern*: `.+`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MediaType`  <a name="cfn-kinesisvideo-stream-mediatype"></a>
The `MediaType` of the stream.   
*Required*: No  
*Type*: String  
*Pattern*: `[\w\-\.\+]+/[\w\-\.\+]+(,[\w\-\.\+]+/[\w\-\.\+]+)*`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-kinesisvideo-stream-name"></a>
The name of the stream.  
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z0-9_.-]+`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`StreamStorageConfiguration`  <a name="cfn-kinesisvideo-stream-streamstorageconfiguration"></a>
The configuration for stream storage, including the default storage tier for stream data. This configuration determines how stream data is stored and accessed, with different tiers offering varying levels of performance and cost optimization.  
*Required*: No  
*Type*: [StreamStorageConfiguration](aws-properties-kinesisvideo-stream-streamstorageconfiguration.md)  
*Update requires*: [No interruption](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-kinesisvideo-stream-tags"></a>
An array of key-value pairs to apply to this resource.  
For more information, see [Tag](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).  
*Required*: No  
*Type*: Array of [Tag](aws-properties-kinesisvideo-stream-tag.md)  
*Minimum*: `1`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-kinesisvideo-stream-return-values"></a>

### Ref
<a name="aws-resource-kinesisvideo-stream-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-kinesisvideo-stream-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-kinesisvideo-stream-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the stream.