View a markdown version of this page

AWS::Kinesis::Channel - AWS CloudFormation

This is the new CloudFormation Template Reference Guide. Please update your bookmarks and links. For help getting started with CloudFormation, see the AWS CloudFormation User Guide.

AWS::Kinesis::Channel

Creates a channel that delivers records from a Kinesis data stream to a destination. A channel reads records from the specified stream and writes them to streaming tables on Apache Iceberg (Amazon S3 Tables) or to a general purpose Amazon S3 bucket.

You must specify either S3DestinationConfiguration or S3TablesDestinationConfiguration, but not both.

To use this operation, you must have permission to pass the specified service execution IAM role to Amazon Kinesis Data Streams (the iam:PassRole permission on that role).

Creating a channel is an asynchronous operation. Upon receiving the request, Amazon Kinesis Data Streams returns immediately with the channel in the CREATING state. After provisioning is complete, Amazon Kinesis Data Streams sets the state to ACTIVE. You can use DescribeChannel to check the current state.

This operation is only supported for data streams with the on-demand capacity mode.

This operation has a call limit of 5 transactions per second (TPS) for each AWS account. Exceeding 5 TPS results in a LimitExceededException.

Syntax

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

Properties

ChannelName

The name of the channel.

Required: Yes

Type: String

Pattern: ^[a-zA-Z0-9_.-]+$

Minimum: 1

Maximum: 128

Update requires: Replacement

EncryptionConfiguration

The AWS KMS key configuration that Amazon Kinesis Data Streams uses to encrypt data delivered to the channel's destination.

Required: No

Type: EncryptionConfiguration

Update requires: Replacement

LoggingConfiguration

The Amazon CloudWatch Logs configuration for the channel.

Required: No

Type: LoggingConfiguration

Update requires: No interruption

S3DestinationConfiguration

The configuration for delivery to a general purpose Amazon S3 bucket. Present only when the channel destination is a general purpose Amazon S3 bucket.

Required: No

Type: S3DestinationConfiguration

Update requires: No interruption

S3TablesDestinationConfiguration

The configuration for delivery to streaming tables on Apache Iceberg in Amazon S3 Tables. Present only when the channel destination is a streaming table.

Required: No

Type: S3TablesDestinationConfiguration

Update requires: No interruption

ServiceExecutionRoleARN

The Amazon Resource Name (ARN) of the IAM role that Amazon Kinesis Data Streams assumes to write records to the destination.

Required: Yes

Type: String

Pattern: ^arn:aws[-a-z0-9]*:iam::\d{12}:role/[a-zA-Z_0-9+=,.@\-_/]+$

Minimum: 1

Maximum: 512

Update requires: Replacement

StreamConfigurationList

The source stream configuration for the channel.

Required: Yes

Type: Array of StreamConfiguration

Minimum: 1

Maximum: 10000

Update requires: Replacement

Tags

Property description not available.

Required: No

Type: Array of Tag

Maximum: 50

Update requires: No interruption

Return values

Ref

Fn::GetAtt

ChannelARN

The Amazon Resource Name (ARN) of the channel.

ChannelCreationTimestamp

The time at which the channel was created.

ChannelId

The unique identifier of the channel.

ChannelStatus

The current status of the channel. Valid values:

  • CREATING - The channel is being created.

  • ACTIVE - The channel is ready to deliver records.

  • UPDATING - The channel configuration is being updated.

  • DELETING - The channel is being deleted.

  • FAILED - See ChannelStatusReason for the failure cause.