aws-sdk-s3 1.96.2 → 1.113.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.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +105 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/arn/access_point_arn.rb +6 -6
  5. data/lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb +68 -0
  6. data/lib/aws-sdk-s3/arn/object_lambda_arn.rb +6 -6
  7. data/lib/aws-sdk-s3/arn/outpost_access_point_arn.rb +7 -6
  8. data/lib/aws-sdk-s3/bucket.rb +126 -29
  9. data/lib/aws-sdk-s3/bucket_acl.rb +21 -4
  10. data/lib/aws-sdk-s3/bucket_cors.rb +23 -6
  11. data/lib/aws-sdk-s3/bucket_lifecycle.rb +27 -8
  12. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +28 -6
  13. data/lib/aws-sdk-s3/bucket_logging.rb +21 -4
  14. data/lib/aws-sdk-s3/bucket_notification.rb +19 -7
  15. data/lib/aws-sdk-s3/bucket_policy.rb +23 -6
  16. data/lib/aws-sdk-s3/bucket_request_payment.rb +21 -4
  17. data/lib/aws-sdk-s3/bucket_tagging.rb +23 -6
  18. data/lib/aws-sdk-s3/bucket_versioning.rb +63 -12
  19. data/lib/aws-sdk-s3/bucket_website.rb +23 -6
  20. data/lib/aws-sdk-s3/client.rb +2691 -1278
  21. data/lib/aws-sdk-s3/client_api.rb +390 -21
  22. data/lib/aws-sdk-s3/customizations/object.rb +78 -5
  23. data/lib/aws-sdk-s3/encryption/client.rb +1 -1
  24. data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +0 -4
  25. data/lib/aws-sdk-s3/encryptionV2/client.rb +1 -1
  26. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +0 -4
  27. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +0 -4
  28. data/lib/aws-sdk-s3/file_downloader.rb +1 -1
  29. data/lib/aws-sdk-s3/file_uploader.rb +6 -1
  30. data/lib/aws-sdk-s3/multipart_file_uploader.rb +26 -7
  31. data/lib/aws-sdk-s3/multipart_upload.rb +126 -12
  32. data/lib/aws-sdk-s3/multipart_upload_part.rb +134 -14
  33. data/lib/aws-sdk-s3/object.rb +291 -115
  34. data/lib/aws-sdk-s3/object_acl.rb +23 -6
  35. data/lib/aws-sdk-s3/object_summary.rb +207 -80
  36. data/lib/aws-sdk-s3/object_version.rb +66 -39
  37. data/lib/aws-sdk-s3/plugins/accelerate.rb +7 -1
  38. data/lib/aws-sdk-s3/plugins/arn.rb +59 -33
  39. data/lib/aws-sdk-s3/plugins/bucket_dns.rb +1 -1
  40. data/lib/aws-sdk-s3/plugins/dualstack.rb +25 -31
  41. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +6 -0
  42. data/lib/aws-sdk-s3/plugins/md5s.rb +5 -3
  43. data/lib/aws-sdk-s3/plugins/s3_signer.rb +29 -5
  44. data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +31 -0
  45. data/lib/aws-sdk-s3/presigned_post.rb +38 -19
  46. data/lib/aws-sdk-s3/presigner.rb +6 -0
  47. data/lib/aws-sdk-s3/resource.rb +18 -0
  48. data/lib/aws-sdk-s3/types.rb +2928 -920
  49. data/lib/aws-sdk-s3.rb +1 -1
  50. metadata +9 -7
@@ -183,8 +183,8 @@ module Aws::S3
183
183
  # @param [Hash] options ({})
184
184
  # @option options [String] :expected_bucket_owner
185
185
  # The account ID of the expected bucket owner. If the bucket is owned by
186
- # a different account, the request will fail with an HTTP `403 (Access
187
- # Denied)` error.
186
+ # a different account, the request fails with the HTTP status code `403
187
+ # Forbidden` (access denied).
188
188
  # @return [EmptyStructure]
189
189
  def delete(options = {})
190
190
  options = options.merge(bucket: @bucket_name)
@@ -208,6 +208,7 @@ module Aws::S3
208
208
  # ],
209
209
  # },
210
210
  # content_md5: "ContentMD5",
211
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
211
212
  # expected_bucket_owner: "AccountId",
212
213
  # })
213
214
  # @param [Hash] options ({})
