AWS Kinesis #X Amz Target=Firehose 20150804.CreateDeliveryStream API

The #X Amz Target=Firehose 20150804.CreateDeliveryStream API from AWS Kinesis — 1 operation(s) for #x amz target=firehose 20150804.createdeliverystream.

Operations 1

POST /#X-Amz-Target=Firehose_20150804.CreateDeliveryStream #

Documentation

Specifications

Other Resources

🔗
Pricing
https://aws.amazon.com/kinesis/data-streams/pricing/
🔗
FAQ
https://aws.amazon.com/kinesis/data-streams/faqs/
🔗
DeveloperGuide
https://docs.aws.amazon.com/streams/latest/dev/introduction.html
🔗
Security
https://docs.aws.amazon.com/streams/latest/dev/security.html
🔗
Customers
https://aws.amazon.com/kinesis/data-streams/customers/
🔗
Integrations
https://aws.amazon.com/kinesis/data-streams/integrations/
🔗
Pricing
https://aws.amazon.com/kinesis/data-firehose/pricing/
🔗
FAQ
https://aws.amazon.com/kinesis/data-firehose/faqs/
🔗
DeveloperGuide
https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html
🔗
Pricing
https://aws.amazon.com/kinesis/data-analytics/pricing/
🔗
FAQ
https://aws.amazon.com/kinesis/data-analytics/faqs/
🔗
DeveloperGuide
https://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works.html
🔗
Security
https://docs.aws.amazon.com/kinesisanalytics/latest/dev/security.html
🔗
Pricing
https://aws.amazon.com/kinesis/video-streams/pricing/
🔗
FAQ
https://aws.amazon.com/kinesis/video-streams/faqs/
🔗
DeveloperGuide
https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/what-is-kinesis-video.html
🔗
Security
https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/security.html
🔗
Customers
https://aws.amazon.com/kinesis/video-streams/customers/
🔗
Features
https://aws.amazon.com/kinesis/video-streams/features/
🔗
Resources
https://aws.amazon.com/kinesis/video-streams/resources/
🔗
WebRTCGuide
https://docs.aws.amazon.com/kinesisvideostreams-webrtc-dg/latest/devguide/what-is-kvswebrtc.html

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/kinesis-x-amz-target-firehose-20150804-createdeliverystream-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

kinesis-x-amz-target-firehose-20150804-createdeliverystream-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2015-08-04
  x-release: v4
  title: 'Amazon Kinesis Firehose #X Amz Target=Firehose 20150804.CreateDeliveryStream API'
  description: <fullname>Amazon Kinesis Data Firehose API Reference</fullname> <p>Amazon Kinesis Data Firehose is a fully managed service that delivers real-time streaming data to destinations such as Amazon Simple Storage Service (Amazon S3), Amazon OpenSearch Service, Amazon Redshift, Splunk, and various other supportd destinations.</p>
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/https_twitter.com_awscloud_profile_image.png
    backgroundColor: '#FFFFFF'
  termsOfService: https://aws.amazon.com/service-terms/
  contact:
    name: Mike Ralphson
    email: mike.ralphson@gmail.com
    url: https://github.com/mermade/aws2openapi
    x-twitter: PermittedSoc
  license:
    name: Apache 2.0 License
    url: http://www.apache.org/licenses/
  x-providerName: amazonaws.com
  x-serviceName: firehose
  x-origin:
  - contentType: application/json
    url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/firehose-2015-08-04.normal.json
    converter:
      url: https://github.com/mermade/aws2openapi
      version: 1.0.0
    x-apisguru-driver: external
  x-apiClientRegistration:
    url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct
  x-apisguru-categories:
  - cloud
  x-preferred: true
