aws-sdk-firehose 1.31.0 → 1.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f88f91f0af16edf239da238df816062567ff997b8729999abbc10cb92594adc3
4
- data.tar.gz: 2a38747dbc83069787b0fcaf2bb3c133a2a160df6b9e02f41db16578f8d02fe4
3
+ metadata.gz: db3f0c3f551b53e00cde3ad8a0f463f2be901cc4badfceb0dbb48f52eb1bac7e
4
+ data.tar.gz: a988fd7d0579070b02e38f5a115451217ec8e85e8fe7521d693703918bb1c7b2
5
5
  SHA512:
6
- metadata.gz: 81c96182295390de4d0bd712701cb5ed08fb495363cd714c646b5b27dcc5656de1658460306f7e33b5bbffb45c3d06fbd499523ff7da1254bc09788d3776dc17
7
- data.tar.gz: 9765eb815ccb0e78de1c28b5df264e6cf88175a88fcfa4a477a53f7fb02552ed8a718e054e38bb6bd39ccb32c2ec80a2964b5a0679fbe1a93212ed6e098b7183
6
+ metadata.gz: 722720763dda4a05e4d9d0a9222e4270d5a0ab74d6c82bf35e20009986da98b0039afd9d8b8f32f925a297c83bc7783829f5cf2374941911116539620a408194
7
+ data.tar.gz: 9922b69126ca554431517887d9f31da6d128e99e0f024e3b1e3b426810f7797014dd709217987cfaf327812927f1702cd27b67ccd9d46c3feeba2178e8de30a8
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  require 'aws-sdk-core'
11
12
  require 'aws-sigv4'
12
13
 
@@ -44,9 +45,9 @@ require_relative 'aws-sdk-firehose/customizations'
44
45
  #
45
46
  # See {Errors} for more information.
46
47
  #
47
- # @service
48
+ # @!group service
48
49
  module Aws::Firehose
49
50
 
50
- GEM_VERSION = '1.31.0'
51
+ GEM_VERSION = '1.36.0'
51
52
 
52
53
  end
@@ -85,13 +85,28 @@ module Aws::Firehose
85
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
86
  # credentials.
87
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
88
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
89
103
  # from an EC2 IMDS on an EC2 instance.
90
104
  #
91
- # * `Aws::SharedCredentials` - Used for loading credentials from a
92
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
93
107
  #
94
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
95
110
  #
96
111
  # When `:credentials` are not configured directly, the following
97
112
  # locations will be searched for credentials:
@@ -101,10 +116,10 @@ module Aws::Firehose
101
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
102
117
  # * `~/.aws/credentials`
103
118
  # * `~/.aws/config`
104
- # * EC2 IMDS instance profile - When used by default, the timeouts are
105
- # very aggressive. Construct and pass an instance of
106
- # `Aws::InstanceProfileCredentails` to enable retries and extended
107
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
108
123
  #
109
124
  # @option options [required, String] :region
110
125
  # The AWS region to connect to. The configured `:region` is
@@ -445,6 +460,10 @@ module Aws::Firehose
445
460
  # @option params [Types::SplunkDestinationConfiguration] :splunk_destination_configuration
446
461
  # The destination in Splunk. You can specify only one destination.
447
462
  #
463
+ # @option params [Types::HttpEndpointDestinationConfiguration] :http_endpoint_destination_configuration
464
+ # Enables configuring Kinesis Firehose to deliver data to any HTTP
465
+ # endpoint destination. You can specify only one destination.
466
+ #
448
467
  # @option params [Array<Types::Tag>] :tags
449
468
  # A set of tags to assign to the delivery stream. A tag is a key-value
450
469
  # pair that you can define and assign to AWS resources. Tags are
@@ -797,6 +816,72 @@ module Aws::Firehose
797
816
  # log_stream_name: "LogStreamName",
798
817
  # },
799
818
  # },
819
+ # http_endpoint_destination_configuration: {
820
+ # endpoint_configuration: { # required
821
+ # url: "HttpEndpointUrl", # required
822
+ # name: "HttpEndpointName",
823
+ # access_key: "HttpEndpointAccessKey",
824
+ # },
825
+ # buffering_hints: {
826
+ # size_in_m_bs: 1,
827
+ # interval_in_seconds: 1,
828
+ # },
829
+ # cloud_watch_logging_options: {
830
+ # enabled: false,
831
+ # log_group_name: "LogGroupName",
832
+ # log_stream_name: "LogStreamName",
833
+ # },
834
+ # request_configuration: {
835
+ # content_encoding: "NONE", # accepts NONE, GZIP
836
+ # common_attributes: [
837
+ # {
838
+ # attribute_name: "HttpEndpointAttributeName", # required
839
+ # attribute_value: "HttpEndpointAttributeValue", # required
840
+ # },
841
+ # ],
842
+ # },
843
+ # processing_configuration: {
844
+ # enabled: false,
845
+ # processors: [
846
+ # {
847
+ # type: "Lambda", # required, accepts Lambda
848
+ # parameters: [
849
+ # {
850
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds
851
+ # parameter_value: "ProcessorParameterValue", # required
852
+ # },
853
+ # ],
854
+ # },
855
+ # ],
856
+ # },
857
+ # role_arn: "RoleARN",
858
+ # retry_options: {
859
+ # duration_in_seconds: 1,
860
+ # },
861
+ # s3_backup_mode: "FailedDataOnly", # accepts FailedDataOnly, AllData
862
+ # s3_configuration: { # required
863
+ # role_arn: "RoleARN", # required
864
+ # bucket_arn: "BucketARN", # required
865
+ # prefix: "Prefix",
866
+ # error_output_prefix: "ErrorOutputPrefix",
867
+ # buffering_hints: {
868
+ # size_in_m_bs: 1,
869
+ # interval_in_seconds: 1,
870
+ # },
871
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy, HADOOP_SNAPPY
872
+ # encryption_configuration: {
873
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
874
+ # kms_encryption_config: {
875
+ # awskms_key_arn: "AWSKMSKeyARN", # required
876
+ # },
877
+ # },
878
+ # cloud_watch_logging_options: {
879
+ # enabled: false,
880
+ # log_group_name: "LogGroupName",
881
+ # log_stream_name: "LogStreamName",
882
+ # },
883
+ # },
884
+ # },
800
885
  # tags: [
801
886
  # {
802
887
  # key: "TagKey", # required
@@ -1105,6 +1190,38 @@ module Aws::Firehose
1105
1190
  # resp.delivery_stream_description.destinations[0].splunk_destination_description.cloud_watch_logging_options.enabled #=> Boolean
1106
1191
  # resp.delivery_stream_description.destinations[0].splunk_destination_description.cloud_watch_logging_options.log_group_name #=> String
1107
1192
  # resp.delivery_stream_description.destinations[0].splunk_destination_description.cloud_watch_logging_options.log_stream_name #=> String
1193
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.endpoint_configuration.url #=> String
1194
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.endpoint_configuration.name #=> String
1195
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.buffering_hints.size_in_m_bs #=> Integer
1196
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.buffering_hints.interval_in_seconds #=> Integer
1197
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.cloud_watch_logging_options.enabled #=> Boolean
1198
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.cloud_watch_logging_options.log_group_name #=> String
1199
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.cloud_watch_logging_options.log_stream_name #=> String
1200
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.request_configuration.content_encoding #=> String, one of "NONE", "GZIP"
1201
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.request_configuration.common_attributes #=> Array
1202
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.request_configuration.common_attributes[0].attribute_name #=> String
1203
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.request_configuration.common_attributes[0].attribute_value #=> String
1204
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.processing_configuration.enabled #=> Boolean
1205
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.processing_configuration.processors #=> Array
1206
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.processing_configuration.processors[0].type #=> String, one of "Lambda"
1207
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.processing_configuration.processors[0].parameters #=> Array
1208
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.processing_configuration.processors[0].parameters[0].parameter_name #=> String, one of "LambdaArn", "NumberOfRetries", "RoleArn", "BufferSizeInMBs", "BufferIntervalInSeconds"
1209
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.processing_configuration.processors[0].parameters[0].parameter_value #=> String
1210
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.role_arn #=> String
1211
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.retry_options.duration_in_seconds #=> Integer
1212
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_backup_mode #=> String, one of "FailedDataOnly", "AllData"
1213
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.role_arn #=> String
1214
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.bucket_arn #=> String
1215
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.prefix #=> String
1216
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.error_output_prefix #=> String
1217
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.buffering_hints.size_in_m_bs #=> Integer
1218
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.buffering_hints.interval_in_seconds #=> Integer
1219
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.compression_format #=> String, one of "UNCOMPRESSED", "GZIP", "ZIP", "Snappy", "HADOOP_SNAPPY"
1220
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.encryption_configuration.no_encryption_config #=> String, one of "NoEncryption"
1221
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.encryption_configuration.kms_encryption_config.awskms_key_arn #=> String
1222
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.cloud_watch_logging_options.enabled #=> Boolean
1223
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.cloud_watch_logging_options.log_group_name #=> String
1224
+ # resp.delivery_stream_description.destinations[0].http_endpoint_destination_description.s3_destination_description.cloud_watch_logging_options.log_stream_name #=> String
1108
1225
  # resp.delivery_stream_description.has_more_destinations #=> Boolean