@@ -224,16 +225,32 @@ module Aws::S3
224
225
  # used as a message integrity check to verify that the request body was
225
226
  # not corrupted in transit. For more information, go to [RFC 1864.][1]
226
227
  #
227
- # For requests made using the AWS Command Line Interface (CLI) or AWS
228
- # SDKs, this field is calculated automatically.
228
+ # For requests made using the Amazon Web Services Command Line Interface
229
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
230
+ # automatically.
229
231
  #
230
232
  #
231
233
  #
232
234
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
235
+ # @option options [String] :checksum_algorithm
236
+ # Indicates the algorithm used to create the checksum for the object
237
+ # when using the SDK. This header will not provide any additional
238
+ # functionality if not using the SDK. When sending this header, there
239
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
240
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
241
+ # `400 Bad Request`. For more information, see [Checking object
242
+ # integrity][1] in the *Amazon S3 User Guide*.
243
+ #
244
+ # If you provide an individual checksum, Amazon S3 ignores any provided
245
+ # `ChecksumAlgorithm` parameter.
246
+ #
247
+ #
248
+ #
249
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
233
250
  # @option options [String] :expected_bucket_owner
234
251
  # The account ID of the expected bucket owner. If the bucket is owned by
235
- # a different account, the request will fail with an HTTP `403 (Access
236
- # Denied)` error.
252
+ # a different account, the request fails with the HTTP status code `403
253
+ # Forbidden` (access denied).
237
254
  # @return [EmptyStructure]
238
255
  def put(options = {})
239
256
  options = options.merge(bucket: @bucket_name)
@@ -182,8 +182,8 @@ module Aws::S3
182
182
  # @param [Hash] options ({})
183
183
  # @option options [String] :expected_bucket_owner
184
184
  # The account ID of the expected bucket owner. If the bucket is owned by
185
- # a different account, the request will fail with an HTTP `403 (Access
186
- # Denied)` error.
185
+ # a different account, the request fails with the HTTP status code `403
186
+ # Forbidden` (access denied).
187
187
  # @return [EmptyStructure]
188
188
  def delete(options = {})
189
189
  options = options.merge(bucket: @bucket_name)
@@ -195,6 +195,7 @@ module Aws::S3
195
195
  #
196
196
  # bucket_lifecycle.put({
197
197
  # content_md5: "ContentMD5",
198
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
198
199
  # lifecycle_configuration: {
199
200
  # rules: [ # required
200
201
  # {
@@ -209,14 +210,16 @@ module Aws::S3
209
210
  # transition: {
210
211
  # date: Time.now,
211
212
  # days: 1,
212
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
213
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
213
214
  # },
214
215
  # noncurrent_version_transition: {
215
216
  # noncurrent_days: 1,
216
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
217
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
218
+ # newer_noncurrent_versions: 1,
217
219
  # },
218
220
  # noncurrent_version_expiration: {
219
221
  # noncurrent_days: 1,
222
+ # newer_noncurrent_versions: 1,
220
223
  # },
221
224
  # abort_incomplete_multipart_upload: {
222
225
  # days_after_initiation: 1,
@@ -228,13 +231,29 @@ module Aws::S3
228
231
  # })
229
232
  # @param [Hash] options ({})
230
233
  # @option options [String] :content_md5
231
- # For requests made using the AWS Command Line Interface (CLI) or AWS
232
- # SDKs, this field is calculated automatically.
234
+ # For requests made using the Amazon Web Services Command Line Interface
235
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
236
+ # automatically.
237
+ # @option options [String] :checksum_algorithm
238
+ # Indicates the algorithm used to create the checksum for the object
239
+ # when using the SDK. This header will not provide any additional
240
+ # functionality if not using the SDK. When sending this header, there
241
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
242
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
243
+ # `400 Bad Request`. For more information, see [Checking object
244
+ # integrity][1] in the *Amazon S3 User Guide*.
245
+ #
246
+ # If you provide an individual checksum, Amazon S3 ignores any provided
247
+ # `ChecksumAlgorithm` parameter.
248
+ #
249
+ #
250
+ #
251
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
233
252
  # @option options [Types::LifecycleConfiguration] :lifecycle_configuration
234
253
  # @option options [String] :expected_bucket_owner
235
254
  # The account ID of the expected bucket owner. If the bucket is owned by
236
- # a different account, the request will fail with an HTTP `403 (Access
237
- # Denied)` error.
255
+ # a different account, the request fails with the HTTP status code `403
256
+ # Forbidden` (access denied).
238
257
  # @return [EmptyStructure]
239
258
  def put(options = {})
240
259
  options = options.merge(bucket: @bucket_name)
@@ -182,8 +182,8 @@ module Aws::S3
182
182
  # @param [Hash] options ({})
183
183
  # @option options [String] :expected_bucket_owner
184
184
  # The account ID of the expected bucket owner. If the bucket is owned by
185
- # a different account, the request will fail with an HTTP `403 (Access
186
- # Denied)` error.
185
+ # a different account, the request fails with the HTTP status code `403
186
+ # Forbidden` (access denied).
187
187
  # @return [EmptyStructure]
188
188
  def delete(options = {})
189
189
  options = options.merge(bucket: @bucket_name)
@@ -194,6 +194,7 @@ module Aws::S3
194
194
  # @example Request syntax with placeholder values
195
195
  #
196
196
  # bucket_lifecycle_configuration.put({
197
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
197
198
  # lifecycle_configuration: {
198
199
  # rules: [ # required
199
200
  # {
@@ -210,6 +211,8 @@ module Aws::S3
210
211
  # key: "ObjectKey", # required
211
212
  # value: "Value", # required
212
213
  # },
214
+ # object_size_greater_than: 1,
215
+ # object_size_less_than: 1,
213
216
  # and: {
214
217
  # prefix: "Prefix",
215
218
  # tags: [
@@ -218,6 +221,8 @@ module Aws::S3
218
221
  # value: "Value", # required
219
222
  # },
220
223
  # ],
224
+ # object_size_greater_than: 1,
225
+ # object_size_less_than: 1,
221
226
  # },
222
227
  # },
223
228
  # status: "Enabled", # required, accepts Enabled, Disabled
@@ -225,17 +230,19 @@ module Aws::S3
225
230
  # {
226
231
  # date: Time.now,
227
232
  # days: 1,
228
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
233
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
229
234
  # },
230
235
  # ],
231
236
  # noncurrent_version_transitions: [
232
237
  # {
233
238
  # noncurrent_days: 1,
234
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
239
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
240
+ # newer_noncurrent_versions: 1,
235
241
  # },
236
242
  # ],
237
243
  # noncurrent_version_expiration: {
238
244
  # noncurrent_days: 1,
245
+ # newer_noncurrent_versions: 1,
239
246
  # },
240
247
  # abort_incomplete_multipart_upload: {
241
248
  # days_after_initiation: 1,
@@ -246,12 +253,27 @@ module Aws::S3
246
253
  # expected_bucket_owner: "AccountId",
247
254
  # })
248
255
  # @param [Hash] options ({})
256
+ # @option options [String] :checksum_algorithm
257
+ # Indicates the algorithm used to create the checksum for the object
258
+ # when using the SDK. This header will not provide any additional
259
+ # functionality if not using the SDK. When sending this header, there
260
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
261
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
262
+ # `400 Bad Request`. For more information, see [Checking object
263
+ # integrity][1] in the *Amazon S3 User Guide*.
264
+ #
265
+ # If you provide an individual checksum, Amazon S3 ignores any provided
266
+ # `ChecksumAlgorithm` parameter.
267
+ #
268
+ #
269
+ #
270
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
249
271
  # @option options [Types::BucketLifecycleConfiguration] :lifecycle_configuration
250
272
  # Container for lifecycle rules. You can add as many as 1,000 rules.
251
273
  # @option options [String] :expected_bucket_owner
252
274
  # The account ID of the expected bucket owner. If the bucket is owned by
253
- # a different account, the request will fail with an HTTP `403 (Access
254
- # Denied)` error.
275
+ # a different account, the request fails with the HTTP status code `403
276
+ # Forbidden` (access denied).
255
277
  # @return [EmptyStructure]
256
278
  def put(options = {})
257
279
  options = options.merge(bucket: @bucket_name)
@@ -202,6 +202,7 @@ module Aws::S3
202
202
  # },
203
203
  # },
204
204
  # content_md5: "ContentMD5",
205
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
205
206
  # expected_bucket_owner: "AccountId",
206
207
  # })
207
208
  # @param [Hash] options ({})
@@ -210,12 +211,28 @@ module Aws::S3
210
211
  # @option options [String] :content_md5
211
212
  # The MD5 hash of the `PutBucketLogging` request body.
212
213
  #
213
- # For requests made using the AWS Command Line Interface (CLI) or AWS
214
- # SDKs, this field is calculated automatically.
214
+ # For requests made using the Amazon Web Services Command Line Interface
215
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
216
+ # automatically.
217
+ # @option options [String] :checksum_algorithm
218
+ # Indicates the algorithm used to create the checksum for the object
219
+ # when using the SDK. This header will not provide any additional
220
+ # functionality if not using the SDK. When sending this header, there
221
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
222
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
223
+ # `400 Bad Request`. For more information, see [Checking object
224
+ # integrity][1] in the *Amazon S3 User Guide*.
225
+ #
226
+ # If you provide an individual checksum, Amazon S3 ignores any provided
227
+ # `ChecksumAlgorithm` parameter.
228
+ #
229
+ #
230
+ #
231
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
215
232
  # @option options [String] :expected_bucket_owner
216
233
  # The account ID of the expected bucket owner. If the bucket is owned by
217
- # a different account, the request will fail with an HTTP `403 (Access
218
- # Denied)` error.
234
+ # a different account, the request fails with the HTTP status code `403
235
+ # Forbidden` (access denied).
219
236
  # @return [EmptyStructure]
220
237
  def put(options = {})
221
238
  options = options.merge(bucket: @bucket_name)
@@ -48,13 +48,19 @@ module Aws::S3
48
48
  data[:queue_configurations]
49
49
  end
50
50
 
51
- # Describes the AWS Lambda functions to invoke and the events for which
52
- # to invoke them.
51
+ # Describes the Lambda functions to invoke and the events for which to
52
+ # invoke them.
53
53
  # @return [Array<Types::LambdaFunctionConfiguration>]
54
54
  def lambda_function_configurations
55
55
  data[:lambda_function_configurations]
56
56
  end
57
57
 
58
+ # Enables delivery of events to Amazon EventBridge.
59
+ # @return [Types::EventBridgeConfiguration]
60
+ def event_bridge_configuration
61
+ data[:event_bridge_configuration]
62
+ end
63
+
58
64
  # @!endgroup
59
65
 
60
66
  # @return [Client]
@@ -197,7 +203,7 @@ module Aws::S3
197
203
  # {
198
204
  # id: "NotificationId",
199
205
  # topic_arn: "TopicArn", # required
200
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
206
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
201
207
  # filter: {
202
208
  # key: {
203
209
  # filter_rules: [
@@ -214,7 +220,7 @@ module Aws::S3
214
220
  # {
215
221
  # id: "NotificationId",
216
222
  # queue_arn: "QueueArn", # required
217
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
223
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
218
224
  # filter: {
219
225
  # key: {
220
226
  # filter_rules: [
@@ -231,7 +237,7 @@ module Aws::S3
231
237
  # {
232
238
  # id: "NotificationId",
233
239
  # lambda_function_arn: "LambdaFunctionArn", # required
234
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
240
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
235
241
  # filter: {
236
242
  # key: {
237
243
  # filter_rules: [
@@ -244,8 +250,11 @@ module Aws::S3
244
250
  # },
245
251
  # },
246
252
  # ],
253
+ # event_bridge_configuration: {
254
+ # },
247
255
  # },
248
256
  # expected_bucket_owner: "AccountId",
257
+ # skip_destination_validation: false,
249
258
  # })
250
259
  # @param [Hash] options ({})
251
260
  # @option options [required, Types::NotificationConfiguration] :notification_configuration
@@ -254,8 +263,11 @@ module Aws::S3
254
263
  # bucket.
255
264
  # @option options [String] :expected_bucket_owner
256
265
  # The account ID of the expected bucket owner. If the bucket is owned by
257
- # a different account, the request will fail with an HTTP `403 (Access
258
- # Denied)` error.
266
+ # a different account, the request fails with the HTTP status code `403
267
+ # Forbidden` (access denied).
268
+ # @option options [Boolean] :skip_destination_validation
269
+ # Skips validation of Amazon SQS, Amazon SNS, and Lambda destinations.
270
+ # True or false value.
259
271
  # @return [EmptyStructure]
260
272
  def put(options = {})
261
273
  options = options.merge(bucket: @bucket_name)
@@ -182,8 +182,8 @@ module Aws::S3
182
182
  # @param [Hash] options ({})
183
183
  # @option options [String] :expected_bucket_owner
184
184
  # The account ID of the expected bucket owner. If the bucket is owned by