servers:
- url: http://firehose.{region}.amazonaws.com
  variables:
    region:
      description: The AWS region
      enum:
      - us-east-1
      - us-east-2
      - us-west-1
      - us-west-2
      - us-gov-west-1
      - us-gov-east-1
      - ca-central-1
      - eu-north-1
      - eu-west-1
      - eu-west-2
      - eu-west-3
      - eu-central-1
      - eu-south-1
      - af-south-1
      - ap-northeast-1
      - ap-northeast-2
      - ap-northeast-3
      - ap-southeast-1
      - ap-southeast-2
      - ap-east-1
      - ap-south-1
      - sa-east-1
      - me-south-1
      default: us-east-1
  description: The Firehose multi-region endpoint
- url: https://firehose.{region}.amazonaws.com
  variables:
    region:
      description: The AWS region
      enum:
      - us-east-1
      - us-east-2
      - us-west-1
      - us-west-2
      - us-gov-west-1
      - us-gov-east-1
      - ca-central-1
      - eu-north-1
      - eu-west-1
      - eu-west-2
      - eu-west-3
      - eu-central-1
      - eu-south-1
      - af-south-1
      - ap-northeast-1
      - ap-northeast-2
      - ap-northeast-3
      - ap-southeast-1
      - ap-southeast-2
      - ap-east-1
      - ap-south-1
      - sa-east-1
      - me-south-1
      default: us-east-1
  description: The Firehose multi-region endpoint
- url: http://firehose.{region}.amazonaws.com.cn
  variables:
    region:
      description: The AWS region
      enum:
      - cn-north-1
      - cn-northwest-1
      default: cn-north-1
  description: The Firehose endpoint for China (Beijing) and China (Ningxia)
- url: https://firehose.{region}.amazonaws.com.cn
  variables:
    region:
      description: The AWS region
      enum:
      - cn-north-1
      - cn-northwest-1
      default: cn-north-1
  description: The Firehose endpoint for China (Beijing) and China (Ningxia)