1109
1226
  #
1110
1227
  # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DescribeDeliveryStream AWS API Documentation
@@ -1309,11 +1426,8 @@ module Aws::Firehose
1309
1426
  # use PutRecord. Applications using these operations are referred to as
1310
1427
  # producers.
1311
1428
  #
1312
- # By default, each delivery stream can take in up to 2,000 transactions
1313
- # per second, 5,000 records per second, or 5 MB per second. If you use
1314
- # PutRecord and PutRecordBatch, the limits are an aggregate across these
1315
- # two operations for each delivery stream. For more information about
1316
- # limits, see [Amazon Kinesis Data Firehose Limits][1].
1429
+ # For information about service quota, see [Amazon Kinesis Data Firehose
1430
+ # Quota][1].
1317
1431
  #
1318
1432
  # Each PutRecordBatch request supports up to 500 records. Each record in
1319
1433
  # the request can be as large as 1,000 KB (before 64-bit encoding), up
@@ -1693,6 +1807,9 @@ module Aws::Firehose
1693
1807
  # @option params [Types::SplunkDestinationUpdate] :splunk_destination_update
1694
1808
  # Describes an update for a destination in Splunk.
1695
1809
  #
1810
+ # @option params [Types::HttpEndpointDestinationUpdate] :http_endpoint_destination_update
1811
+ # Describes an update to the specified HTTP endpoint destination.
1812
+ #
1696
1813
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1697
1814
  #
1698
1815
  # @example Request syntax with placeholder values
@@ -2016,6 +2133,72 @@ module Aws::Firehose
2016
2133
  # log_stream_name: "LogStreamName",
2017
2134
  # },
2018
2135
  # },
2136
+ # http_endpoint_destination_update: {
2137
+ # endpoint_configuration: {
2138
+ # url: "HttpEndpointUrl", # required
2139
+ # name: "HttpEndpointName",
2140
+ # access_key: "HttpEndpointAccessKey",
2141
+ # },
2142
+ # buffering_hints: {
2143
+ # size_in_m_bs: 1,
2144
+ # interval_in_seconds: 1,
2145
+ # },
2146
+ # cloud_watch_logging_options: {
2147
+ # enabled: false,
2148
+ # log_group_name: "LogGroupName",
2149
+ # log_stream_name: "LogStreamName",
2150
+ # },
2151
+ # request_configuration: {
2152
+ # content_encoding: "NONE", # accepts NONE, GZIP
2153
+ # common_attributes: [
2154
+ # {
2155
+ # attribute_name: "HttpEndpointAttributeName", # required
2156
+ # attribute_value: "HttpEndpointAttributeValue", # required
2157
+ # },
2158
+ # ],
2159
+ # },
2160
+ # processing_configuration: {
2161
+ # enabled: false,
2162
+ # processors: [
2163
+ # {
2164
+ # type: "Lambda", # required, accepts Lambda
2165
+ # parameters: [
2166
+ # {
2167
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds
2168
+ # parameter_value: "ProcessorParameterValue", # required
2169
+ # },
2170
+ # ],
2171
+ # },
2172
+ # ],
2173
+ # },
2174
+ # role_arn: "RoleARN",
2175
+ # retry_options: {
2176
+ # duration_in_seconds: 1,
2177
+ # },
2178
+ # s3_backup_mode: "FailedDataOnly", # accepts FailedDataOnly, AllData
2179
+ # s3_update: {
2180
+ # role_arn: "RoleARN",
2181
+ # bucket_arn: "BucketARN",
2182
+ # prefix: "Prefix",
2183
+ # error_output_prefix: "ErrorOutputPrefix",
2184
+ # buffering_hints: {
2185
+ # size_in_m_bs: 1,
2186
+ # interval_in_seconds: 1,
2187
+ # },
2188
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy, HADOOP_SNAPPY
2189
+ # encryption_configuration: {
2190
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2191
+ # kms_encryption_config: {
2192
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2193
+ # },
2194
+ # },
2195
+ # cloud_watch_logging_options: {
2196
+ # enabled: false,
2197
+ # log_group_name: "LogGroupName",
2198
+ # log_stream_name: "LogStreamName",
2199
+ # },
2200
+ # },
2201
+ # },
2019
2202
  # })
2020
2203
  #
2021
2204
  # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/UpdateDestination AWS API Documentation
@@ -2040,7 +2223,7 @@ module Aws::Firehose
2040
2223
  params: params,
2041
2224
  config: config)
2042
2225
  context[:gem_name] = 'aws-sdk-firehose'
2043
- context[:gem_version] = '1.31.0'
2226
+ context[:gem_version] = '1.36.0'
2044
2227
  Seahorse::Client::Request.new(handlers, context)
2045
2228
  end
2046
2229
 
@@ -23,6 +23,7 @@ module Aws::Firehose
23
23
  ColumnToJsonKeyMappings = Shapes::MapShape.new(name: 'ColumnToJsonKeyMappings')
24
24
  CompressionFormat = Shapes::StringShape.new(name: 'CompressionFormat')
25
25
  ConcurrentModificationException = Shapes::StructureShape.new(name: 'ConcurrentModificationException')
26
+ ContentEncoding = Shapes::StringShape.new(name: 'ContentEncoding')
26
27
  CopyCommand = Shapes::StructureShape.new(name: 'CopyCommand')
27
28
  CopyOptions = Shapes::StringShape.new(name: 'CopyOptions')
28
29
  CreateDeliveryStreamInput = Shapes::StructureShape.new(name: 'CreateDeliveryStreamInput')
@@ -79,6 +80,25 @@ module Aws::Firehose
79
80
  HECEndpointType = Shapes::StringShape.new(name: 'HECEndpointType')
80
81
  HECToken = Shapes::StringShape.new(name: 'HECToken')
81
82
  HiveJsonSerDe = Shapes::StructureShape.new(name: 'HiveJsonSerDe')
83
+ HttpEndpointAccessKey = Shapes::StringShape.new(name: 'HttpEndpointAccessKey')
84
+ HttpEndpointAttributeName = Shapes::StringShape.new(name: 'HttpEndpointAttributeName')
85
+ HttpEndpointAttributeValue = Shapes::StringShape.new(name: 'HttpEndpointAttributeValue')
86
+ HttpEndpointBufferingHints = Shapes::StructureShape.new(name: 'HttpEndpointBufferingHints')
87
+ HttpEndpointBufferingIntervalInSeconds = Shapes::IntegerShape.new(name: 'HttpEndpointBufferingIntervalInSeconds')
88
+ HttpEndpointBufferingSizeInMBs = Shapes::IntegerShape.new(name: 'HttpEndpointBufferingSizeInMBs')
89
+ HttpEndpointCommonAttribute = Shapes::StructureShape.new(name: 'HttpEndpointCommonAttribute')
90
+ HttpEndpointCommonAttributesList = Shapes::ListShape.new(name: 'HttpEndpointCommonAttributesList')
91
+ HttpEndpointConfiguration = Shapes::StructureShape.new(name: 'HttpEndpointConfiguration')
92
+ HttpEndpointDescription = Shapes::StructureShape.new(name: 'HttpEndpointDescription')
93
+ HttpEndpointDestinationConfiguration = Shapes::StructureShape.new(name: 'HttpEndpointDestinationConfiguration')
94
+ HttpEndpointDestinationDescription = Shapes::StructureShape.new(name: 'HttpEndpointDestinationDescription')
95
+ HttpEndpointDestinationUpdate = Shapes::StructureShape.new(name: 'HttpEndpointDestinationUpdate')
96
+ HttpEndpointName = Shapes::StringShape.new(name: 'HttpEndpointName')
97
+ HttpEndpointRequestConfiguration = Shapes::StructureShape.new(name: 'HttpEndpointRequestConfiguration')
98
+ HttpEndpointRetryDurationInSeconds = Shapes::IntegerShape.new(name: 'HttpEndpointRetryDurationInSeconds')
99
+ HttpEndpointRetryOptions = Shapes::StructureShape.new(name: 'HttpEndpointRetryOptions')
100
+ HttpEndpointS3BackupMode = Shapes::StringShape.new(name: 'HttpEndpointS3BackupMode')
101
+ HttpEndpointUrl = Shapes::StringShape.new(name: 'HttpEndpointUrl')
82
102
  InputFormatConfiguration = Shapes::StructureShape.new(name: 'InputFormatConfiguration')
83
103
  IntervalInSeconds = Shapes::IntegerShape.new(name: 'IntervalInSeconds')
84
104
  InvalidArgumentException = Shapes::StructureShape.new(name: 'InvalidArgumentException')
@@ -210,6 +230,7 @@ module Aws::Firehose
210
230
  CreateDeliveryStreamInput.add_member(:redshift_destination_configuration, Shapes::ShapeRef.new(shape: RedshiftDestinationConfiguration, location_name: "RedshiftDestinationConfiguration"))
211
231
  CreateDeliveryStreamInput.add_member(:elasticsearch_destination_configuration, Shapes::ShapeRef.new(shape: ElasticsearchDestinationConfiguration, location_name: "ElasticsearchDestinationConfiguration"))