185
- # a different account, the request will fail with an HTTP `403 (Access
186
- # Denied)` error.
185
+ # a different account, the request fails with the HTTP status code `403
186
+ # Forbidden` (access denied).
187
187
  # @return [EmptyStructure]
188
188
  def delete(options = {})
189
189
  options = options.merge(bucket: @bucket_name)
@@ -195,6 +195,7 @@ module Aws::S3
195
195
  #
196
196
  # bucket_policy.put({
197
197
  # content_md5: "ContentMD5",
198
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
198
199
  # confirm_remove_self_bucket_access: false,
199
200
  # policy: "Policy", # required
200
201
  # expected_bucket_owner: "AccountId",
@@ -203,8 +204,24 @@ module Aws::S3
203
204
  # @option options [String] :content_md5
204
205
  # The MD5 hash of the request body.
205
206
  #
206
- # For requests made using the AWS Command Line Interface (CLI) or AWS
207
- # SDKs, this field is calculated automatically.
207
+ # For requests made using the Amazon Web Services Command Line Interface
208
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
209
+ # automatically.
210
+ # @option options [String] :checksum_algorithm
211
+ # Indicates the algorithm used to create the checksum for the object
212
+ # when using the SDK. This header will not provide any additional
213
+ # functionality if not using the SDK. When sending this header, there
214
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
215
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
216
+ # `400 Bad Request`. For more information, see [Checking object
217
+ # integrity][1] in the *Amazon S3 User Guide*.
218
+ #
219
+ # If you provide an individual checksum, Amazon S3 ignores any provided
220
+ # `ChecksumAlgorithm` parameter.
221
+ #
222
+ #
223
+ #
224
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
208
225
  # @option options [Boolean] :confirm_remove_self_bucket_access
209
226
  # Set this parameter to true to confirm that you want to remove your
210
227
  # permissions to change this bucket policy in the future.
@@ -212,8 +229,8 @@ module Aws::S3
212
229
  # The bucket policy as a JSON document.
213
230
  # @option options [String] :expected_bucket_owner
214
231
  # The account ID of the expected bucket owner. If the bucket is owned by
215
- # a different account, the request will fail with an HTTP `403 (Access
216
- # Denied)` error.
232
+ # a different account, the request fails with the HTTP status code `403
233
+ # Forbidden` (access denied).
217
234
  # @return [EmptyStructure]
218
235
  def put(options = {})
219
236
  options = options.merge(bucket: @bucket_name)
@@ -178,6 +178,7 @@ module Aws::S3
178
178
  #
179
179
  # bucket_request_payment.put({
180
180
  # content_md5: "ContentMD5",
181
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
181
182
  # request_payment_configuration: { # required
182
183
  # payer: "Requester", # required, accepts Requester, BucketOwner
183
184
  # },
@@ -189,18 +190,34 @@ module Aws::S3
189
190
  # header as a message integrity check to verify that the request body
190
191
  # was not corrupted in transit. For more information, see [RFC 1864][1].
191
192
  #
192
- # For requests made using the AWS Command Line Interface (CLI) or AWS
193
- # SDKs, this field is calculated automatically.
193
+ # For requests made using the Amazon Web Services Command Line Interface
194
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
195
+ # automatically.
194
196
  #
195
197
  #
196
198
  #
197
199
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
200
+ # @option options [String] :checksum_algorithm
201
+ # Indicates the algorithm used to create the checksum for the object
202
+ # when using the SDK. This header will not provide any additional
203
+ # functionality if not using the SDK. When sending this header, there
204
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
205
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
206
+ # `400 Bad Request`. For more information, see [Checking object
207
+ # integrity][1] in the *Amazon S3 User Guide*.
208
+ #
209
+ # If you provide an individual checksum, Amazon S3 ignores any provided
210
+ # `ChecksumAlgorithm` parameter.
211
+ #
212
+ #
213
+ #
214
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
198
215
  # @option options [required, Types::RequestPaymentConfiguration] :request_payment_configuration
199
216
  # Container for Payer.
200
217
  # @option options [String] :expected_bucket_owner
201
218
  # The account ID of the expected bucket owner. If the bucket is owned by
202
- # a different account, the request will fail with an HTTP `403 (Access
203
- # Denied)` error.
219
+ # a different account, the request fails with the HTTP status code `403
220
+ # Forbidden` (access denied).
204
221
  # @return [EmptyStructure]