security:
- hmac: []
tags:
- name: '#X Amz Target=Firehose 20150804.CreateDeliveryStream'
paths:
  /#X-Amz-Target=Firehose_20150804.CreateDeliveryStream:
    parameters:
    - $ref: '#/components/parameters/X-Amz-Content-Sha256'
    - $ref: '#/components/parameters/X-Amz-Date'
    - $ref: '#/components/parameters/X-Amz-Algorithm'
    - $ref: '#/components/parameters/X-Amz-Credential'
    - $ref: '#/components/parameters/X-Amz-Security-Token'
    - $ref: '#/components/parameters/X-Amz-Signature'
    - $ref: '#/components/parameters/X-Amz-SignedHeaders'
    post:
      operationId: CreateDeliveryStream
      description: '<p>Creates a Kinesis Data Firehose delivery stream.</p> <p>By default, you can create up to 50 delivery streams per Amazon Web Services Region.</p> <p>This is an asynchronous operation that immediately returns. The initial status of the delivery stream is <code>CREATING</code>. After the delivery stream is created, its status is <code>ACTIVE</code> and it now accepts data. If the delivery stream creation fails, the status transitions to <code>CREATING_FAILED</code>. Attempts to send data to a delivery stream that is not in the <code>ACTIVE</code> state cause an exception. To check the state of a delivery stream, use <a>DescribeDeliveryStream</a>.</p> <p>If the status of a delivery stream is <code>CREATING_FAILED</code>, this status doesn''t change, and you can''t invoke <code>CreateDeliveryStream</code> again on it. However, you can invoke the <a>DeleteDeliveryStream</a> operation to delete it.</p> <p>A Kinesis Data Firehose delivery stream can be configured to receive records directly from providers using <a>PutRecord</a> or <a>PutRecordBatch</a>, or it can be configured to use an existing Kinesis stream as its source. To specify a Kinesis data stream as input, set the <code>DeliveryStreamType</code> parameter to <code>KinesisStreamAsSource</code>, and provide the Kinesis stream Amazon Resource Name (ARN) and role ARN in the <code>KinesisStreamSourceConfiguration</code> parameter.</p> <p>To create a delivery stream with server-side encryption (SSE) enabled, include <a>DeliveryStreamEncryptionConfigurationInput</a> in your request. This is optional. You can also invoke <a>StartDeliveryStreamEncryption</a> to turn on SSE for an existing delivery stream that doesn''t have SSE enabled.</p> <p>A delivery stream is configured with a single destination: Amazon S3, Amazon ES, Amazon Redshift, or Splunk. You must specify only one of the following destination configuration parameters: <code>ExtendedS3DestinationConfiguration</code>, <code>S3DestinationConfiguration</code>, <code>ElasticsearchDestinationConfiguration</code>, <code>RedshiftDestinationConfiguration</code>, or <code>SplunkDestinationConfiguration</code>.</p> <p>When you specify <code>S3DestinationConfiguration</code>, you can also provide the following optional values: BufferingHints, <code>EncryptionConfiguration</code>, and <code>CompressionFormat</code>. By default, if no <code>BufferingHints</code> value is provided, Kinesis Data Firehose buffers data up to 5 MB or for 5 minutes, whichever condition is satisfied first. <code>BufferingHints</code> is a hint, so there are some cases where the service cannot adhere to these conditions strictly. For example, record boundaries might be such that the size is a little over or under the configured buffering size. By default, no encryption is performed. We strongly recommend that you enable encryption to ensure secure data storage in Amazon S3.</p> <p>A few notes about Amazon Redshift as a destination:</p> <ul> <li> <p>An Amazon Redshift destination requires an S3 bucket as intermediate location. Kinesis Data Firehose first delivers data to Amazon S3 and then uses <code>COPY</code> syntax to load data into an Amazon Redshift table. This is specified in the <code>RedshiftDestinationConfiguration.S3Configuration</code> parameter.</p> </li> <li> <p>The compression formats <code>SNAPPY</code> or <code>ZIP</code> cannot be specified in <code>RedshiftDestinationConfiguration.S3Configuration</code> because the Amazon Redshift <code>COPY</code> operation that reads from the S3 bucket doesn''t support these compression formats.</p> </li> <li> <p>We strongly recommend that you use the user name and password you provide exclusively with Kinesis Data Firehose, and that the permissions for the account are restricted for Amazon Redshift <code>INSERT</code> permissions.</p> </li> </ul> <p>Kinesis Data Firehose assumes the IAM role that is configured as part of the destination. The role should allow the Kinesis Data Firehose principal to assume the role, and the role should have permissions that allow the service to deliver the data. For more information, see <a href="https://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3">Grant Kinesis Data Firehose Access to an Amazon S3 Destination</a> in the <i>Amazon Kinesis Data Firehose Developer Guide</i>.</p>'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateDeliveryStreamOutput'
        '480':
          description: InvalidArgumentException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidArgumentException'
        '481':
          description: LimitExceededException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LimitExceededException'
        '482':
          description: ResourceInUseException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceInUseException'
        '483':
          description: InvalidKMSResourceException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidKMSResourceException'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDeliveryStreamInput'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - Firehose_20150804.CreateDeliveryStream
      tags:
      - '#X Amz Target=Firehose 20150804.CreateDeliveryStream'
components:
  schemas:
    HttpEndpointAttributeName:
      type: string
      pattern: ^(?!\s*$).+
      minLength: 1
      maxLength: 256
      format: password
    AmazonOpenSearchServerlessDestinationConfiguration:
      type: object
      required:
      - RoleARN
      - IndexName
      - S3Configuration
      properties:
        RoleARN:
          allOf:
          - $ref: '#/components/schemas/RoleARN'
          - description: The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Serverless offering for Amazon OpenSearch Service Configuration API and for indexing documents.
        CollectionEndpoint:
          allOf:
          - $ref: '#/components/schemas/AmazonOpenSearchServerlessCollectionEndpoint'
          - description: The endpoint to use when communicating with the collection in the Serverless offering for Amazon OpenSearch Service.
        IndexName:
          allOf:
          - $ref: '#/components/schemas/AmazonOpenSearchServerlessIndexName'
          - description: The Serverless offering for Amazon OpenSearch Service index name.
        BufferingHints:
          allOf:
          - $ref: '#/components/schemas/AmazonOpenSearchServerlessBufferingHints'
          - description: The buffering options. If no value is specified, the default values for AmazonopensearchserviceBufferingHints are used.
        RetryOptions:
          allOf:
          - $ref: '#/components/schemas/AmazonOpenSearchServerlessRetryOptions'
          - description: The retry behavior in case Kinesis Data Firehose is unable to deliver documents to the Serverless offering for Amazon OpenSearch Service. The default value is 300 (5 minutes).
        S3BackupMode:
          allOf:
          - $ref: '#/components/schemas/AmazonOpenSearchServerlessS3BackupMode'
          - description: Defines how documents should be delivered to Amazon S3. When it is set to FailedDocumentsOnly, Kinesis Data Firehose writes any documents that could not be indexed to the configured Amazon S3 destination, with AmazonOpenSearchService-failed/ appended to the key prefix. When set to AllDocuments, Kinesis Data Firehose delivers all incoming records to Amazon S3, and also writes failed documents with AmazonOpenSearchService-failed/ appended to the prefix.
        S3Configuration:
          $ref: '#/components/schemas/S3DestinationConfiguration'
        ProcessingConfiguration:
          $ref: '#/components/schemas/ProcessingConfiguration'
        CloudWatchLoggingOptions:
          $ref: '#/components/schemas/CloudWatchLoggingOptions'
        VpcConfiguration:
          $ref: '#/components/schemas/VpcConfiguration'
      description: Describes the configuration of a destination in the Serverless offering for Amazon OpenSearch Service.
    AmazonopensearchserviceBufferingIntervalInSeconds:
      type: integer
      minimum: 60
      maximum: 900
    ProcessorParameter:
      type: object
      required:
      - ParameterName
      - ParameterValue
      properties:
        ParameterName:
          allOf:
          - $ref: '#/components/schemas/ProcessorParameterName'
          - description: 'The name of the parameter. Currently the following default values are supported: 3 for <code>NumberOfRetries</code> and 60 for the <code>BufferIntervalInSeconds</code>. The <code>BufferSizeInMBs</code> ranges between 0.2 MB and up to 3MB. The default buffering hint is 1MB for all destinations, except Splunk. For Splunk, the default buffering hint is 256 KB. '
        ParameterValue:
          allOf:
          - $ref: '#/components/schemas/ProcessorParameterValue'
          - description: The parameter value.
      description: 'Describes the processor parameter. '
    ListOfNonEmptyStringsWithoutWhitespace:
      type: array
      items:
        $ref: '#/components/schemas/NonEmptyStringWithoutWhitespace'
    HECEndpoint:
      type: string
      pattern: .*
      minLength: 0
      maxLength: 2048
    ElasticsearchBufferingIntervalInSeconds:
      type: integer
      minimum: 60
      maximum: 900
    Prefix:
      type: string
      pattern: .*
      minLength: 0
      maxLength: 1024
    CreateDeliveryStreamInput:
      type: object
      required:
      - DeliveryStreamName
      title: CreateDeliveryStreamInput
      properties:
        DeliveryStreamName:
          allOf:
          - $ref: '#/components/schemas/DeliveryStreamName'
          - description: The name of the delivery stream. This name must be unique per Amazon Web Services account in the same Amazon Web Services Region. If the delivery streams are in different accounts or different Regions, you can have multiple delivery streams with the same name.
        DeliveryStreamType:
          allOf:
          - $ref: '#/components/schemas/DeliveryStreamType'
          - description: '<p>The delivery stream type. This parameter can be one of the following values:</p> <ul> <li> <p> <code>DirectPut</code>: Provider applications access the delivery stream directly.</p> </li> <li> <p> <code>KinesisStreamAsSource</code>: The delivery stream uses a Kinesis data stream as a source.</p> </li> </ul>'
        KinesisStreamSourceConfiguration:
          allOf:
          - $ref: '#/components/schemas/KinesisStreamSourceConfiguration'
          - description: When a Kinesis data stream is used as the source for the delivery stream, a <a>KinesisStreamSourceConfiguration</a> containing the Kinesis data stream Amazon Resource Name (ARN) and the role ARN for the source stream.
        DeliveryStreamEncryptionConfigurationInput:
          allOf:
          - $ref: '#/components/schemas/DeliveryStreamEncryptionConfigurationInput'
          - description: Used to specify the type and Amazon Resource Name (ARN) of the KMS key needed for Server-Side Encryption (SSE).
        S3DestinationConfiguration:
          allOf:
          - $ref: '#/components/schemas/S3DestinationConfiguration'
          - deprecated: true
            description: '[Deprecated] The destination in Amazon S3. You can specify only one destination.'
        ExtendedS3DestinationConfiguration:
          allOf:
          - $ref: '#/components/schemas/ExtendedS3DestinationConfiguration'
          - description: The destination in Amazon S3. You can specify only one destination.
        RedshiftDestinationConfiguration:
          allOf:
          - $ref: '#/components/schemas/RedshiftDestinationConfiguration'
          - description: The destination in Amazon Redshift. You can specify only one destination.
        ElasticsearchDestinationConfiguration:
          allOf:
          - $ref: '#/components/schemas/ElasticsearchDestinationConfiguration'
          - description: The destination in Amazon ES. You can specify only one destination.
        AmazonopensearchserviceDestinationConfiguration:
          allOf:
          - $ref: '#/components/schemas/AmazonopensearchserviceDestinationConfiguration'
          - description: The destination in Amazon OpenSearch Service. You can specify only one destination.
        SplunkDestinationConfiguration:
          allOf:
          - $ref: '#/components/schemas/SplunkDestinationConfiguration'
          - description: The destination in Splunk. You can specify only one destination.
        HttpEndpointDestinationConfiguration:
          allOf:
          - $ref: '#/components/schemas/HttpEndpointDestinationConfiguration'
          - description: Enables configuring Kinesis Firehose to deliver data to any HTTP endpoint destination. You can specify only one destination.
        Tags:
          allOf:
          - $ref: '#/components/schemas/TagDeliveryStreamInputTagList'
          - description: <p>A set of tags to assign to the delivery stream. A tag is a key-value pair that you can define and assign to Amazon Web Services resources. Tags are metadata. For example, you can add friendly names and descriptions or other types of information that can help you distinguish the delivery stream. For more information about tags, see <a href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html">Using Cost Allocation Tags</a> in the Amazon Web Services Billing and Cost Management User Guide.</p> <p>You can specify up to 50 tags when creating a delivery stream.</p>
        AmazonOpenSearchServerlessDestinationConfiguration:
          allOf:
          - $ref: '#/components/schemas/AmazonOpenSearchServerlessDestinationConfiguration'
          - description: The destination in the Serverless offering for Amazon OpenSearch Service. You can specify only one destination.
    InvalidArgumentException: {}
    AmazonopensearchserviceIndexName:
      type: string
      pattern: .*
      minLength: 1
      maxLength: 80
    ExtendedS3DestinationConfiguration:
      type: object
      required:
      - RoleARN
      - BucketARN
      properties:
        RoleARN:
          allOf:
          - $ref: '#/components/schemas/RoleARN'
          - description: The Amazon Resource Name (ARN) of the Amazon Web Services credentials. For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a>.
        BucketARN:
          allOf:
          - $ref: '#/components/schemas/BucketARN'
          - description: The ARN of the S3 bucket. For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a>.
        Prefix:
          allOf:
          - $ref: '#/components/schemas/Prefix'
          - description: The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered Amazon S3 files. You can also specify a custom prefix, as described in <a href="https://docs.aws.amazon.com/firehose/latest/dev/s3-prefixes.html">Custom Prefixes for Amazon S3 Objects</a>.
        ErrorOutputPrefix:
          allOf:
          - $ref: '#/components/schemas/ErrorOutputPrefix'
          - description: A prefix that Kinesis Data Firehose evaluates and adds to failed records before writing them to S3. This prefix appears immediately following the bucket name. For information about how to specify this prefix, see <a href="https://docs.aws.amazon.com/firehose/latest/dev/s3-prefixes.html">Custom Prefixes for Amazon S3 Objects</a>.
        BufferingHints:
          allOf:
          - $ref: '#/components/schemas/BufferingHints'
          - description: The buffering option.
        CompressionFormat:
          allOf:
          - $ref: '#/components/schemas/CompressionFormat'
          - description: The compression format. If no value is specified, the default is UNCOMPRESSED.
        EncryptionConfiguration:
          allOf:
          - $ref: '#/components/schemas/EncryptionConfiguration'
          - description: The encryption configuration. If no value is specified, the default is no encryption.
        CloudWatchLoggingOptions:
          allOf:
          - $ref: '#/components/schemas/CloudWatchLoggingOptions'
          - description: The Amazon CloudWatch logging options for your delivery stream.
        ProcessingConfiguration:
          allOf:
          - $ref: '#/components/schemas/ProcessingConfiguration'
          - description: The data processing configuration.
        S3BackupMode:
          allOf:
          - $ref: '#/components/schemas/S3BackupMode'
          - description: 'The Amazon S3 backup mode. After you create a delivery stream, you can update it to enable Amazon S3 backup if it is disabled. If backup is enabled, you can''t update the delivery stream to disable it. '
        S3BackupConfiguration:
          allOf:
          - $ref: '#/components/schemas/S3DestinationConfiguration'
          - description: The configuration for backup in Amazon S3.
        DataFormatConversionConfiguration:
          allOf:
          - $ref: '#/components/schemas/DataFormatConversionConfiguration'
          - description: The serializer, deserializer, and schema for converting data from the JSON format to the Parquet or ORC format before writing it to Amazon S3.
        DynamicPartitioningConfiguration:
          allOf:
          - $ref: '#/components/schemas/DynamicPartitioningConfiguration'
          - description: 'The configuration of the dynamic partitioning mechanism that creates smaller data sets from the streaming data by partitioning it based on partition keys. Currently, dynamic partitioning is only supported for Amazon S3 destinations. '
      description: Describes the configuration of a destination in Amazon S3.
    AmazonOpenSearchServerlessCollectionEndpoint:
      type: string
      pattern: https:.*
      minLength: 1
      maxLength: 512
    AmazonopensearchserviceRetryOptions:
      type: object
      properties:
        DurationInSeconds:
          allOf:
          - $ref: '#/components/schemas/AmazonopensearchserviceRetryDurationInSeconds'
          - description: 'After an initial failure to deliver to Amazon OpenSearch Service, the total amount of time during which Kinesis Data Firehose retries delivery (including the first attempt). After this time has elapsed, the failed documents are written to Amazon S3. Default value is 300 seconds (5 minutes). A value of 0 (zero) results in no retries. '
      description: 'Configures retry behavior in case Kinesis Data Firehose is unable to deliver documents to Amazon OpenSearch Service. '
    ProcessorType:
      type: string
      enum:
      - RecordDeAggregation
      - Lambda
      - MetadataExtraction
      - AppendDelimiterToRecord
    OpenXJsonSerDe:
      type: object
      properties:
        ConvertDotsInJsonKeysToUnderscores:
          allOf:
          - $ref: '#/components/schemas/BooleanObject'
          - description: <p>When set to <code>true</code>, specifies that the names of the keys include dots and that you want Kinesis Data Firehose to replace them with underscores. This is useful because Apache Hive does not allow dots in column names. For example, if the JSON contains a key whose name is "a.b", you can define the column name to be "a_b" when using this option.</p> <p>The default is <code>false</code>.</p>
        CaseInsensitive:
          allOf:
          - $ref: '#/components/schemas/BooleanObject'
          - description: When set to <code>true</code>, which is the default, Kinesis Data Firehose converts JSON keys to lowercase before deserializing them.
        ColumnToJsonKeyMappings:
          allOf:
          - $ref: '#/components/schemas/ColumnToJsonKeyMappings'
          - description: 'Maps column names to JSON keys that aren''t identical to the column names. This is useful when the JSON contains keys that are Hive keywords. For example, <code>timestamp</code> is a Hive keyword. If you have a JSON key named <code>timestamp</code>, set this parameter to <code>{"ts": "timestamp"}</code> to map this key to a column named <code>ts</code>.'
      description: The OpenX SerDe. Used by Kinesis Data Firehose for deserializing data, which means converting it from the JSON format in preparation for serializing it to the Parquet or ORC format. This is one of two deserializers you can choose, depending on which one offers the functionality you need. The other option is the native Hive / HCatalog JsonSerDe.
    CompressionFormat:
      type: string
      enum:
      - UNCOMPRESSED
      - GZIP
      - ZIP
      - Snappy
      - HADOOP_SNAPPY
    AWSKMSKeyARN:
      type: string
      pattern: arn:.*
      minLength: 1
      maxLength: 512
    HttpEndpointAccessKey:
      type: string
      pattern: .*
      minLength: 0
      maxLength: 4096
      format: password
    HECEndpointType:
      type: string
      enum:
      - Raw
      - Event
    RoleARN:
      type: string
      pattern: arn:.*
      minLength: 1
      maxLength: 512
    SchemaConfiguration:
      type: object
      properties:
        RoleARN:
          allOf:
          - $ref: '#/components/schemas/NonEmptyStringWithoutWhitespace'
          - description: <p>The role that Kinesis Data Firehose can use to access Amazon Web Services Glue. This role must be in the same account you use for Kinesis Data Firehose. Cross-account roles aren't allowed.</p> <important> <p>If the <code>SchemaConfiguration</code> request parameter is used as part of invoking the <code>CreateDeliveryStream</code> API, then the <code>RoleARN</code> property is required and its value must be specified.</p> </important>
        CatalogId:
          allOf:
          - $ref: '#/components/schemas/NonEmptyStringWithoutWhitespace'
          - description: The ID of the Amazon Web Services Glue Data Catalog. If you don't supply this, the Amazon Web Services account ID is used by default.
        DatabaseName:
          allOf:
          - $ref: '#/components/schemas/NonEmptyStringWithoutWhitespace'
          - description: <p>Specifies the name of the Amazon Web Services Glue database that contains the schema for the output data.</p> <important> <p>If the <code>SchemaConfiguration</code> request parameter is used as part of invoking the <code>CreateDeliveryStream</code> API, then the <code>DatabaseName</code> property is required and its value must be specified.</p> </important>
        TableName:
          allOf:
          - $ref: '#/components/schemas/NonEmptyStringWithoutWhitespace'
          - description: <p>Specifies the Amazon Web Services Glue table that contains the column information that constitutes your data schema.</p> <important> <p>If the <code>SchemaConfiguration</code> request parameter is used as part of invoking the <code>CreateDeliveryStream</code> API, then the <code>TableName</code> property is required and its value must be specified.</p> </important>
        Region:
          allOf:
          - $ref: '#/components/schemas/NonEmptyStringWithoutWhitespace'
          - description: If you don't specify an Amazon Web Services Region, the default is the current Region.
        VersionId:
          allOf:
          - $ref: '#/components/schemas/NonEmptyStringWithoutWhitespace'
          - description: Specifies the table version for the output data schema. If you don't specify this version ID, or if you set it to <code>LATEST</code>, Kinesis Data Firehose uses the most recent version. This means that any updates to the table are automatically picked up.
      description: Specifies the schema to which you want Kinesis Data Firehose to configure your data before it writes it to Amazon S3. This parameter is required if <code>Enabled</code> is set to true.
    Serializer:
      type: object
      properties:
        ParquetSerDe:
          allOf:
          - $ref: '#/components/schemas/ParquetSerDe'
          - description: A serializer to use for converting data to the Parquet format before storing it in Amazon S3. For more information, see <a href="https://parquet.apache.org/documentation/latest/">Apache Parquet</a>.
        OrcSerDe:
          allOf:
          - $ref: '#/components/schemas/OrcSerDe'
          - description: A serializer to use for converting data to the ORC format before storing it in Amazon S3. For more information, see <a href="https://orc.apache.org/docs/">Apache ORC</a>.
      description: 'The serializer that you want Kinesis Data Firehose to use to convert data to the target format before writing it to Amazon S3. Kinesis Data Firehose supports two types of serializers: the <a href="https://hive.apache.org/javadocs/r1.2.2/api/org/apache/hadoop/hive/ql/io/orc/OrcSerde.html">ORC SerDe</a> and the <a href="https://hive.apache.org/javadocs/r1.2.2/api/org/apache/hadoop/hive/ql/io/parquet/serde/ParquetHiveSerDe.html">Parquet SerDe</a>.'
    OutputFormatConfiguration:
      type: object
      properties:
        Serializer:
          allOf:
          - $ref: '#/components/schemas/Serializer'
          - description: Specifies which serializer to use. You can choose either the ORC SerDe or the Parquet SerDe. If both are non-null, the server rejects the request.
      description: Specifies the serializer that you want Kinesis Data Firehose to use to convert the format of your data before it writes it to Amazon S3. This parameter is required if <code>Enabled</code> is set to true.
    HttpEndpointRetryOptions:
      type: object
      properties:
        DurationInSeconds:
          allOf:
          - $ref: '#/components/schemas/HttpEndpointRetryDurationInSeconds'
          - description: 'The total amount of time that Kinesis Data Firehose spends on retries. This duration starts after the initial attempt to send data to the custom destination via HTTPS endpoint fails. It doesn''t include the periods during which Kinesis Data Firehose waits for acknowledgment from the specified destination after each attempt. '
      description: Describes the retry behavior in case Kinesis Data Firehose is unable to deliver data to the specified HTTP endpoint destination, or if it doesn't receive a valid acknowledgment of receipt from the specified HTTP endpoint destination.
    DeliveryStreamType:
      type: string
      enum:
      - DirectPut
      - KinesisStreamAsSource
    AmazonOpenSearchServerlessS3BackupMode:
      type: string
      enum:
      - FailedDocumentsOnly
      - AllDocuments
    KMSEncryptionConfig:
      type: object
      required:
      - AWSKMSKeyARN
      properties:
        AWSKMSKeyARN:
          allOf:
          - $ref: '#/components/schemas/AWSKMSKeyARN'
          - description: The Amazon Resource Name (ARN) of the encryption key. Must belong to the same Amazon Web Services Region as the destination Amazon S3 bucket. For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a>.
      description: Describes an encryption key for a destination in Amazon S3.
    ElasticsearchDomainARN:
      type: string
      pattern: arn:.*
      minLength: 1
      maxLength: 512
    CloudWatchLoggingOptions:
      type: object
      properties:
        Enabled:
          allOf:
          - $ref: '#/components/schemas/BooleanObject'
          - description: Enables or disables CloudWatch logging.
        LogGroupName:
          allOf:
          - $ref: '#/components/schemas/LogGroupName'
          - description: The CloudWatch group name for logging. This value is required if CloudWatch logging is enabled.
        LogStreamName:
          allOf:
          - $ref: '#/components/schemas/LogStreamName'
          - description: The CloudWatch log stream name for logging. This value is required if CloudWatch logging is enabled.
      description: Describes the Amazon CloudWatch logging options for your delivery stream.
    RedshiftRetryOptions:
      type: object
      properties:
        DurationInSeconds:
          allOf:
          - $ref: '#/components/schemas/RedshiftRetryDurationInSeconds'
          - description: The length of time during which Kinesis Data Firehose retries delivery after a failure, starting from the initial req

# --- truncated at 32 KB (93 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kinesis/refs/heads/main/openapi/kinesis-x-amz-target-firehose-20150804-createdeliverystream-api-openapi.yml