212
232
  CreateDeliveryStreamInput.add_member(:splunk_destination_configuration, Shapes::ShapeRef.new(shape: SplunkDestinationConfiguration, location_name: "SplunkDestinationConfiguration"))
233
+ CreateDeliveryStreamInput.add_member(:http_endpoint_destination_configuration, Shapes::ShapeRef.new(shape: HttpEndpointDestinationConfiguration, location_name: "HttpEndpointDestinationConfiguration"))
213
234
  CreateDeliveryStreamInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagDeliveryStreamInputTagList, location_name: "Tags"))
214
235
  CreateDeliveryStreamInput.struct_class = Types::CreateDeliveryStreamInput
215
236
 
@@ -272,6 +293,7 @@ module Aws::Firehose
272
293
  DestinationDescription.add_member(:redshift_destination_description, Shapes::ShapeRef.new(shape: RedshiftDestinationDescription, location_name: "RedshiftDestinationDescription"))
273
294
  DestinationDescription.add_member(:elasticsearch_destination_description, Shapes::ShapeRef.new(shape: ElasticsearchDestinationDescription, location_name: "ElasticsearchDestinationDescription"))
274
295
  DestinationDescription.add_member(:splunk_destination_description, Shapes::ShapeRef.new(shape: SplunkDestinationDescription, location_name: "SplunkDestinationDescription"))
296
+ DestinationDescription.add_member(:http_endpoint_destination_description, Shapes::ShapeRef.new(shape: HttpEndpointDestinationDescription, location_name: "HttpEndpointDestinationDescription"))
275
297
  DestinationDescription.struct_class = Types::DestinationDescription
276
298
 
277
299
  DestinationDescriptionList.member = Shapes::ShapeRef.new(shape: DestinationDescription)
@@ -379,6 +401,65 @@ module Aws::Firehose
379
401
  HiveJsonSerDe.add_member(:timestamp_formats, Shapes::ShapeRef.new(shape: ListOfNonEmptyStrings, location_name: "TimestampFormats"))
380
402
  HiveJsonSerDe.struct_class = Types::HiveJsonSerDe
381
403
 
404
+ HttpEndpointBufferingHints.add_member(:size_in_m_bs, Shapes::ShapeRef.new(shape: HttpEndpointBufferingSizeInMBs, location_name: "SizeInMBs"))
405
+ HttpEndpointBufferingHints.add_member(:interval_in_seconds, Shapes::ShapeRef.new(shape: HttpEndpointBufferingIntervalInSeconds, location_name: "IntervalInSeconds"))
406
+ HttpEndpointBufferingHints.struct_class = Types::HttpEndpointBufferingHints
407
+
408
+ HttpEndpointCommonAttribute.add_member(:attribute_name, Shapes::ShapeRef.new(shape: HttpEndpointAttributeName, required: true, location_name: "AttributeName"))
409
+ HttpEndpointCommonAttribute.add_member(:attribute_value, Shapes::ShapeRef.new(shape: HttpEndpointAttributeValue, required: true, location_name: "AttributeValue"))
410
+ HttpEndpointCommonAttribute.struct_class = Types::HttpEndpointCommonAttribute
411
+
412
+ HttpEndpointCommonAttributesList.member = Shapes::ShapeRef.new(shape: HttpEndpointCommonAttribute)
413
+
414
+ HttpEndpointConfiguration.add_member(:url, Shapes::ShapeRef.new(shape: HttpEndpointUrl, required: true, location_name: "Url"))
415
+ HttpEndpointConfiguration.add_member(:name, Shapes::ShapeRef.new(shape: HttpEndpointName, location_name: "Name"))
416
+ HttpEndpointConfiguration.add_member(:access_key, Shapes::ShapeRef.new(shape: HttpEndpointAccessKey, location_name: "AccessKey"))
417
+ HttpEndpointConfiguration.struct_class = Types::HttpEndpointConfiguration
418
+
419
+ HttpEndpointDescription.add_member(:url, Shapes::ShapeRef.new(shape: HttpEndpointUrl, location_name: "Url"))
420
+ HttpEndpointDescription.add_member(:name, Shapes::ShapeRef.new(shape: HttpEndpointName, location_name: "Name"))
421
+ HttpEndpointDescription.struct_class = Types::HttpEndpointDescription
422
+
423
+ HttpEndpointDestinationConfiguration.add_member(:endpoint_configuration, Shapes::ShapeRef.new(shape: HttpEndpointConfiguration, required: true, location_name: "EndpointConfiguration"))
424
+ HttpEndpointDestinationConfiguration.add_member(:buffering_hints, Shapes::ShapeRef.new(shape: HttpEndpointBufferingHints, location_name: "BufferingHints"))
425
+ HttpEndpointDestinationConfiguration.add_member(:cloud_watch_logging_options, Shapes::ShapeRef.new(shape: CloudWatchLoggingOptions, location_name: "CloudWatchLoggingOptions"))
426
+ HttpEndpointDestinationConfiguration.add_member(:request_configuration, Shapes::ShapeRef.new(shape: HttpEndpointRequestConfiguration, location_name: "RequestConfiguration"))
427
+ HttpEndpointDestinationConfiguration.add_member(:processing_configuration, Shapes::ShapeRef.new(shape: ProcessingConfiguration, location_name: "ProcessingConfiguration"))
428
+ HttpEndpointDestinationConfiguration.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleARN, location_name: "RoleARN"))
429
+ HttpEndpointDestinationConfiguration.add_member(:retry_options, Shapes::ShapeRef.new(shape: HttpEndpointRetryOptions, location_name: "RetryOptions"))
430
+ HttpEndpointDestinationConfiguration.add_member(:s3_backup_mode, Shapes::ShapeRef.new(shape: HttpEndpointS3BackupMode, location_name: "S3BackupMode"))
431
+ HttpEndpointDestinationConfiguration.add_member(:s3_configuration, Shapes::ShapeRef.new(shape: S3DestinationConfiguration, required: true, location_name: "S3Configuration"))
432
+ HttpEndpointDestinationConfiguration.struct_class = Types::HttpEndpointDestinationConfiguration
433
+
434
+ HttpEndpointDestinationDescription.add_member(:endpoint_configuration, Shapes::ShapeRef.new(shape: HttpEndpointDescription, location_name: "EndpointConfiguration"))
435
+ HttpEndpointDestinationDescription.add_member(:buffering_hints, Shapes::ShapeRef.new(shape: HttpEndpointBufferingHints, location_name: "BufferingHints"))
436
+ HttpEndpointDestinationDescription.add_member(:cloud_watch_logging_options, Shapes::ShapeRef.new(shape: CloudWatchLoggingOptions, location_name: "CloudWatchLoggingOptions"))
437
+ HttpEndpointDestinationDescription.add_member(:request_configuration, Shapes::ShapeRef.new(shape: HttpEndpointRequestConfiguration, location_name: "RequestConfiguration"))
438
+ HttpEndpointDestinationDescription.add_member(:processing_configuration, Shapes::ShapeRef.new(shape: ProcessingConfiguration, location_name: "ProcessingConfiguration"))
439
+ HttpEndpointDestinationDescription.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleARN, location_name: "RoleARN"))
440
+ HttpEndpointDestinationDescription.add_member(:retry_options, Shapes::ShapeRef.new(shape: HttpEndpointRetryOptions, location_name: "RetryOptions"))
441
+ HttpEndpointDestinationDescription.add_member(:s3_backup_mode, Shapes::ShapeRef.new(shape: HttpEndpointS3BackupMode, location_name: "S3BackupMode"))
442
+ HttpEndpointDestinationDescription.add_member(:s3_destination_description, Shapes::ShapeRef.new(shape: S3DestinationDescription, location_name: "S3DestinationDescription"))
443
+ HttpEndpointDestinationDescription.struct_class = Types::HttpEndpointDestinationDescription
444
+
445
+ HttpEndpointDestinationUpdate.add_member(:endpoint_configuration, Shapes::ShapeRef.new(shape: HttpEndpointConfiguration, location_name: "EndpointConfiguration"))
446
+ HttpEndpointDestinationUpdate.add_member(:buffering_hints, Shapes::ShapeRef.new(shape: HttpEndpointBufferingHints, location_name: "BufferingHints"))
447
+ HttpEndpointDestinationUpdate.add_member(:cloud_watch_logging_options, Shapes::ShapeRef.new(shape: CloudWatchLoggingOptions, location_name: "CloudWatchLoggingOptions"))
448
+ HttpEndpointDestinationUpdate.add_member(:request_configuration, Shapes::ShapeRef.new(shape: HttpEndpointRequestConfiguration, location_name: "RequestConfiguration"))
449
+ HttpEndpointDestinationUpdate.add_member(:processing_configuration, Shapes::ShapeRef.new(shape: ProcessingConfiguration, location_name: "ProcessingConfiguration"))
450
+ HttpEndpointDestinationUpdate.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleARN, location_name: "RoleARN"))
451
+ HttpEndpointDestinationUpdate.add_member(:retry_options, Shapes::ShapeRef.new(shape: HttpEndpointRetryOptions, location_name: "RetryOptions"))
452
+ HttpEndpointDestinationUpdate.add_member(:s3_backup_mode, Shapes::ShapeRef.new(shape: HttpEndpointS3BackupMode, location_name: "S3BackupMode"))
453
+ HttpEndpointDestinationUpdate.add_member(:s3_update, Shapes::ShapeRef.new(shape: S3DestinationUpdate, location_name: "S3Update"))
454
+ HttpEndpointDestinationUpdate.struct_class = Types::HttpEndpointDestinationUpdate
455
+
456
+ HttpEndpointRequestConfiguration.add_member(:content_encoding, Shapes::ShapeRef.new(shape: ContentEncoding, location_name: "ContentEncoding"))
457
+ HttpEndpointRequestConfiguration.add_member(:common_attributes, Shapes::ShapeRef.new(shape: HttpEndpointCommonAttributesList, location_name: "CommonAttributes"))
458
+ HttpEndpointRequestConfiguration.struct_class = Types::HttpEndpointRequestConfiguration
459
+
460
+ HttpEndpointRetryOptions.add_member(:duration_in_seconds, Shapes::ShapeRef.new(shape: HttpEndpointRetryDurationInSeconds, location_name: "DurationInSeconds"))
461
+ HttpEndpointRetryOptions.struct_class = Types::HttpEndpointRetryOptions
462
+
382
463
  InputFormatConfiguration.add_member(:deserializer, Shapes::ShapeRef.new(shape: Deserializer, location_name: "Deserializer"))
383
464
  InputFormatConfiguration.struct_class = Types::InputFormatConfiguration
384
465
 
@@ -675,6 +756,7 @@ module Aws::Firehose
675
756
  UpdateDestinationInput.add_member(:redshift_destination_update, Shapes::ShapeRef.new(shape: RedshiftDestinationUpdate, location_name: "RedshiftDestinationUpdate"))
676
757
  UpdateDestinationInput.add_member(:elasticsearch_destination_update, Shapes::ShapeRef.new(shape: ElasticsearchDestinationUpdate, location_name: "ElasticsearchDestinationUpdate"))
677
758
  UpdateDestinationInput.add_member(:splunk_destination_update, Shapes::ShapeRef.new(shape: SplunkDestinationUpdate, location_name: "SplunkDestinationUpdate"))
759
+ UpdateDestinationInput.add_member(:http_endpoint_destination_update, Shapes::ShapeRef.new(shape: HttpEndpointDestinationUpdate, location_name: "HttpEndpointDestinationUpdate"))
678
760
  UpdateDestinationInput.struct_class = Types::UpdateDestinationInput
679
761
 
680
762
  UpdateDestinationOutput.struct_class = Types::UpdateDestinationOutput
@@ -499,6 +499,72 @@ module Aws::Firehose
499
499
  # log_stream_name: "LogStreamName",
500
500
  # },
501
501
  # },
502
+ # http_endpoint_destination_configuration: {
503
+ # endpoint_configuration: { # required
504
+ # url: "HttpEndpointUrl", # required
505
+ # name: "HttpEndpointName",
506
+ # access_key: "HttpEndpointAccessKey",
507
+ # },
508
+ # buffering_hints: {
509
+ # size_in_m_bs: 1,
510
+ # interval_in_seconds: 1,
511
+ # },
512
+ # cloud_watch_logging_options: {
513
+ # enabled: false,
514
+ # log_group_name: "LogGroupName",
515
+ # log_stream_name: "LogStreamName",
516
+ # },
517
+ # request_configuration: {
518
+ # content_encoding: "NONE", # accepts NONE, GZIP
519
+ # common_attributes: [
520
+ # {
521
+ # attribute_name: "HttpEndpointAttributeName", # required
522
+ # attribute_value: "HttpEndpointAttributeValue", # required
523
+ # },
524
+ # ],
525
+ # },
526
+ # processing_configuration: {
527
+ # enabled: false,
528
+ # processors: [
529
+ # {
530
+ # type: "Lambda", # required, accepts Lambda
531
+ # parameters: [
532
+ # {
533
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds
534
+ # parameter_value: "ProcessorParameterValue", # required
535
+ # },
536
+ # ],
537
+ # },
538
+ # ],
539
+ # },
540
+ # role_arn: "RoleARN",
541
+ # retry_options: {
542
+ # duration_in_seconds: 1,
543
+ # },
544
+ # s3_backup_mode: "FailedDataOnly", # accepts FailedDataOnly, AllData
545
+ # s3_configuration: { # required
546
+ # role_arn: "RoleARN", # required
547
+ # bucket_arn: "BucketARN", # required
548
+ # prefix: "Prefix",
549
+ # error_output_prefix: "ErrorOutputPrefix",
550
+ # buffering_hints: {
551
+ # size_in_m_bs: 1,
552
+ # interval_in_seconds: 1,
553
+ # },
554
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy, HADOOP_SNAPPY
555
+ # encryption_configuration: {
556
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
557
+ # kms_encryption_config: {
558
+ # awskms_key_arn: "AWSKMSKeyARN", # required
559
+ # },
560
+ # },
561
+ # cloud_watch_logging_options: {
562
+ # enabled: false,
563
+ # log_group_name: "LogGroupName",
564
+ # log_stream_name: "LogStreamName",
565
+ # },
566
+ # },
567
+ # },
502
568
  # tags: [
503
569
  # {
504
570
  # key: "TagKey", # required
@@ -559,6 +625,11 @@ module Aws::Firehose
559
625
  # The destination in Splunk. You can specify only one destination.
560
626
  # @return [Types::SplunkDestinationConfiguration]
561
627
  #
628
+ # @!attribute [rw] http_endpoint_destination_configuration
629
+ # Enables configuring Kinesis Firehose to deliver data to any HTTP
630
+ # endpoint destination. You can specify only one destination.
631
+ # @return [Types::HttpEndpointDestinationConfiguration]
632
+ #
562
633
  # @!attribute [rw] tags
563
634
  # A set of tags to assign to the delivery stream. A tag is a key-value
564
635
  # pair that you can define and assign to AWS resources. Tags are
@@ -587,6 +658,7 @@ module Aws::Firehose
587
658
  :redshift_destination_configuration,
588
659
  :elasticsearch_destination_configuration,
589
660
  :splunk_destination_configuration,
661
+ :http_endpoint_destination_configuration,
590
662
  :tags)
591
663
  SENSITIVE = []
592
664
  include Aws::Structure
@@ -1071,6 +1143,10 @@ module Aws::Firehose
1071
1143
  # The destination in Splunk.
1072
1144
  # @return [Types::SplunkDestinationDescription]
1073
1145
  #
1146
+ # @!attribute [rw] http_endpoint_destination_description
1147
+ # Describes the specified HTTP endpoint destination.
1148
+ # @return [Types::HttpEndpointDestinationDescription]
1149
+ #
1074
1150
  # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DestinationDescription AWS API Documentation
1075
1151
  #
1076
1152
  class DestinationDescription < Struct.new(
@@ -1079,7 +1155,8 @@ module Aws::Firehose
1079
1155
  :extended_s3_destination_description,
1080
1156
  :redshift_destination_description,
1081
1157
  :elasticsearch_destination_description,
1082
- :splunk_destination_description)
1158
+ :splunk_destination_description,
1159
+ :http_endpoint_destination_description)
1083
1160
  SENSITIVE = []
1084
1161
  include Aws::Structure
1085
1162
  end
@@ -1266,6 +1343,9 @@ module Aws::Firehose
1266
1343
  # information, see [Amazon S3 Backup for the Amazon ES
1267
1344
  # Destination][1]. Default value is `FailedDocumentsOnly`.
1268
1345
  #
1346
+ # You can't change this backup mode after you create the delivery
1347
+ # stream.
1348
+ #
1269
1349
  #
1270
1350
  #
1271
1351
  # [1]: https://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-s3-backup
@@ -1795,7 +1875,10 @@ module Aws::Firehose
1795
1875
  # @return [Types::ProcessingConfiguration]
1796
1876
  #
1797
1877
  # @!attribute [rw] s3_backup_mode
1798
- # The Amazon S3 backup mode.
1878
+ # The Amazon S3 backup mode. After you create a delivery stream, you
1879
+ # can update it to enable Amazon S3 backup if it is disabled. If
1880
+ # backup is enabled, you can't update the delivery stream to disable
1881
+ # it.
1799
1882
  # @return [String]
1800
1883
  #
1801
1884
  # @!attribute [rw] s3_backup_configuration
@@ -2101,7 +2184,9 @@ module Aws::Firehose
2101
2184
  # @return [Types::ProcessingConfiguration]
2102
2185
  #
2103
2186
  # @!attribute [rw] s3_backup_mode
2104
- # Enables or disables Amazon S3 backup mode.
2187
+ # You can update a delivery stream to enable Amazon S3 backup if it is
2188
+ # disabled. If backup is enabled, you can't update the delivery
2189
+ # stream to disable it.
2105
2190
  # @return [String]
2106
2191
  #
2107
2192
  # @!attribute [rw] s3_backup_update
@@ -2191,6 +2276,542 @@ module Aws::Firehose
2191
2276
  include Aws::Structure
2192
2277
  end
2193
2278
 
2279
+ # Describes the buffering options that can be applied before data is
2280
+ # delivered to the HTTP endpoint destination. Kinesis Data Firehose
2281
+ # treats these options as hints, and it might choose to use more optimal
2282
+ # values. The `SizeInMBs` and `IntervalInSeconds` parameters are
2283
+ # optional. However, if specify a value for one of them, you must also
2284
+ # provide a value for the other.
2285
+ #
2286
+ # @note When making an API call, you may pass HttpEndpointBufferingHints
2287
+ # data as a hash:
2288
+ #
2289
+ # {
2290
+ # size_in_m_bs: 1,
2291
+ # interval_in_seconds: 1,
2292
+ # }
2293
+ #
2294
+ # @!attribute [rw] size_in_m_bs
2295
+ # Buffer incoming data to the specified size, in MBs, before
2296
+ # delivering it to the destination. The default value is 5.
2297
+ #
2298
+ # We recommend setting this parameter to a value greater than the
2299
+ # amount of data you typically ingest into the delivery stream in 10
2300
+ # seconds. For example, if you typically ingest data at 1 MB/sec, the
2301
+ # value should be 10 MB or higher.
2302
+ # @return [Integer]
2303
+ #
2304
+ # @!attribute [rw] interval_in_seconds
2305
+ # Buffer incoming data for the specified period of time, in seconds,
2306
+ # before delivering it to the destination. The default value is 300 (5
2307
+ # minutes).
2308
+ # @return [Integer]
2309
+ #
2310
+ # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/HttpEndpointBufferingHints AWS API Documentation
2311
+ #
2312
+ class HttpEndpointBufferingHints < Struct.new(
2313
+ :size_in_m_bs,
2314
+ :interval_in_seconds)
2315
+ SENSITIVE = []
2316
+ include Aws::Structure
2317
+ end
2318
+
2319
+ # Describes the metadata that's delivered to the specified HTTP
2320
+ # endpoint destination.
2321
+ #
2322
+ # @note When making an API call, you may pass HttpEndpointCommonAttribute
2323
+ # data as a hash:
2324
+ #
2325
+ # {
2326
+ # attribute_name: "HttpEndpointAttributeName", # required
2327
+ # attribute_value: "HttpEndpointAttributeValue", # required
2328
+ # }
2329
+ #
2330
+ # @!attribute [rw] attribute_name
2331
+ # The name of the HTTP endpoint common attribute.
2332
+ # @return [String]
2333
+ #
2334
+ # @!attribute [rw] attribute_value
2335
+ # The value of the HTTP endpoint common attribute.
2336
+ # @return [String]
2337
+ #
2338
+ # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/HttpEndpointCommonAttribute AWS API Documentation
2339
+ #
2340
+ class HttpEndpointCommonAttribute < Struct.new(
2341
+ :attribute_name,
2342
+ :attribute_value)
2343
+ SENSITIVE = [:attribute_name, :attribute_value]
2344
+ include Aws::Structure
2345
+ end
2346
+
2347
+ # Describes the configuration of the HTTP endpoint to which Kinesis
2348
+ # Firehose delivers data.
2349
+ #
2350
+ # @note When making an API call, you may pass HttpEndpointConfiguration
2351
+ # data as a hash:
2352
+ #
2353
+ # {
2354
+ # url: "HttpEndpointUrl", # required
2355
+ # name: "HttpEndpointName",
2356
+ # access_key: "HttpEndpointAccessKey",
2357
+ # }
2358
+ #
2359
+ # @!attribute [rw] url
2360
+ # The URL of the HTTP endpoint selected as the destination.
2361
+ # @return [String]
2362
+ #
2363
+ # @!attribute [rw] name
2364
+ # The name of the HTTP endpoint selected as the destination.
2365
+ # @return [String]
2366
+ #
2367
+ # @!attribute [rw] access_key
2368
+ # The access key required for Kinesis Firehose to authenticate with
2369
+ # the HTTP endpoint selected as the destination.
2370
+ # @return [String]
2371
+ #
2372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/HttpEndpointConfiguration AWS API Documentation
2373
+ #
2374
+ class HttpEndpointConfiguration < Struct.new(
2375
+ :url,
2376
+ :name,
2377
+ :access_key)
2378
+ SENSITIVE = [:url, :access_key]
2379
+ include Aws::Structure
2380
+ end
2381
+
2382
+ # Describes the HTTP endpoint selected as the destination.
2383
+ #
2384
+ # @!attribute [rw] url
2385
+ # The URL of the HTTP endpoint selected as the destination.
2386
+ # @return [String]
2387
+ #
2388
+ # @!attribute [rw] name
2389
+ # The name of the HTTP endpoint selected as the destination.
2390
+ # @return [String]
2391
+ #
2392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/HttpEndpointDescription AWS API Documentation
2393
+ #
2394
+ class HttpEndpointDescription < Struct.new(
2395
+ :url,
2396
+ :name)
2397
+ SENSITIVE = [:url]
2398
+ include Aws::Structure
2399
+ end
2400
+
2401
+ # Describes the configuration of the HTTP endpoint destination.
2402
+ #
2403
+ # @note When making an API call, you may pass HttpEndpointDestinationConfiguration
2404
+ # data as a hash:
2405
+ #
2406
+ # {
2407
+ # endpoint_configuration: { # required
2408
+ # url: "HttpEndpointUrl", # required
2409
+ # name: "HttpEndpointName",
2410
+ # access_key: "HttpEndpointAccessKey",
2411
+ # },
2412
+ # buffering_hints: {
2413
+ # size_in_m_bs: 1,
2414
+ # interval_in_seconds: 1,
2415
+ # },
2416
+ # cloud_watch_logging_options: {
2417
+ # enabled: false,
2418
+ # log_group_name: "LogGroupName",
2419
+ # log_stream_name: "LogStreamName",
2420
+ # },
2421
+ # request_configuration: {
2422
+ # content_encoding: "NONE", # accepts NONE, GZIP
2423
+ # common_attributes: [
2424
+ # {
2425
+ # attribute_name: "HttpEndpointAttributeName", # required
2426
+ # attribute_value: "HttpEndpointAttributeValue", # required
2427
+ # },
2428
+ # ],
2429
+ # },
2430
+ # processing_configuration: {
2431
+ # enabled: false,
2432
+ # processors: [
2433
+ # {
2434
+ # type: "Lambda", # required, accepts Lambda
2435
+ # parameters: [
2436
+ # {
2437
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds
2438
+ # parameter_value: "ProcessorParameterValue", # required
2439
+ # },
2440
+ # ],
2441
+ # },
2442
+ # ],
2443
+ # },
2444
+ # role_arn: "RoleARN",
2445
+ # retry_options: {
2446
+ # duration_in_seconds: 1,
2447
+ # },
2448
+ # s3_backup_mode: "FailedDataOnly", # accepts FailedDataOnly, AllData
2449
+ # s3_configuration: { # required
2450
+ # role_arn: "RoleARN", # required
2451
+ # bucket_arn: "BucketARN", # required
2452
+ # prefix: "Prefix",
2453
+ # error_output_prefix: "ErrorOutputPrefix",
2454
+ # buffering_hints: {
2455
+ # size_in_m_bs: 1,
2456
+ # interval_in_seconds: 1,
2457
+ # },
2458
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy, HADOOP_SNAPPY
2459
+ # encryption_configuration: {
2460
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2461
+ # kms_encryption_config: {
2462
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2463
+ # },
2464
+ # },
2465
+ # cloud_watch_logging_options: {
2466
+ # enabled: false,
2467
+ # log_group_name: "LogGroupName",
2468
+ # log_stream_name: "LogStreamName",
2469
+ # },
2470
+ # },
2471
+ # }
2472
+ #
2473
+ # @!attribute [rw] endpoint_configuration
2474
+ # The configuration of the HTTP endpoint selected as the destination.
2475
+ # @return [Types::HttpEndpointConfiguration]
2476
+ #
2477
+ # @!attribute [rw] buffering_hints
2478
+ # The buffering options that can be used before data is delivered to
2479
+ # the specified destination. Kinesis Data Firehose treats these
2480
+ # options as hints, and it might choose to use more optimal values.
2481
+ # The `SizeInMBs` and `IntervalInSeconds` parameters are optional.
2482
+ # However, if you specify a value for one of them, you must also
2483
+ # provide a value for the other.
2484
+ # @return [Types::HttpEndpointBufferingHints]
2485
+ #
2486
+ # @!attribute [rw] cloud_watch_logging_options
2487
+ # Describes the Amazon CloudWatch logging options for your delivery
2488
+ # stream.
2489
+ # @return [Types::CloudWatchLoggingOptions]
2490
+ #
2491
+ # @!attribute [rw] request_configuration
2492
+ # The configuration of the requeste sent to the HTTP endpoint
2493
+ # specified as the destination.
2494
+ # @return [Types::HttpEndpointRequestConfiguration]
2495
+ #
2496
+ # @!attribute [rw] processing_configuration
2497
+ # Describes a data processing configuration.
2498
+ # @return [Types::ProcessingConfiguration]
2499
+ #
2500
+ # @!attribute [rw] role_arn
2501
+ # Kinesis Data Firehose uses this IAM role for all the permissions
2502
+ # that the delivery stream needs.
2503
+ # @return [String]
2504
+ #
2505
+ # @!attribute [rw] retry_options
2506
+ # Describes the retry behavior in case Kinesis Data Firehose is unable
2507
+ # to deliver data to the specified HTTP endpoint destination, or if it
2508
+ # doesn't receive a valid acknowledgment of receipt from the
2509
+ # specified HTTP endpoint destination.
2510
+ # @return [Types::HttpEndpointRetryOptions]
2511
+ #
2512
+ # @!attribute [rw] s3_backup_mode
2513
+ # Describes the S3 bucket backup options for the data that Kinesis
2514
+ # Data Firehose delivers to the HTTP endpoint destination. You can
2515
+ # back up all documents (`AllData`) or only the documents that Kinesis
2516
+ # Data Firehose could not deliver to the specified HTTP endpoint
2517
+ # destination (`FailedDataOnly`).
2518
+ # @return [String]
2519
+ #
2520
+ # @!attribute [rw] s3_configuration
2521
+ # Describes the configuration of a destination in Amazon S3.
2522
+ # @return [Types::S3DestinationConfiguration]
2523
+ #
2524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/HttpEndpointDestinationConfiguration AWS API Documentation
2525
+ #
2526
+ class HttpEndpointDestinationConfiguration < Struct.new(
2527
+ :endpoint_configuration,
2528
+ :buffering_hints,
2529
+ :cloud_watch_logging_options,
2530
+ :request_configuration,
2531
+ :processing_configuration,
2532
+ :role_arn,
2533
+ :retry_options,
2534
+ :s3_backup_mode,
2535
+ :s3_configuration)
2536
+ SENSITIVE = []
2537
+ include Aws::Structure
2538
+ end
2539
+
2540
+ # Describes the HTTP endpoint destination.
2541
+ #
2542
+ # @!attribute [rw] endpoint_configuration
2543
+ # The configuration of the specified HTTP endpoint destination.
2544
+ # @return [Types::HttpEndpointDescription]
2545
+ #
2546
+ # @!attribute [rw] buffering_hints
2547
+ # Describes buffering options that can be applied to the data before
2548
+ # it is delivered to the HTTPS endpoint destination. Kinesis Data
2549
+ # Firehose teats these options as hints, and it might choose to use
2550
+ # more optimal values. The `SizeInMBs` and `IntervalInSeconds`
2551
+ # parameters are optional. However, if specify a value for one of
2552
+ # them, you must also provide a value for the other.
2553
+ # @return [Types::HttpEndpointBufferingHints]
2554
+ #
2555
+ # @!attribute [rw] cloud_watch_logging_options
2556
+ # Describes the Amazon CloudWatch logging options for your delivery
2557
+ # stream.
2558
+ # @return [Types::CloudWatchLoggingOptions]
2559
+ #
2560
+ # @!attribute [rw] request_configuration
2561
+ # The configuration of request sent to the HTTP endpoint specified as
2562
+ # the destination.
2563
+ # @return [Types::HttpEndpointRequestConfiguration]
2564
+ #
2565
+ # @!attribute [rw] processing_configuration
2566
+ # Describes a data processing configuration.
2567
+ # @return [Types::ProcessingConfiguration]
2568
+ #
2569
+ # @!attribute [rw] role_arn
2570
+ # Kinesis Data Firehose uses this IAM role for all the permissions
2571
+ # that the delivery stream needs.
2572
+ # @return [String]
2573
+ #
2574
+ # @!attribute [rw] retry_options
2575
+ # Describes the retry behavior in case Kinesis Data Firehose is unable
2576
+ # to deliver data to the specified HTTP endpoint destination, or if it
2577
+ # doesn't receive a valid acknowledgment of receipt from the
2578
+ # specified HTTP endpoint destination.
2579
+ # @return [Types::HttpEndpointRetryOptions]
2580
+ #
2581
+ # @!attribute [rw] s3_backup_mode
2582
+ # Describes the S3 bucket backup options for the data that Kinesis
2583
+ # Firehose delivers to the HTTP endpoint destination. You can back up
2584
+ # all documents (`AllData`) or only the documents that Kinesis Data
2585
+ # Firehose could not deliver to the specified HTTP endpoint
2586
+ # destination (`FailedDataOnly`).
2587
+ # @return [String]
2588
+ #
2589
+ # @!attribute [rw] s3_destination_description
2590
+ # Describes a destination in Amazon S3.
2591
+ # @return [Types::S3DestinationDescription]
2592
+ #
2593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/HttpEndpointDestinationDescription AWS API Documentation
2594
+ #
2595
+ class HttpEndpointDestinationDescription < Struct.new(
2596
+ :endpoint_configuration,
2597
+ :buffering_hints,
2598
+ :cloud_watch_logging_options,
2599
+ :request_configuration,
2600
+ :processing_configuration,
2601
+ :role_arn,
2602
+ :retry_options,
2603
+ :s3_backup_mode,
2604
+ :s3_destination_description)
2605
+ SENSITIVE = []
2606
+ include Aws::Structure
2607
+ end
2608
+
2609
+ # Updates the specified HTTP endpoint destination.
2610
+ #
2611
+ # @note When making an API call, you may pass HttpEndpointDestinationUpdate
2612
+ # data as a hash:
2613
+ #
2614
+ # {
2615
+ # endpoint_configuration: {
2616
+ # url: "HttpEndpointUrl", # required
2617
+ # name: "HttpEndpointName",
2618
+ # access_key: "HttpEndpointAccessKey",
2619
+ # },
2620
+ # buffering_hints: {
2621
+ # size_in_m_bs: 1,
2622
+ # interval_in_seconds: 1,
2623
+ # },
2624
+ # cloud_watch_logging_options: {
2625
+ # enabled: false,
2626
+ # log_group_name: "LogGroupName",
2627
+ # log_stream_name: "LogStreamName",
2628
+ # },
2629
+ # request_configuration: {
2630
+ # content_encoding: "NONE", # accepts NONE, GZIP
2631
+ # common_attributes: [
2632
+ # {
2633
+ # attribute_name: "HttpEndpointAttributeName", # required
2634
+ # attribute_value: "HttpEndpointAttributeValue", # required
2635
+ # },
2636
+ # ],
2637
+ # },
2638
+ # processing_configuration: {
2639
+ # enabled: false,
2640
+ # processors: [
2641
+ # {
2642
+ # type: "Lambda", # required, accepts Lambda
2643
+ # parameters: [
2644
+ # {
2645
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds
2646
+ # parameter_value: "ProcessorParameterValue", # required
2647
+ # },
2648
+ # ],
2649
+ # },
2650
+ # ],
2651
+ # },
2652
+ # role_arn: "RoleARN",
2653
+ # retry_options: {
2654
+ # duration_in_seconds: 1,
2655
+ # },
2656
+ # s3_backup_mode: "FailedDataOnly", # accepts FailedDataOnly, AllData
2657
+ # s3_update: {
2658
+ # role_arn: "RoleARN",
2659
+ # bucket_arn: "BucketARN",
2660
+ # prefix: "Prefix",
2661
+ # error_output_prefix: "ErrorOutputPrefix",
2662
+ # buffering_hints: {
2663
+ # size_in_m_bs: 1,
2664
+ # interval_in_seconds: 1,
2665
+ # },
2666
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy, HADOOP_SNAPPY
2667
+ # encryption_configuration: {
2668
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2669
+ # kms_encryption_config: {
2670
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2671
+ # },
2672
+ # },
2673
+ # cloud_watch_logging_options: {
2674
+ # enabled: false,
2675
+ # log_group_name: "LogGroupName",
2676
+ # log_stream_name: "LogStreamName",
2677
+ # },
2678
+ # },
2679
+ # }
2680
+ #
2681
+ # @!attribute [rw] endpoint_configuration
2682
+ # Describes the configuration of the HTTP endpoint destination.
2683
+ # @return [Types::HttpEndpointConfiguration]
2684
+ #
2685
+ # @!attribute [rw] buffering_hints
2686
+ # Describes buffering options that can be applied to the data before
2687
+ # it is delivered to the HTTPS endpoint destination. Kinesis Data
2688
+ # Firehose teats these options as hints, and it might choose to use
2689
+ # more optimal values. The `SizeInMBs` and `IntervalInSeconds`
2690
+ # parameters are optional. However, if specify a value for one of
2691
+ # them, you must also provide a value for the other.
2692
+ # @return [Types::HttpEndpointBufferingHints]
2693
+ #
2694
+ # @!attribute [rw] cloud_watch_logging_options
2695
+ # Describes the Amazon CloudWatch logging options for your delivery
2696
+ # stream.
2697
+ # @return [Types::CloudWatchLoggingOptions]
2698
+ #
2699
+ # @!attribute [rw] request_configuration
2700
+ # The configuration of the request sent to the HTTP endpoint specified
2701
+ # as the destination.
2702
+ # @return [Types::HttpEndpointRequestConfiguration]
2703
+ #
2704
+ # @!attribute [rw] processing_configuration
2705
+ # Describes a data processing configuration.
2706
+ # @return [Types::ProcessingConfiguration]
2707
+ #
2708
+ # @!attribute [rw] role_arn
2709
+ # Kinesis Data Firehose uses this IAM role for all the permissions
2710
+ # that the delivery stream needs.
2711
+ # @return [String]
2712
+ #
2713
+ # @!attribute [rw] retry_options
2714
+ # Describes the retry behavior in case Kinesis Data Firehose is unable
2715
+ # to deliver data to the specified HTTP endpoint destination, or if it
2716
+ # doesn't receive a valid acknowledgment of receipt from the
2717
+ # specified HTTP endpoint destination.
2718
+ # @return [Types::HttpEndpointRetryOptions]
2719
+ #
2720
+ # @!attribute [rw] s3_backup_mode
2721
+ # Describes the S3 bucket backup options for the data that Kinesis
2722
+ # Firehose delivers to the HTTP endpoint destination. You can back up
2723
+ # all documents (`AllData`) or only the documents that Kinesis Data
2724
+ # Firehose could not deliver to the specified HTTP endpoint
2725
+ # destination (`FailedDataOnly`).
2726
+ # @return [String]
2727
+ #
2728
+ # @!attribute [rw] s3_update
2729
+ # Describes an update for a destination in Amazon S3.
2730
+ # @return [Types::S3DestinationUpdate]
2731
+ #
2732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/HttpEndpointDestinationUpdate AWS API Documentation
2733
+ #
2734
+ class HttpEndpointDestinationUpdate < Struct.new(
2735
+ :endpoint_configuration,
2736
+ :buffering_hints,
2737
+ :cloud_watch_logging_options,
2738
+ :request_configuration,
2739
+ :processing_configuration,
2740
+ :role_arn,
2741
+ :retry_options,
2742
+ :s3_backup_mode,
2743
+ :s3_update)
2744
+ SENSITIVE = []
2745
+ include Aws::Structure
2746
+ end
2747
+
2748
+ # The configuration of the HTTP endpoint request.
2749
+ #
2750
+ # @note When making an API call, you may pass HttpEndpointRequestConfiguration
2751
+ # data as a hash:
2752
+ #
2753
+ # {
2754
+ # content_encoding: "NONE", # accepts NONE, GZIP
2755
+ # common_attributes: [
2756
+ # {
2757
+ # attribute_name: "HttpEndpointAttributeName", # required
2758
+ # attribute_value: "HttpEndpointAttributeValue", # required
2759
+ # },
2760
+ # ],
2761
+ # }
2762
+ #
2763
+ # @!attribute [rw] content_encoding
2764
+ # Kinesis Data Firehose uses the content encoding to compress the body
2765
+ # of a request before sending the request to the destination. For more
2766
+ # information, see [Content-Encoding][1] in MDN Web Docs, the official
2767
+ # Mozilla documentation.
2768
+ #
2769
+ #
2770
+ #
2771
+ # [1]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Encoding
2772
+ # @return [String]
2773
+ #
2774
+ # @!attribute [rw] common_attributes
2775
+ # Describes the metadata sent to the HTTP endpoint destination.
2776
+ # @return [Array<Types::HttpEndpointCommonAttribute>]
2777
+ #
2778
+ # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/HttpEndpointRequestConfiguration AWS API Documentation
2779
+ #
2780
+ class HttpEndpointRequestConfiguration < Struct.new(
2781
+ :content_encoding,
2782
+ :common_attributes)
2783
+ SENSITIVE = []
2784
+ include Aws::Structure
2785
+ end
2786
+
2787
+ # Describes the retry behavior in case Kinesis Data Firehose is unable
2788
+ # to deliver data to the specified HTTP endpoint destination, or if it
2789
+ # doesn't receive a valid acknowledgment of receipt from the specified
2790
+ # HTTP endpoint destination.
2791
+ #
2792
+ # @note When making an API call, you may pass HttpEndpointRetryOptions
2793
+ # data as a hash:
2794
+ #
2795
+ # {
2796
+ # duration_in_seconds: 1,
2797
+ # }
2798
+ #
2799
+ # @!attribute [rw] duration_in_seconds
2800
+ # The total amount of time that Kinesis Data Firehose spends on
2801
+ # retries. This duration starts after the initial attempt to send data
2802
+ # to the custom destination via HTTPS endpoint fails. It doesn't
2803
+ # include the periods during which Kinesis Data Firehose waits for
2804
+ # acknowledgment from the specified destination after each attempt.
2805
+ # @return [Integer]
2806
+ #
2807
+ # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/HttpEndpointRetryOptions AWS API Documentation
2808
+ #
2809
+ class HttpEndpointRetryOptions < Struct.new(
2810
+ :duration_in_seconds)
2811
+ SENSITIVE = []
2812
+ include Aws::Structure
2813
+ end
2814
+
2194
2815
  # Specifies the deserializer you want to use to convert the format of
2195
2816
  # the input data. This parameter is required if `Enabled` is set to
2196
2817
  # true.
@@ -3153,7 +3774,10 @@ module Aws::Firehose
3153
3774
  # @return [Types::ProcessingConfiguration]
3154
3775
  #
3155
3776
  # @!attribute [rw] s3_backup_mode
3156
- # The Amazon S3 backup mode.
3777
+ # The Amazon S3 backup mode. After you create a delivery stream, you
3778
+ # can update it to enable Amazon S3 backup if it is disabled. If
3779
+ # backup is enabled, you can't update the delivery stream to disable
3780
+ # it.
3157
3781
  # @return [String]
3158
3782
  #
3159
3783
  # @!attribute [rw] s3_backup_configuration
@@ -3379,7 +4003,9 @@ module Aws::Firehose
3379
4003
  # @return [Types::ProcessingConfiguration]
3380
4004
  #
3381
4005
  # @!attribute [rw] s3_backup_mode
3382
- # The Amazon S3 backup mode.
4006
+ # You can update a delivery stream to enable Amazon S3 backup if it is
4007
+ # disabled. If backup is enabled, you can't update the delivery
4008
+ # stream to disable it.
3383
4009
  # @return [String]
3384
4010
  #
3385
4011
  # @!attribute [rw] s3_backup_update