205
222
  def put(options = {})
206
223
  options = options.merge(bucket: @bucket_name)
@@ -182,8 +182,8 @@ module Aws::S3
182
182
  # @param [Hash] options ({})
183
183
  # @option options [String] :expected_bucket_owner
184
184
  # The account ID of the expected bucket owner. If the bucket is owned by
185
- # a different account, the request will fail with an HTTP `403 (Access
186
- # Denied)` error.
185
+ # a different account, the request fails with the HTTP status code `403
186
+ # Forbidden` (access denied).
187
187
  # @return [EmptyStructure]
188
188
  def delete(options = {})
189
189
  options = options.merge(bucket: @bucket_name)
@@ -195,6 +195,7 @@ module Aws::S3
195
195
  #
196
196
  # bucket_tagging.put({
197
197
  # content_md5: "ContentMD5",
198
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
198
199
  # tagging: { # required
199
200
  # tag_set: [ # required
200
201
  # {
@@ -211,18 +212,34 @@ module Aws::S3
211
212
  # header as a message integrity check to verify that the request body
212
213
  # was not corrupted in transit. For more information, see [RFC 1864][1].
213
214
  #
214
- # For requests made using the AWS Command Line Interface (CLI) or AWS
215
- # SDKs, this field is calculated automatically.
215
+ # For requests made using the Amazon Web Services Command Line Interface
216
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
217
+ # automatically.
216
218
  #
217
219
  #
218
220
  #
219
221
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
222
+ # @option options [String] :checksum_algorithm
223
+ # Indicates the algorithm used to create the checksum for the object
224
+ # when using the SDK. This header will not provide any additional
225
+ # functionality if not using the SDK. When sending this header, there
226
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
227
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
228
+ # `400 Bad Request`. For more information, see [Checking object
229
+ # integrity][1] in the *Amazon S3 User Guide*.
230
+ #
231
+ # If you provide an individual checksum, Amazon S3 ignores any provided
232
+ # `ChecksumAlgorithm` parameter.
233
+ #
234
+ #
235
+ #
236
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
220
237
  # @option options [required, Types::Tagging] :tagging
221
238
  # Container for the `TagSet` and `Tag` elements.
222
239
  # @option options [String] :expected_bucket_owner
223
240
  # The account ID of the expected bucket owner. If the bucket is owned by
224
- # a different account, the request will fail with an HTTP `403 (Access
225
- # Denied)` error.
241
+ # a different account, the request fails with the HTTP status code `403
242
+ # Forbidden` (access denied).
226
243
  # @return [EmptyStructure]
227
244
  def put(options = {})
228
245
  options = options.merge(bucket: @bucket_name)
@@ -187,6 +187,7 @@ module Aws::S3
187
187
  #
188
188
  # bucket_versioning.enable({
189
189
  # content_md5: "ContentMD5",
190
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
190
191
  # mfa: "MFA",
191
192
  # expected_bucket_owner: "AccountId",
192
193
  # })
@@ -197,19 +198,35 @@ module Aws::S3
197
198
  # body was not corrupted in transit. For more information, see [RFC
198
199
  # 1864][1].
199
200
  #
200
- # For requests made using the AWS Command Line Interface (CLI) or AWS
201
- # SDKs, this field is calculated automatically.
201
+ # For requests made using the Amazon Web Services Command Line Interface
202
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
203
+ # automatically.
202
204
  #
203
205
  #
204
206
  #
205
207
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
208
+ # @option options [String] :checksum_algorithm
209
+ # Indicates the algorithm used to create the checksum for the object
210
+ # when using the SDK. This header will not provide any additional
211
+ # functionality if not using the SDK. When sending this header, there
212
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
213
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
214
+ # `400 Bad Request`. For more information, see [Checking object
215
+ # integrity][1] in the *Amazon S3 User Guide*.
216
+ #
217
+ # If you provide an individual checksum, Amazon S3 ignores any provided
218
+ # `ChecksumAlgorithm` parameter.
219
+ #
220
+ #
221
+ #
222
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
206
223
  # @option options [String] :mfa
207
224
  # The concatenation of the authentication device's serial number, a
208
225
  # space, and the value that is displayed on your authentication device.
209
226
  # @option options [String] :expected_bucket_owner
210
227
  # The account ID of the expected bucket owner. If the bucket is owned by
