aws-sdk-firehose 1.30.0 → 1.35.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 716f8f0ad821bd0967701b68cbd41d027a25599881ab2eab3a4ebc45b21edebe
4
- data.tar.gz: 7349808ef223a77353ff492fd4483cbe8e9265f4e595a6d0d6b45183b7686c28
3
+ metadata.gz: 189fa0b1fec6e551b43bdf1f363b6b095bf682143d2a0106756192909ce37908
4
+ data.tar.gz: fcef14d0f97c1bb0bbd4d1830acedf752e069d6cdce3d26c10b76880d4ddc5b7
5
5
  SHA512:
6
- metadata.gz: 5b42ba5b60ddbcd848a9cec9463017379305ddf72e14452d5ad3a350fcf63f32a4eb2876ba4c920a6ea5aa57a606712af2f86f9fdacac1aa3e1432b2b9111795
7
- data.tar.gz: bcd51adfa057c35f810a29a21cbcbc73dcd3bb0af182ac0394ce4857cd54ffc849299530027a9c96dcb0421c7e4a48cfac8b8bdd55dc251b70bc9cd4bcf33d12
6
+ metadata.gz: cdc2f1e9c62ea2d48a38a47afcd4900af78ea53e2df03ac1eb73c2a92dc2366ed65710807040833094bf095d4ac8ffde22baca06a400d4246d3ff9cacf35fda4
7
+ data.tar.gz: 33144fe71c47a4abdb78c2a314354d5a267395db5cf5a0b5bbc7ff74a4e7c92de4e02c576143399a474f7e1e7c00f69ef729e672d94b9284402d720138cfa39b
@@ -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.30.0'
51
+ GEM_VERSION = '1.35.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.30.0'
2226
+ context[:gem_version] = '1.35.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