@@ -4001,11 +4627,15 @@ module Aws::Firehose
4001
4627
  #
4002
4628
  # @!attribute [rw] s3_backup_mode
4003
4629
  # Defines how documents should be delivered to Amazon S3. When set to
4004
- # `FailedDocumentsOnly`, Kinesis Data Firehose writes any data that
4005
- # could not be indexed to the configured Amazon S3 destination. When
4006
- # set to `AllDocuments`, Kinesis Data Firehose delivers all incoming
4007
- # records to Amazon S3, and also writes failed documents to Amazon S3.
4008
- # Default value is `FailedDocumentsOnly`.
4630
+ # `FailedEventsOnly`, Kinesis Data Firehose writes any data that could
4631
+ # not be indexed to the configured Amazon S3 destination. When set to
4632
+ # `AllEvents`, Kinesis Data Firehose delivers all incoming records to
4633
+ # Amazon S3, and also writes failed documents to Amazon S3. The
4634
+ # default value is `FailedEventsOnly`.
4635
+ #
4636
+ # You can update this backup mode from `FailedEventsOnly` to
4637
+ # `AllEvents`. You can't update it from `AllEvents` to
4638
+ # `FailedEventsOnly`.
4009
4639
  # @return [String]
4010
4640
  #
4011
4641
  # @!attribute [rw] s3_configuration
@@ -4187,12 +4817,16 @@ module Aws::Firehose
4187
4817
  # @return [Types::SplunkRetryOptions]
4188
4818
  #
4189
4819
  # @!attribute [rw] s3_backup_mode
4190
- # Defines how documents should be delivered to Amazon S3. When set to
4191
- # `FailedDocumentsOnly`, Kinesis Data Firehose writes any data that
4192
- # could not be indexed to the configured Amazon S3 destination. When
4193
- # set to `AllDocuments`, Kinesis Data Firehose delivers all incoming
4194
- # records to Amazon S3, and also writes failed documents to Amazon S3.
4195
- # Default value is `FailedDocumentsOnly`.
4820
+ # Specifies how you want Kinesis Data Firehose to back up documents to
4821
+ # Amazon S3. When set to `FailedDocumentsOnly`, Kinesis Data Firehose
4822
+ # writes any data that could not be indexed to the configured Amazon
4823
+ # S3 destination. When set to `AllEvents`, Kinesis Data Firehose
4824
+ # delivers all incoming records to Amazon S3, and also writes failed
4825
+ # documents to Amazon S3. The default value is `FailedEventsOnly`.
4826
+ #
4827
+ # You can update this backup mode from `FailedEventsOnly` to
4828
+ # `AllEvents`. You can't update it from `AllEvents` to
4829
+ # `FailedEventsOnly`.
4196
4830
  # @return [String]
4197
4831
  #
4198
4832
  # @!attribute [rw] s3_update