211
- # a different account, the request will fail with an HTTP `403 (Access
212
- # Denied)` error.
228
+ # a different account, the request fails with the HTTP status code `403
229
+ # Forbidden` (access denied).
213
230
  # @return [EmptyStructure]
214
231
  def enable(options = {})
215
232
  options = Aws::Util.deep_merge(options,
@@ -226,6 +243,7 @@ module Aws::S3
226
243
  #
227
244
  # bucket_versioning.put({
228
245
  # content_md5: "ContentMD5",
246
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
229
247
  # mfa: "MFA",
230
248
  # versioning_configuration: { # required
231
249
  # mfa_delete: "Enabled", # accepts Enabled, Disabled
@@ -240,12 +258,28 @@ module Aws::S3
240
258
  # body was not corrupted in transit. For more information, see [RFC
241
259
  # 1864][1].
242
260
  #
243
- # For requests made using the AWS Command Line Interface (CLI) or AWS
244
- # SDKs, this field is calculated automatically.
261
+ # For requests made using the Amazon Web Services Command Line Interface
262
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
263
+ # automatically.
245
264
  #
246
265
  #
247
266
  #
248
267
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
268
+ # @option options [String] :checksum_algorithm
269
+ # Indicates the algorithm used to create the checksum for the object
270
+ # when using the SDK. This header will not provide any additional
271
+ # functionality if not using the SDK. When sending this header, there
272
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
273
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
274
+ # `400 Bad Request`. For more information, see [Checking object
275
+ # integrity][1] in the *Amazon S3 User Guide*.
276
+ #
277
+ # If you provide an individual checksum, Amazon S3 ignores any provided
278
+ # `ChecksumAlgorithm` parameter.
279
+ #
280
+ #
281
+ #
282
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
249
283
  # @option options [String] :mfa
250
284
  # The concatenation of the authentication device's serial number, a
251
285
  # space, and the value that is displayed on your authentication device.
@@ -253,8 +287,8 @@ module Aws::S3
253
287
  # Container for setting the versioning state.
254
288
  # @option options [String] :expected_bucket_owner
255
289
  # The account ID of the expected bucket owner. If the bucket is owned by
256
- # a different account, the request will fail with an HTTP `403 (Access
257
- # Denied)` error.
290
+ # a different account, the request fails with the HTTP status code `403
291
+ # Forbidden` (access denied).
258
292
  # @return [EmptyStructure]
259
293
  def put(options = {})
260
294
  options = options.merge(bucket: @bucket_name)
@@ -266,6 +300,7 @@ module Aws::S3
266
300
  #
267
301
  # bucket_versioning.suspend({
268
302
  # content_md5: "ContentMD5",
303
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
269
304
  # mfa: "MFA",
270
305
  # expected_bucket_owner: "AccountId",
271
306
  # })
@@ -276,19 +311,35 @@ module Aws::S3
276
311
  # body was not corrupted in transit. For more information, see [RFC
277
312
  # 1864][1].
278
313
  #
279
- # For requests made using the AWS Command Line Interface (CLI) or AWS
280
- # SDKs, this field is calculated automatically.
314
+ # For requests made using the Amazon Web Services Command Line Interface
315
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
316
+ # automatically.
281
317
  #
282
318
  #
283
319
  #
284
320
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
321
+ # @option options [String] :checksum_algorithm
322
+ # Indicates the algorithm used to create the checksum for the object
323
+ # when using the SDK. This header will not provide any additional
324
+ # functionality if not using the SDK. When sending this header, there
325
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
326
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
327
+ # `400 Bad Request`. For more information, see [Checking object
328
+ # integrity][1] in the *Amazon S3 User Guide*.
329
+ #
330
+ # If you provide an individual checksum, Amazon S3 ignores any provided
331
+ # `ChecksumAlgorithm` parameter.
332
+ #
333
+ #
334
+ #
335
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
285
336
  # @option options [String] :mfa
286
337
  # The concatenation of the authentication device's serial number, a
287
338
  # space, and the value that is displayed on your authentication device.
288
339
  # @option options [String] :expected_bucket_owner
289
340
  # The account ID of the expected bucket owner. If the bucket is owned by
290
- # a different account, the request will fail with an HTTP `403 (Access
291
- # Denied)` error.
341
+ # a different account, the request fails with the HTTP status code `403
342
+ # Forbidden` (access denied).
292
343
  # @return [EmptyStructure]
293
344
  def suspend(options = {})
294
345
  options = Aws::Util.deep_merge(options,