API Reference

PREVIEW DOCUMENTATION - This is a preview of a new format for the AWS SDK for Go API Reference documentation. For the current AWS SDK for Go API Reference, see

We welcome your feedback on this new version of the documentation. Send your comments to


import ""

type CreateStreamInput struct { DataRetentionInHours *int64 `type:"integer"` DeviceName *string `min:"1" type:"string"` KmsKeyId *string `min:"1" type:"string"` MediaType *string `min:"1" type:"string"` StreamName *string `min:"1" type:"string" required:"true"` Tags map[string]*string `min:"1" type:"map"` }


Type: *int64

The number of hours that you want to retain the data in the stream. Kinesis Video Streams retains the data in a data store that is associated with the stream.

The default value is 0, indicating that the stream does not persist data.

When the DataRetentionInHours value is 0, consumers can still consume the fragments that remain in the service host buffer, which has a retention time limit of 5 minutes and a retention memory limit of 200 MB. Fragments are removed from the buffer when either limit is reached.


Type: *string

The name of the device that is writing to the stream.

In the current implementation, Kinesis Video Streams does not use this name.


Type: *string

The ID of the AWS Key Management Service (AWS KMS) key that you want Kinesis Video Streams to use to encrypt stream data.

If no key ID is specified, the default, Kinesis Video-managed key (aws/kinesisvideo) is used.

For more information, see DescribeKey (


Type: *string

The media type of the stream. Consumers of the stream can use this information when processing the stream. For more information about media types, see Media Types ( If you choose to specify the MediaType, see Naming Requirements ( for guidelines.

This parameter is optional; the default value is null (or empty in JSON).


Type: *string

A name for the stream that you are creating.

The stream name is an identifier for the stream, and must be unique for each account and region.

StreamName is a required field


Type: map[string]*string

A list of tags to associate with the specified stream. Each tag is a key-value pair (the value is optional).



func (s CreateStreamInput) GoString() string

GoString returns the string representation


func (s *CreateStreamInput) SetDataRetentionInHours(v int64) *CreateStreamInput

SetDataRetentionInHours sets the DataRetentionInHours field's value.


func (s *CreateStreamInput) SetDeviceName(v string) *CreateStreamInput

SetDeviceName sets the DeviceName field's value.


func (s *CreateStreamInput) SetKmsKeyId(v string) *CreateStreamInput

SetKmsKeyId sets the KmsKeyId field's value.


func (s *CreateStreamInput) SetMediaType(v string) *CreateStreamInput

SetMediaType sets the MediaType field's value.


func (s *CreateStreamInput) SetStreamName(v string) *CreateStreamInput

SetStreamName sets the StreamName field's value.


func (s *CreateStreamInput) SetTags(v map[string]*string) *CreateStreamInput

SetTags sets the Tags field's value.


func (s CreateStreamInput) String() string

String returns the string representation


func (s *CreateStreamInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

On this page: