AWS Fundamentals Logo
AWS Fundamentals
L1 ConstructAWS::KinesisFirehose::DeliveryStream

CfnDeliveryStream

The `AWS::KinesisFirehose::DeliveryStream` resource specifies an Amazon Kinesis Data Firehose (Kinesis Data Firehose) delivery stream that delivers real-time streaming data to an Amazon Simple Storage Service (Amazon S3), Amazon Redshift, or Amazon Elasticsearch Service (Amazon ES) destination. For more information, see [Creating an Amazon Kinesis Data Firehose Delivery Stream](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html) in the *Amazon Kinesis Data Firehose Developer Guide* .

Import

import { CfnDeliveryStream } from 'aws-cdk-lib/aws-kinesisfirehose';

Or use the module namespace:

import * as kinesisfirehose from 'aws-cdk-lib/aws-kinesisfirehose';
// kinesisfirehose.CfnDeliveryStream

Properties

Configuration passed to the constructor as CfnDeliveryStreamProps.

amazonOpenSearchServerlessDestinationConfigurationOptional
IResolvable | AmazonOpenSearchServerlessDestinationConfigurationProperty

Describes the configuration of a destination in the Serverless offering for Amazon OpenSearch Service.

amazonopensearchserviceDestinationConfigurationOptional
IResolvable | AmazonopensearchserviceDestinationConfigurationProperty

The destination in Amazon OpenSearch Service. You can specify only one destination.

databaseSourceConfigurationOptional
IResolvable | DatabaseSourceConfigurationProperty

The top level object for configuring streams with database as a source. Amazon Data Firehose is in preview release and is subject to change.

deliveryStreamEncryptionConfigurationInputOptional
IResolvable | DeliveryStreamEncryptionConfigurationInputProperty

Specifies the type and Amazon Resource Name (ARN) of the CMK to use for Server-Side Encryption (SSE).

deliveryStreamNameOptional
string | IStreamRef

The name of the Firehose stream.

deliveryStreamTypeOptional
string

The Firehose stream type. This can be one of the following values:. - `DirectPut` : Provider applications access the Firehose stream directly. - `KinesisStreamAsSource` : The Firehose stream uses a Kinesis data stream as a source.

directPutSourceConfigurationOptional
IResolvable | DirectPutSourceConfigurationProperty

The structure that configures parameters such as `ThroughputHintInMBs` for a stream configured with Direct PUT as a source.

elasticsearchDestinationConfigurationOptional
IResolvable | ElasticsearchDestinationConfigurationProperty

An Amazon ES destination for the delivery stream. Conditional. You must specify only one destination configuration. If you change the delivery stream destination from an Amazon ES destination to an Amazon S3 or Amazon Redshift destination, update requires [some interruptions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-some-interrupt) .

extendedS3DestinationConfigurationOptional
IResolvable | ExtendedS3DestinationConfigurationProperty

An Amazon S3 destination for the delivery stream. Conditional. You must specify only one destination configuration. If you change the delivery stream destination from an Amazon Extended S3 destination to an Amazon ES destination, update requires [some interruptions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-some-interrupt) .

httpEndpointDestinationConfigurationOptional
IResolvable | HttpEndpointDestinationConfigurationProperty

Enables configuring Kinesis Firehose to deliver data to any HTTP endpoint destination. You can specify only one destination.

icebergDestinationConfigurationOptional
IResolvable | IcebergDestinationConfigurationProperty

Specifies the destination configure settings for Apache Iceberg Table.

kinesisStreamSourceConfigurationOptional
IResolvable | KinesisStreamSourceConfigurationProperty

When a Kinesis stream is used as the source for the delivery stream, a [KinesisStreamSourceConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-kinesisstreamsourceconfiguration.html) containing the Kinesis stream ARN and the role ARN for the source stream.

mskSourceConfigurationOptional
IResolvable | MSKSourceConfigurationProperty

The configuration for the Amazon MSK cluster to be used as the source for a delivery stream.

redshiftDestinationConfigurationOptional
IResolvable | RedshiftDestinationConfigurationProperty

An Amazon Redshift destination for the delivery stream. Conditional. You must specify only one destination configuration. If you change the delivery stream destination from an Amazon Redshift destination to an Amazon ES destination, update requires [some interruptions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-some-interrupt) .

s3DestinationConfigurationOptional
IResolvable | S3DestinationConfigurationProperty

The `S3DestinationConfiguration` property type specifies an Amazon Simple Storage Service (Amazon S3) destination to which Amazon Kinesis Data Firehose (Kinesis Data Firehose) delivers data. Conditional. You must specify only one destination configuration. If you change the delivery stream destination from an Amazon S3 destination to an Amazon ES destination, update requires [some interruptions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-some-interrupt) .

snowflakeDestinationConfigurationOptional
IResolvable | SnowflakeDestinationConfigurationProperty

Configure Snowflake destination.

splunkDestinationConfigurationOptional
IResolvable | SplunkDestinationConfigurationProperty

The configuration of a destination in Splunk for the delivery stream.

tagsOptional
CfnTag[]

A set of tags to assign to the Firehose stream. A tag is a key-value pair that you can define and assign to AWS resources. Tags are metadata. For example, you can add friendly names and descriptions or other types of information that can help you distinguish the Firehose stream. For more information about tags, see [Using Cost Allocation Tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) in the AWS Billing and Cost Management User Guide. You can specify up to 50 tags when creating a Firehose stream. If you specify tags in the `CreateDeliveryStream` action, Amazon Data Firehose performs an additional authorization on the `firehose:TagDeliveryStream` action to verify if users have permissions to create tags. If you do not provide this permission, requests to create new Firehose streams with IAM resource tags will fail with an `AccessDeniedException` such as following. *AccessDeniedException* User: arn:aws:sts::x:assumed-role/x/x is not authorized to perform: firehose:TagDeliveryStream on resource: arn:aws:firehose:us-east-1:x:deliverystream/x with an explicit deny in an identity-based policy. For an example IAM policy, see [Tag example.](https://docs.aws.amazon.com/firehose/latest/APIReference/API_CreateDeliveryStream.html#API_CreateDeliveryStream_Examples)

CloudFormation Resource

This L1 construct maps directly to the following CloudFormation resource type.

Learn AWS the Practical Way

Our bi-weekly newsletter teaches hands-on AWS fundamentals. No certification fluff - just practical knowledge.

Subscribe to Newsletter

Quick Facts

LevelL1 (CloudFormation)
Moduleaws-kinesisfirehose
CFN TypeAWS::KinesisFirehose::DeliveryStream
Properties18

Related Constructs

External Links