1. Packages
  2. AWS Cloud Control
  3. API Docs
  4. kinesis
  5. Stream

We recommend new projects start with resources from the AWS provider.

AWS Cloud Control v1.44.0 published on Friday, Dec 19, 2025 by Pulumi
aws-native logo

We recommend new projects start with resources from the AWS provider.

AWS Cloud Control v1.44.0 published on Friday, Dec 19, 2025 by Pulumi

    Resource Type definition for AWS::Kinesis::Stream

    Create Stream Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Stream(name: string, args?: StreamArgs, opts?: CustomResourceOptions);
    @overload
    def Stream(resource_name: str,
               args: Optional[StreamArgs] = None,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def Stream(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               desired_shard_level_metrics: Optional[Sequence[StreamEnhancedMetric]] = None,
               max_record_size_in_ki_b: Optional[int] = None,
               name: Optional[str] = None,
               retention_period_hours: Optional[int] = None,
               shard_count: Optional[int] = None,
               stream_encryption: Optional[StreamEncryptionArgs] = None,
               stream_mode_details: Optional[StreamModeDetailsArgs] = None,
               tags: Optional[Sequence[_root_inputs.TagArgs]] = None,
               warm_throughput_mi_bps: Optional[int] = None)
    func NewStream(ctx *Context, name string, args *StreamArgs, opts ...ResourceOption) (*Stream, error)
    public Stream(string name, StreamArgs? args = null, CustomResourceOptions? opts = null)
    public Stream(String name, StreamArgs args)
    public Stream(String name, StreamArgs args, CustomResourceOptions options)
    
    type: aws-native:kinesis:Stream
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args StreamArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args StreamArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args StreamArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args StreamArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args StreamArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Stream Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The Stream resource accepts the following input properties:

    DesiredShardLevelMetrics List<Pulumi.AwsNative.Kinesis.StreamEnhancedMetric>
    The final list of shard-level metrics
    MaxRecordSizeInKiB int
    Maximum size of a data record in KiB allowed to be put into Kinesis stream.
    Name string
    The name of the Kinesis stream.
    RetentionPeriodHours int
    The number of hours for the data records that are stored in shards to remain accessible.
    ShardCount int
    The number of shards that the stream uses. Required when StreamMode = PROVISIONED is passed.
    StreamEncryption Pulumi.AwsNative.Kinesis.Inputs.StreamEncryption
    When specified, enables or updates server-side encryption using an AWS KMS key for a specified stream.
    StreamModeDetails Pulumi.AwsNative.Kinesis.Inputs.StreamModeDetails
    The mode in which the stream is running.
    Tags List<Pulumi.AwsNative.Inputs.Tag>
    An arbitrary set of tags (key-value pairs) to associate with the Kinesis stream.
    WarmThroughputMiBps int
    Target warm throughput in MiB/s for the stream. This property can ONLY be set when StreamMode is ON_DEMAND.
    DesiredShardLevelMetrics []StreamEnhancedMetric
    The final list of shard-level metrics
    MaxRecordSizeInKiB int
    Maximum size of a data record in KiB allowed to be put into Kinesis stream.
    Name string
    The name of the Kinesis stream.
    RetentionPeriodHours int
    The number of hours for the data records that are stored in shards to remain accessible.
    ShardCount int
    The number of shards that the stream uses. Required when StreamMode = PROVISIONED is passed.
    StreamEncryption StreamEncryptionArgs
    When specified, enables or updates server-side encryption using an AWS KMS key for a specified stream.
    StreamModeDetails StreamModeDetailsArgs
    The mode in which the stream is running.
    Tags TagArgs
    An arbitrary set of tags (key-value pairs) to associate with the Kinesis stream.
    WarmThroughputMiBps int
    Target warm throughput in MiB/s for the stream. This property can ONLY be set when StreamMode is ON_DEMAND.
    desiredShardLevelMetrics List<StreamEnhancedMetric>
    The final list of shard-level metrics
    maxRecordSizeInKiB Integer
    Maximum size of a data record in KiB allowed to be put into Kinesis stream.
    name String
    The name of the Kinesis stream.
    retentionPeriodHours Integer
    The number of hours for the data records that are stored in shards to remain accessible.
    shardCount Integer
    The number of shards that the stream uses. Required when StreamMode = PROVISIONED is passed.
    streamEncryption StreamEncryption
    When specified, enables or updates server-side encryption using an AWS KMS key for a specified stream.
    streamModeDetails StreamModeDetails
    The mode in which the stream is running.
    tags List<Tag>
    An arbitrary set of tags (key-value pairs) to associate with the Kinesis stream.
    warmThroughputMiBps Integer
    Target warm throughput in MiB/s for the stream. This property can ONLY be set when StreamMode is ON_DEMAND.
    desiredShardLevelMetrics StreamEnhancedMetric[]
    The final list of shard-level metrics
    maxRecordSizeInKiB number
    Maximum size of a data record in KiB allowed to be put into Kinesis stream.
    name string
    The name of the Kinesis stream.
    retentionPeriodHours number
    The number of hours for the data records that are stored in shards to remain accessible.
    shardCount number
    The number of shards that the stream uses. Required when StreamMode = PROVISIONED is passed.
    streamEncryption StreamEncryption
    When specified, enables or updates server-side encryption using an AWS KMS key for a specified stream.
    streamModeDetails StreamModeDetails
    The mode in which the stream is running.
    tags Tag[]
    An arbitrary set of tags (key-value pairs) to associate with the Kinesis stream.
    warmThroughputMiBps number
    Target warm throughput in MiB/s for the stream. This property can ONLY be set when StreamMode is ON_DEMAND.
    desired_shard_level_metrics Sequence[StreamEnhancedMetric]
    The final list of shard-level metrics
    max_record_size_in_ki_b int
    Maximum size of a data record in KiB allowed to be put into Kinesis stream.
    name str
    The name of the Kinesis stream.
    retention_period_hours int
    The number of hours for the data records that are stored in shards to remain accessible.
    shard_count int
    The number of shards that the stream uses. Required when StreamMode = PROVISIONED is passed.
    stream_encryption StreamEncryptionArgs
    When specified, enables or updates server-side encryption using an AWS KMS key for a specified stream.
    stream_mode_details StreamModeDetailsArgs
    The mode in which the stream is running.
    tags Sequence[TagArgs]
    An arbitrary set of tags (key-value pairs) to associate with the Kinesis stream.
    warm_throughput_mi_bps int
    Target warm throughput in MiB/s for the stream. This property can ONLY be set when StreamMode is ON_DEMAND.
    desiredShardLevelMetrics List<"IncomingBytes" | "IncomingRecords" | "OutgoingBytes" | "OutgoingRecords" | "WriteProvisionedThroughputExceeded" | "ReadProvisionedThroughputExceeded" | "IteratorAgeMilliseconds" | "ALL">
    The final list of shard-level metrics
    maxRecordSizeInKiB Number
    Maximum size of a data record in KiB allowed to be put into Kinesis stream.
    name String
    The name of the Kinesis stream.
    retentionPeriodHours Number
    The number of hours for the data records that are stored in shards to remain accessible.
    shardCount Number
    The number of shards that the stream uses. Required when StreamMode = PROVISIONED is passed.
    streamEncryption Property Map
    When specified, enables or updates server-side encryption using an AWS KMS key for a specified stream.
    streamModeDetails Property Map
    The mode in which the stream is running.
    tags List<Property Map>
    An arbitrary set of tags (key-value pairs) to associate with the Kinesis stream.
    warmThroughputMiBps Number
    Target warm throughput in MiB/s for the stream. This property can ONLY be set when StreamMode is ON_DEMAND.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Stream resource produces the following output properties:

    Arn string
    The Amazon resource name (ARN) of the Kinesis stream
    Id string
    The provider-assigned unique ID for this managed resource.
    WarmThroughputObject Pulumi.AwsNative.Kinesis.Outputs.StreamWarmThroughputObject
    Warm throughput configuration details for the stream. Only present for ON_DEMAND streams.
    Arn string
    The Amazon resource name (ARN) of the Kinesis stream
    Id string
    The provider-assigned unique ID for this managed resource.
    WarmThroughputObject StreamWarmThroughputObject
    Warm throughput configuration details for the stream. Only present for ON_DEMAND streams.
    arn String
    The Amazon resource name (ARN) of the Kinesis stream
    id String
    The provider-assigned unique ID for this managed resource.
    warmThroughputObject StreamWarmThroughputObject
    Warm throughput configuration details for the stream. Only present for ON_DEMAND streams.
    arn string
    The Amazon resource name (ARN) of the Kinesis stream
    id string
    The provider-assigned unique ID for this managed resource.
    warmThroughputObject StreamWarmThroughputObject
    Warm throughput configuration details for the stream. Only present for ON_DEMAND streams.
    arn str
    The Amazon resource name (ARN) of the Kinesis stream
    id str
    The provider-assigned unique ID for this managed resource.
    warm_throughput_object StreamWarmThroughputObject
    Warm throughput configuration details for the stream. Only present for ON_DEMAND streams.
    arn String
    The Amazon resource name (ARN) of the Kinesis stream
    id String
    The provider-assigned unique ID for this managed resource.
    warmThroughputObject Property Map
    Warm throughput configuration details for the stream. Only present for ON_DEMAND streams.

    Supporting Types

    StreamEncryption, StreamEncryptionArgs

    When specified, enables or updates server-side encryption using an AWS KMS key for a specified stream. Removing this property from your stack template and updating your stack disables encryption.
    EncryptionType Pulumi.AwsNative.Kinesis.StreamEncryptionEncryptionType
    The encryption type to use. The only valid value is KMS.
    KeyId string
    The GUID for the customer-managed AWS KMS key to use for encryption. This value can be a globally unique identifier, a fully specified Amazon Resource Name (ARN) to either an alias or a key, or an alias name prefixed by "alias/".You can also use a master key owned by Kinesis Data Streams by specifying the alias aws/kinesis.
    EncryptionType StreamEncryptionEncryptionType
    The encryption type to use. The only valid value is KMS.
    KeyId string
    The GUID for the customer-managed AWS KMS key to use for encryption. This value can be a globally unique identifier, a fully specified Amazon Resource Name (ARN) to either an alias or a key, or an alias name prefixed by "alias/".You can also use a master key owned by Kinesis Data Streams by specifying the alias aws/kinesis.
    encryptionType StreamEncryptionEncryptionType
    The encryption type to use. The only valid value is KMS.
    keyId String
    The GUID for the customer-managed AWS KMS key to use for encryption. This value can be a globally unique identifier, a fully specified Amazon Resource Name (ARN) to either an alias or a key, or an alias name prefixed by "alias/".You can also use a master key owned by Kinesis Data Streams by specifying the alias aws/kinesis.
    encryptionType StreamEncryptionEncryptionType
    The encryption type to use. The only valid value is KMS.
    keyId string
    The GUID for the customer-managed AWS KMS key to use for encryption. This value can be a globally unique identifier, a fully specified Amazon Resource Name (ARN) to either an alias or a key, or an alias name prefixed by "alias/".You can also use a master key owned by Kinesis Data Streams by specifying the alias aws/kinesis.
    encryption_type StreamEncryptionEncryptionType
    The encryption type to use. The only valid value is KMS.
    key_id str
    The GUID for the customer-managed AWS KMS key to use for encryption. This value can be a globally unique identifier, a fully specified Amazon Resource Name (ARN) to either an alias or a key, or an alias name prefixed by "alias/".You can also use a master key owned by Kinesis Data Streams by specifying the alias aws/kinesis.
    encryptionType "KMS"
    The encryption type to use. The only valid value is KMS.
    keyId String
    The GUID for the customer-managed AWS KMS key to use for encryption. This value can be a globally unique identifier, a fully specified Amazon Resource Name (ARN) to either an alias or a key, or an alias name prefixed by "alias/".You can also use a master key owned by Kinesis Data Streams by specifying the alias aws/kinesis.

    StreamEncryptionEncryptionType, StreamEncryptionEncryptionTypeArgs

    Kms
    KMS
    StreamEncryptionEncryptionTypeKms
    KMS
    Kms
    KMS
    Kms
    KMS
    KMS
    KMS
    "KMS"
    KMS

    StreamEnhancedMetric, StreamEnhancedMetricArgs

    IncomingBytes
    IncomingBytes
    IncomingRecords
    IncomingRecords
    OutgoingBytes
    OutgoingBytes
    OutgoingRecords
    OutgoingRecords
    WriteProvisionedThroughputExceeded
    WriteProvisionedThroughputExceeded
    ReadProvisionedThroughputExceeded
    ReadProvisionedThroughputExceeded
    IteratorAgeMilliseconds
    IteratorAgeMilliseconds
    All
    ALL
    StreamEnhancedMetricIncomingBytes
    IncomingBytes
    StreamEnhancedMetricIncomingRecords
    IncomingRecords
    StreamEnhancedMetricOutgoingBytes
    OutgoingBytes
    StreamEnhancedMetricOutgoingRecords
    OutgoingRecords
    StreamEnhancedMetricWriteProvisionedThroughputExceeded
    WriteProvisionedThroughputExceeded
    StreamEnhancedMetricReadProvisionedThroughputExceeded
    ReadProvisionedThroughputExceeded
    StreamEnhancedMetricIteratorAgeMilliseconds
    IteratorAgeMilliseconds
    StreamEnhancedMetricAll
    ALL
    IncomingBytes
    IncomingBytes
    IncomingRecords
    IncomingRecords
    OutgoingBytes
    OutgoingBytes
    OutgoingRecords
    OutgoingRecords
    WriteProvisionedThroughputExceeded
    WriteProvisionedThroughputExceeded
    ReadProvisionedThroughputExceeded
    ReadProvisionedThroughputExceeded
    IteratorAgeMilliseconds
    IteratorAgeMilliseconds
    All
    ALL
    IncomingBytes
    IncomingBytes
    IncomingRecords
    IncomingRecords
    OutgoingBytes
    OutgoingBytes
    OutgoingRecords
    OutgoingRecords
    WriteProvisionedThroughputExceeded
    WriteProvisionedThroughputExceeded
    ReadProvisionedThroughputExceeded
    ReadProvisionedThroughputExceeded
    IteratorAgeMilliseconds
    IteratorAgeMilliseconds
    All
    ALL
    INCOMING_BYTES
    IncomingBytes
    INCOMING_RECORDS
    IncomingRecords
    OUTGOING_BYTES
    OutgoingBytes
    OUTGOING_RECORDS
    OutgoingRecords
    WRITE_PROVISIONED_THROUGHPUT_EXCEEDED
    WriteProvisionedThroughputExceeded
    READ_PROVISIONED_THROUGHPUT_EXCEEDED
    ReadProvisionedThroughputExceeded
    ITERATOR_AGE_MILLISECONDS
    IteratorAgeMilliseconds
    ALL
    ALL
    "IncomingBytes"
    IncomingBytes
    "IncomingRecords"
    IncomingRecords
    "OutgoingBytes"
    OutgoingBytes
    "OutgoingRecords"
    OutgoingRecords
    "WriteProvisionedThroughputExceeded"
    WriteProvisionedThroughputExceeded
    "ReadProvisionedThroughputExceeded"
    ReadProvisionedThroughputExceeded
    "IteratorAgeMilliseconds"
    IteratorAgeMilliseconds
    "ALL"
    ALL

    StreamModeDetails, StreamModeDetailsArgs

    When specified, enables or updates the mode of stream. Default is PROVISIONED.

    StreamModeDetailsStreamMode, StreamModeDetailsStreamModeArgs

    OnDemand
    ON_DEMAND
    Provisioned
    PROVISIONED
    StreamModeDetailsStreamModeOnDemand
    ON_DEMAND
    StreamModeDetailsStreamModeProvisioned
    PROVISIONED
    OnDemand
    ON_DEMAND
    Provisioned
    PROVISIONED
    OnDemand
    ON_DEMAND
    Provisioned
    PROVISIONED
    ON_DEMAND
    ON_DEMAND
    PROVISIONED
    PROVISIONED
    "ON_DEMAND"
    ON_DEMAND
    "PROVISIONED"
    PROVISIONED

    StreamWarmThroughputObject, StreamWarmThroughputObjectArgs

    Warm throughput configuration details for the stream. Only present for ON_DEMAND streams.
    CurrentMiBps int
    Current warm throughput in MiB/s
    TargetMiBps int
    Target warm throughput in MiB/s that a customer can write to a stream at any given time
    CurrentMiBps int
    Current warm throughput in MiB/s
    TargetMiBps int
    Target warm throughput in MiB/s that a customer can write to a stream at any given time
    currentMiBps Integer
    Current warm throughput in MiB/s
    targetMiBps Integer
    Target warm throughput in MiB/s that a customer can write to a stream at any given time
    currentMiBps number
    Current warm throughput in MiB/s
    targetMiBps number
    Target warm throughput in MiB/s that a customer can write to a stream at any given time
    current_mi_bps int
    Current warm throughput in MiB/s
    target_mi_bps int
    Target warm throughput in MiB/s that a customer can write to a stream at any given time
    currentMiBps Number
    Current warm throughput in MiB/s
    targetMiBps Number
    Target warm throughput in MiB/s that a customer can write to a stream at any given time

    Tag, TagArgs

    A set of tags to apply to the resource.
    Key string
    The key name of the tag
    Value string
    The value of the tag
    Key string
    The key name of the tag
    Value string
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag
    key string
    The key name of the tag
    value string
    The value of the tag
    key str
    The key name of the tag
    value str
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag

    Package Details

    Repository
    AWS Native pulumi/pulumi-aws-native
    License
    Apache-2.0
    aws-native logo

    We recommend new projects start with resources from the AWS provider.

    AWS Cloud Control v1.44.0 published on Friday, Dec 19, 2025 by Pulumi
      Meet Neo: Your AI Platform Teammate