@@ -4726,6 +5360,72 @@ module Aws::Firehose
4726
5360
  # log_stream_name: "LogStreamName",
4727
5361
  # },
4728
5362
  # },
5363
+ # http_endpoint_destination_update: {
5364
+ # endpoint_configuration: {
5365
+ # url: "HttpEndpointUrl", # required
5366
+ # name: "HttpEndpointName",
5367
+ # access_key: "HttpEndpointAccessKey",
5368
+ # },
5369
+ # buffering_hints: {
5370
+ # size_in_m_bs: 1,
5371
+ # interval_in_seconds: 1,
5372
+ # },
5373
+ # cloud_watch_logging_options: {
5374
+ # enabled: false,
5375
+ # log_group_name: "LogGroupName",
5376
+ # log_stream_name: "LogStreamName",
5377
+ # },
5378
+ # request_configuration: {
5379
+ # content_encoding: "NONE", # accepts NONE, GZIP
5380
+ # common_attributes: [
5381
+ # {
5382
+ # attribute_name: "HttpEndpointAttributeName", # required
5383
+ # attribute_value: "HttpEndpointAttributeValue", # required
5384
+ # },
5385
+ # ],
5386
+ # },
5387
+ # processing_configuration: {
5388
+ # enabled: false,
5389
+ # processors: [
5390
+ # {
5391
+ # type: "Lambda", # required, accepts Lambda
5392
+ # parameters: [
5393
+ # {
5394
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds
5395
+ # parameter_value: "ProcessorParameterValue", # required
5396
+ # },
5397
+ # ],
5398
+ # },
5399
+ # ],
5400
+ # },
5401
+ # role_arn: "RoleARN",
5402
+ # retry_options: {
5403
+ # duration_in_seconds: 1,
5404
+ # },
5405
+ # s3_backup_mode: "FailedDataOnly", # accepts FailedDataOnly, AllData
5406
+ # s3_update: {
5407
+ # role_arn: "RoleARN",
5408
+ # bucket_arn: "BucketARN",
5409
+ # prefix: "Prefix",
5410
+ # error_output_prefix: "ErrorOutputPrefix",
5411
+ # buffering_hints: {
5412
+ # size_in_m_bs: 1,
5413
+ # interval_in_seconds: 1,
5414
+ # },
5415
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy, HADOOP_SNAPPY
5416
+ # encryption_configuration: {
5417
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
5418
+ # kms_encryption_config: {
5419
+ # awskms_key_arn: "AWSKMSKeyARN", # required
5420
+ # },
5421
+ # },
5422
+ # cloud_watch_logging_options: {
5423
+ # enabled: false,
5424
+ # log_group_name: "LogGroupName",
5425
+ # log_stream_name: "LogStreamName",
5426
+ # },
5427
+ # },
5428
+ # },
4729
5429
  # }
4730
5430
  #
4731
5431
  # @!attribute [rw] delivery_stream_name
@@ -4766,6 +5466,10 @@ module Aws::Firehose
4766
5466
  # Describes an update for a destination in Splunk.
4767
5467
  # @return [Types::SplunkDestinationUpdate]
4768
5468
  #
5469
+ # @!attribute [rw] http_endpoint_destination_update
5470
+ # Describes an update to the specified HTTP endpoint destination.
5471
+ # @return [Types::HttpEndpointDestinationUpdate]
5472
+ #
4769
5473
  # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/UpdateDestinationInput AWS API Documentation
4770
5474
  #
4771
5475
  class UpdateDestinationInput < Struct.new(
@@ -4776,7 +5480,8 @@ module Aws::Firehose
4776
5480
  :extended_s3_destination_update,
4777
5481
  :redshift_destination_update,
4778
5482
  :elasticsearch_destination_update,
4779
- :splunk_destination_update)
5483
+ :splunk_destination_update,
5484
+ :http_endpoint_destination_update)
4780
5485
  SENSITIVE = []
4781
5486
  include Aws::Structure
4782
5487
  end
@@ -4821,12 +5526,51 @@ module Aws::Firehose
4821
5526
  #
4822
5527
  # @!attribute [rw] role_arn
4823
5528
  # The ARN of the IAM role that you want the delivery stream to use to
4824
- # create endpoints in the destination VPC.
5529
+ # create endpoints in the destination VPC. You can use your existing
5530
+ # Kinesis Data Firehose delivery role or you can specify a new role.
5531
+ # In either case, make sure that the role trusts the Kinesis Data
5532
+ # Firehose service principal and that it grants the following
5533
+ # permissions:
5534
+ #
5535
+ # * `ec2:DescribeVpcs`
5536
+ #
5537
+ # * `ec2:DescribeVpcAttribute`
5538
+ #
5539
+ # * `ec2:DescribeSubnets`
5540
+ #
5541
+ # * `ec2:DescribeSecurityGroups`
5542
+ #
5543
+ # * `ec2:DescribeNetworkInterfaces`
5544
+ #
5545
+ # * `ec2:CreateNetworkInterface`
5546
+ #
5547
+ # * `ec2:CreateNetworkInterfacePermission`
5548
+ #
5549
+ # * `ec2:DeleteNetworkInterface`
5550
+ #
5551
+ # If you revoke these permissions after you create the delivery
5552
+ # stream, Kinesis Data Firehose can't scale out by creating more ENIs
5553
+ # when necessary. You might therefore see a degradation in
5554
+ # performance.
4825
5555
  # @return [String]
4826
5556
  #
4827
5557
  # @!attribute [rw] security_group_ids
4828
5558
  # The IDs of the security groups that you want Kinesis Data Firehose
4829
5559
  # to use when it creates ENIs in the VPC of the Amazon ES destination.
5560
+ # You can use the same security group that the Amazon ES domain uses
5561
+ # or different ones. If you specify different security groups here,
5562
+ # ensure that they allow outbound HTTPS traffic to the Amazon ES
5563
+ # domain's security group. Also ensure that the Amazon ES domain's
5564
+ # security group allows HTTPS traffic from the security groups
5565
+ # specified here. If you use the same security group for both your
5566
+ # delivery stream and the Amazon ES domain, make sure the security
5567
+ # group inbound rule allows HTTPS traffic. For more information about
5568
+ # security group rules, see [Security group rules][1] in the Amazon
5569
+ # VPC documentation.
5570
+ #
5571
+ #
5572
+ #
5573
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#SecurityGroupRules
4830
5574
  # @return [Array<String>]
4831
5575
  #
4832
5576
  # @see http://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/VpcConfiguration AWS API Documentation
@@ -4865,13 +5609,50 @@ module Aws::Firehose
4865
5609
  # @return [Array<String>]
4866
5610
  #
4867
5611
  # @!attribute [rw] role_arn
4868
- # The ARN of the IAM role that you want the delivery stream uses to
4869
- # create endpoints in the destination VPC.
5612
+ # The ARN of the IAM role that the delivery stream uses to create
5613
+ # endpoints in the destination VPC. You can use your existing Kinesis
5614
+ # Data Firehose delivery role or you can specify a new role. In either
5615
+ # case, make sure that the role trusts the Kinesis Data Firehose
5616
+ # service principal and that it grants the following permissions:
5617
+ #
5618
+ # * `ec2:DescribeVpcs`
5619
+ #
5620
+ # * `ec2:DescribeVpcAttribute`
5621
+ #
5622
+ # * `ec2:DescribeSubnets`
5623
+ #
5624
+ # * `ec2:DescribeSecurityGroups`
5625
+ #
5626
+ # * `ec2:DescribeNetworkInterfaces`
5627
+ #
5628
+ # * `ec2:CreateNetworkInterface`
5629
+ #
5630
+ # * `ec2:CreateNetworkInterfacePermission`
5631
+ #
5632
+ # * `ec2:DeleteNetworkInterface`
5633
+ #
5634
+ # If you revoke these permissions after you create the delivery
5635
+ # stream, Kinesis Data Firehose can't scale out by creating more ENIs
5636
+ # when necessary. You might therefore see a degradation in
5637
+ # performance.
4870
5638
  # @return [String]
4871
5639
  #
4872
5640
  # @!attribute [rw] security_group_ids
4873
5641
  # The IDs of the security groups that Kinesis Data Firehose uses when
4874
- # it creates ENIs in the VPC of the Amazon ES destination.
5642
+ # it creates ENIs in the VPC of the Amazon ES destination. You can use
5643
+ # the same security group that the Amazon ES domain uses or different
5644
+ # ones. If you specify different security groups, ensure that they
5645
+ # allow outbound HTTPS traffic to the Amazon ES domain's security
5646
+ # group. Also ensure that the Amazon ES domain's security group
5647
+ # allows HTTPS traffic from the security groups specified here. If you
5648
+ # use the same security group for both your delivery stream and the
5649
+ # Amazon ES domain, make sure the security group inbound rule allows
5650
+ # HTTPS traffic. For more information about security group rules, see
5651
+ # [Security group rules][1] in the Amazon VPC documentation.
5652
+ #
5653
+ #
5654
+ #
5655
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#SecurityGroupRules
4875
5656
  # @return [Array<String>]
4876
5657
  #
4877
5658
  # @!attribute [rw] vpc_id