aws-sdk-s3 1.176.1 → 1.178.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 (52) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/bucket.rb +38 -24
  5. data/lib/aws-sdk-s3/bucket_acl.rb +5 -4
  6. data/lib/aws-sdk-s3/bucket_cors.rb +5 -4
  7. data/lib/aws-sdk-s3/bucket_lifecycle.rb +1 -1
  8. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +2 -2
  9. data/lib/aws-sdk-s3/bucket_logging.rb +1 -1
  10. data/lib/aws-sdk-s3/bucket_policy.rb +9 -8
  11. data/lib/aws-sdk-s3/bucket_request_payment.rb +2 -2
  12. data/lib/aws-sdk-s3/bucket_tagging.rb +2 -2
  13. data/lib/aws-sdk-s3/bucket_versioning.rb +6 -6
  14. data/lib/aws-sdk-s3/bucket_website.rb +2 -2
  15. data/lib/aws-sdk-s3/client.rb +346 -204
  16. data/lib/aws-sdk-s3/client_api.rb +34 -2
  17. data/lib/aws-sdk-s3/file_downloader.rb +4 -21
  18. data/lib/aws-sdk-s3/multipart_file_uploader.rb +31 -13
  19. data/lib/aws-sdk-s3/multipart_upload.rb +48 -6
  20. data/lib/aws-sdk-s3/multipart_upload_part.rb +52 -36
  21. data/lib/aws-sdk-s3/object.rb +108 -58
  22. data/lib/aws-sdk-s3/object_acl.rb +4 -4
  23. data/lib/aws-sdk-s3/object_summary.rb +63 -28
  24. data/lib/aws-sdk-s3/object_version.rb +21 -8
  25. data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +31 -0
  26. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +11 -20
  27. data/lib/aws-sdk-s3/plugins/md5s.rb +10 -71
  28. data/lib/aws-sdk-s3/presigner.rb +4 -5
  29. data/lib/aws-sdk-s3/types.rb +725 -405
  30. data/lib/aws-sdk-s3.rb +1 -1
  31. data/sig/bucket.rbs +3 -2
  32. data/sig/bucket_acl.rbs +1 -1
  33. data/sig/bucket_cors.rbs +1 -1
  34. data/sig/bucket_lifecycle.rbs +1 -1
  35. data/sig/bucket_lifecycle_configuration.rbs +1 -1
  36. data/sig/bucket_logging.rbs +1 -1
  37. data/sig/bucket_policy.rbs +1 -1
  38. data/sig/bucket_request_payment.rbs +1 -1
  39. data/sig/bucket_tagging.rbs +1 -1
  40. data/sig/bucket_versioning.rbs +3 -3
  41. data/sig/bucket_website.rbs +1 -1
  42. data/sig/client.rbs +50 -29
  43. data/sig/multipart_upload.rbs +8 -1
  44. data/sig/multipart_upload_part.rbs +5 -1
  45. data/sig/object.rbs +13 -5
  46. data/sig/object_acl.rbs +1 -1
  47. data/sig/object_summary.rbs +11 -6
  48. data/sig/object_version.rbs +5 -2
  49. data/sig/resource.rbs +2 -0
  50. data/sig/types.rbs +61 -32
  51. metadata +5 -5
  52. data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +0 -31
@@ -40,6 +40,7 @@ require 'aws-sdk-s3/plugins/access_grants.rb'
40
40
  require 'aws-sdk-s3/plugins/arn.rb'
41
41
  require 'aws-sdk-s3/plugins/bucket_dns.rb'
42
42
  require 'aws-sdk-s3/plugins/bucket_name_restrictions.rb'
43
+ require 'aws-sdk-s3/plugins/checksum_algorithm.rb'
43
44
  require 'aws-sdk-s3/plugins/dualstack.rb'
44
45
  require 'aws-sdk-s3/plugins/expect_100_continue.rb'
45
46
  require 'aws-sdk-s3/plugins/express_session_auth.rb'
@@ -52,7 +53,6 @@ require 'aws-sdk-s3/plugins/redirects.rb'
52
53
  require 'aws-sdk-s3/plugins/s3_host_id.rb'
53
54
  require 'aws-sdk-s3/plugins/s3_signer.rb'
54
55
  require 'aws-sdk-s3/plugins/sse_cpk.rb'
55
- require 'aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb'
56
56
  require 'aws-sdk-s3/plugins/streaming_retry.rb'
57
57
  require 'aws-sdk-s3/plugins/url_encoded_keys.rb'
58
58
  require 'aws-sdk-core/plugins/event_stream_configuration.rb'
@@ -111,6 +111,7 @@ module Aws::S3
111
111
  add_plugin(Aws::S3::Plugins::ARN)
112
112
  add_plugin(Aws::S3::Plugins::BucketDns)
113
113
  add_plugin(Aws::S3::Plugins::BucketNameRestrictions)
114
+ add_plugin(Aws::S3::Plugins::ChecksumAlgorithm)
114
115
  add_plugin(Aws::S3::Plugins::Dualstack)
115
116
  add_plugin(Aws::S3::Plugins::Expect100Continue)
116
117
  add_plugin(Aws::S3::Plugins::ExpressSessionAuth)
@@ -123,7 +124,6 @@ module Aws::S3
123
124
  add_plugin(Aws::S3::Plugins::S3HostId)
124
125
  add_plugin(Aws::S3::Plugins::S3Signer)
125
126
  add_plugin(Aws::S3::Plugins::SseCpk)
126
- add_plugin(Aws::S3::Plugins::SkipWholeMultipartGetChecksums)
127
127
  add_plugin(Aws::S3::Plugins::StreamingRetry)
128
128
  add_plugin(Aws::S3::Plugins::UrlEncodedKeys)
129
129
  add_plugin(Aws::Plugins::EventStreamConfiguration)
@@ -240,11 +240,8 @@ module Aws::S3
240
240
  # will use the Client Side Monitoring Agent Publisher.
241
241
  #
242
242
  # @option options [Boolean] :compute_checksums (true)
243
- # When `true` a MD5 checksum will be computed and sent in the Content Md5
244
- # header for :put_object and :upload_part. When `false`, MD5 checksums
245
- # will not be computed for these operations. Checksums are still computed
246
- # for operations requiring them. Checksum errors returned by Amazon S3 are
247
- # automatically retried up to `:retry_limit` times.
243
+ # This option is deprecated. Please use `:request_checksum_calculation` instead.
244
+ # When `false`, `request_checksum_calculation` is overridden to `when_required`.
248
245
  #
249
246
  # @option options [Boolean] :convert_params (true)
250
247
  # When `true`, an attempt is made to coerce request parameters into
@@ -340,6 +337,18 @@ module Aws::S3
340
337
  # Used when loading credentials from the shared credentials file
341
338
  # at HOME/.aws/credentials. When not specified, 'default' is used.
342
339
  #
340
+ # @option options [String] :request_checksum_calculation ("when_supported")
341
+ # Determines when a checksum will be calculated for request payloads. Values are:
342
+ #
343
+ # * `when_supported` - (default) When set, a checksum will be
344
+ # calculated for all request payloads of operations modeled with the
345
+ # `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
346
+ # `requestAlgorithmMember` is modeled.
347
+ # * `when_required` - When set, a checksum will only be calculated for
348
+ # request payloads of operations modeled with the `httpChecksum` trait where
349
+ # `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
350
+ # is modeled and supplied.
351
+ #
343
352
  # @option options [Integer] :request_min_compression_size_bytes (10240)
344
353
  # The minimum size in bytes that triggers compression for request
345
354
  # bodies. The value must be non-negative integer value between 0
@@ -350,6 +359,17 @@ module Aws::S3
350
359
  # where server-side-encryption is used with customer-provided keys.
351
360
  # This should only be disabled for local testing.
352
361
  #
362
+ # @option options [String] :response_checksum_validation ("when_supported")
363
+ # Determines when checksum validation will be performed on response payloads. Values are:
364
+ #
365
+ # * `when_supported` - (default) When set, checksum validation is performed on all
366
+ # response payloads of operations modeled with the `httpChecksum` trait where
367
+ # `responseAlgorithms` is modeled, except when no modeled checksum algorithms
368
+ # are supported.
369
+ # * `when_required` - When set, checksum validation is not performed on
370
+ # response payloads of operations unless the checksum algorithm is supported and
371
+ # the `requestValidationModeMember` member is set to `ENABLED`.
372
+ #
353
373
  # @option options [Proc] :retry_backoff
354
374
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
355
375
  # This option is only used in the `legacy` retry mode.
@@ -969,7 +989,7 @@ module Aws::S3
969
989
  # @option params [String] :checksum_crc32
970
990
  # This header can be used as a data integrity check to verify that the
971
991
  # data received is the same data that was originally sent. This header
972
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
992
+ # specifies the Base64 encoded, 32-bit `CRC-32` checksum of the object.
973
993
  # For more information, see [Checking object integrity][1] in the
974
994
  # *Amazon S3 User Guide*.
975
995
  #
@@ -980,7 +1000,7 @@ module Aws::S3
980
1000
  # @option params [String] :checksum_crc32c
981
1001
  # This header can be used as a data integrity check to verify that the
982
1002
  # data received is the same data that was originally sent. This header
983
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
1003
+ # specifies the Base64 encoded, 32-bit `CRC-32C` checksum of the object.
984
1004
  # For more information, see [Checking object integrity][1] in the
985
1005
  # *Amazon S3 User Guide*.
986
1006
  #
@@ -988,12 +1008,24 @@ module Aws::S3
988
1008
  #
989
1009
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
990
1010
  #
1011
+ # @option params [String] :checksum_crc64nvme
1012
+ # This header can be used as a data integrity check to verify that the
1013
+ # data received is the same data that was originally sent. This header
1014
+ # specifies the Base64 encoded, 64-bit `CRC-64NVME` checksum of the
1015
+ # object. The `CRC-64NVME` checksum is always a full object checksum.
1016
+ # For more information, see [Checking object integrity in the Amazon S3
1017
+ # User Guide][1].
1018
+ #
1019
+ #
1020
+ #
1021
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1022
+ #
991
1023
  # @option params [String] :checksum_sha1
992
1024
  # This header can be used as a data integrity check to verify that the
993
1025
  # data received is the same data that was originally sent. This header
994
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
995
- # more information, see [Checking object integrity][1] in the *Amazon S3
996
- # User Guide*.
1026
+ # specifies the Base64 encoded, 160-bit `SHA-1` digest of the object.
1027
+ # For more information, see [Checking object integrity][1] in the
1028
+ # *Amazon S3 User Guide*.
997
1029
  #
998
1030
  #
999
1031
  #
@@ -1002,7 +1034,7 @@ module Aws::S3
1002
1034
  # @option params [String] :checksum_sha256
1003
1035
  # This header can be used as a data integrity check to verify that the
1004
1036
  # data received is the same data that was originally sent. This header
1005
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
1037
+ # specifies the Base64 encoded, 256-bit `SHA-256` digest of the object.
1006
1038
  # For more information, see [Checking object integrity][1] in the
1007
1039
  # *Amazon S3 User Guide*.
1008
1040
  #
@@ -1010,6 +1042,23 @@ module Aws::S3
1010
1042
  #
1011
1043
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1012
1044
  #
1045
+ # @option params [String] :checksum_type
1046
+ # This header specifies the checksum type of the object, which
1047
+ # determines how part-level checksums are combined to create an
1048
+ # object-level checksum for multipart objects. You can use this header
1049
+ # as a data integrity check to verify that the checksum type that is
1050
+ # received is the same checksum that was specified. If the checksum type
1051
+ # doesn’t match the checksum type that was specified for the object
1052
+ # during the `CreateMultipartUpload` request, it’ll result in a
1053
+ # `BadDigest` error. For more information, see Checking object integrity
1054
+ # in the Amazon S3 User Guide.
1055
+ #
1056
+ # @option params [Integer] :mpu_object_size
1057
+ # The expected total object size of the multipart upload request. If
1058
+ # there’s a mismatch between the specified object size value and the
1059
+ # actual object size value, it results in an `HTTP 400 InvalidRequest`
1060
+ # error.
1061
+ #
1013
1062
  # @option params [String] :request_payer
1014
1063
  # Confirms that the requester knows that they will be charged for the
1015
1064
  # request. Bucket owners need not specify this parameter in their
@@ -1125,8 +1174,10 @@ module Aws::S3
1125
1174
  # * {Types::CompleteMultipartUploadOutput#etag #etag} => String
1126
1175
  # * {Types::CompleteMultipartUploadOutput#checksum_crc32 #checksum_crc32} => String
1127
1176
  # * {Types::CompleteMultipartUploadOutput#checksum_crc32c #checksum_crc32c} => String
1177
+ # * {Types::CompleteMultipartUploadOutput#checksum_crc64nvme #checksum_crc64nvme} => String
1128
1178
  # * {Types::CompleteMultipartUploadOutput#checksum_sha1 #checksum_sha1} => String
1129
1179
  # * {Types::CompleteMultipartUploadOutput#checksum_sha256 #checksum_sha256} => String
1180
+ # * {Types::CompleteMultipartUploadOutput#checksum_type #checksum_type} => String
1130
1181
  # * {Types::CompleteMultipartUploadOutput#server_side_encryption #server_side_encryption} => String
1131
1182
  # * {Types::CompleteMultipartUploadOutput#version_id #version_id} => String
1132
1183
  # * {Types::CompleteMultipartUploadOutput#ssekms_key_id #ssekms_key_id} => String
@@ -1175,6 +1226,7 @@ module Aws::S3
1175
1226
  # etag: "ETag",
1176
1227
  # checksum_crc32: "ChecksumCRC32",
1177
1228
  # checksum_crc32c: "ChecksumCRC32C",
1229
+ # checksum_crc64nvme: "ChecksumCRC64NVME",
1178
1230
  # checksum_sha1: "ChecksumSHA1",
1179
1231
  # checksum_sha256: "ChecksumSHA256",
1180
1232
  # part_number: 1,
@@ -1184,8 +1236,11 @@ module Aws::S3
1184
1236
  # upload_id: "MultipartUploadId", # required
1185
1237
  # checksum_crc32: "ChecksumCRC32",
1186
1238
  # checksum_crc32c: "ChecksumCRC32C",
1239
+ # checksum_crc64nvme: "ChecksumCRC64NVME",
1187
1240
  # checksum_sha1: "ChecksumSHA1",
1188
1241
  # checksum_sha256: "ChecksumSHA256",
1242
+ # checksum_type: "COMPOSITE", # accepts COMPOSITE, FULL_OBJECT
1243
+ # mpu_object_size: 1,
1189
1244
  # request_payer: "requester", # accepts requester
1190
1245
  # expected_bucket_owner: "AccountId",
1191
1246
  # if_match: "IfMatch",
@@ -1204,8 +1259,10 @@ module Aws::S3
1204
1259
  # resp.etag #=> String
1205
1260
  # resp.checksum_crc32 #=> String
1206
1261
  # resp.checksum_crc32c #=> String
1262
+ # resp.checksum_crc64nvme #=> String
1207
1263
  # resp.checksum_sha1 #=> String
1208
1264
  # resp.checksum_sha256 #=> String
1265
+ # resp.checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
1209
1266
  # resp.server_side_encryption #=> String, one of "AES256", "aws:kms", "aws:kms:dsse"
1210
1267
  # resp.version_id #=> String
1211
1268
  # resp.ssekms_key_id #=> String
@@ -2207,7 +2264,7 @@ module Aws::S3
2207
2264
  # acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
2208
2265
  # bucket: "BucketName", # required
2209
2266
  # cache_control: "CacheControl",
2210
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
2267
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
2211
2268
  # content_disposition: "ContentDisposition",
2212
2269
  # content_encoding: "ContentEncoding",
2213
2270
  # content_language: "ContentLanguage",
@@ -2253,8 +2310,10 @@ module Aws::S3
2253
2310
  #
2254
2311
  # resp.copy_object_result.etag #=> String
2255
2312
  # resp.copy_object_result.last_modified #=> Time
2313
+ # resp.copy_object_result.checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
2256
2314
  # resp.copy_object_result.checksum_crc32 #=> String
2257
2315
  # resp.copy_object_result.checksum_crc32c #=> String
2316
+ # resp.copy_object_result.checksum_crc64nvme #=> String
2258
2317
  # resp.copy_object_result.checksum_sha1 #=> String
2259
2318
  # resp.copy_object_result.checksum_sha256 #=> String
2260
2319
  # resp.expiration #=> String
@@ -2666,7 +2725,7 @@ module Aws::S3
2666
2725
  # resp = client.create_bucket_metadata_table_configuration({
2667
2726
  # bucket: "BucketName", # required
2668
2727
  # content_md5: "ContentMD5",
2669
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
2728
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
2670
2729
  # metadata_table_configuration: { # required
2671
2730
  # s3_tables_destination: { # required
2672
2731
  # table_bucket_arn: "S3TablesBucketArn", # required
@@ -3441,7 +3500,7 @@ module Aws::S3
3441
3500
  #
3442
3501
  # @option params [String] :ssekms_encryption_context
3443
3502
  # Specifies the Amazon Web Services KMS Encryption Context to use for
3444
- # object encryption. The value of this header is a Base64-encoded string
3503
+ # object encryption. The value of this header is a Base64 encoded string
3445
3504
  # of a UTF-8 encoded JSON, which contains the encryption context as
3446
3505
  # key-value pairs.
3447
3506
  #
@@ -3539,6 +3598,15 @@ module Aws::S3
3539
3598
  #
3540
3599
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
3541
3600
  #
3601
+ # @option params [String] :checksum_type
3602
+ # Indicates the checksum type that you want Amazon S3 to use to
3603
+ # calculate the object’s checksum value. For more information, see
3604
+ # [Checking object integrity in the Amazon S3 User Guide][1].
3605
+ #
3606
+ #
3607
+ #
3608
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
3609
+ #
3542
3610
  # @return [Types::CreateMultipartUploadOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3543
3611
  #
3544
3612
  # * {Types::CreateMultipartUploadOutput#abort_date #abort_date} => Time
@@ -3554,6 +3622,7 @@ module Aws::S3
3554
3622
  # * {Types::CreateMultipartUploadOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
3555
3623
  # * {Types::CreateMultipartUploadOutput#request_charged #request_charged} => String
3556
3624
  # * {Types::CreateMultipartUploadOutput#checksum_algorithm #checksum_algorithm} => String
3625
+ # * {Types::CreateMultipartUploadOutput#checksum_type #checksum_type} => String
3557
3626
  #
3558
3627
  #
3559
3628
  # @example Example: To initiate a multipart upload
@@ -3606,7 +3675,8 @@ module Aws::S3
3606
3675
  # object_lock_retain_until_date: Time.now,
3607
3676
  # object_lock_legal_hold_status: "ON", # accepts ON, OFF
3608
3677
  # expected_bucket_owner: "AccountId",
3609
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
3678
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
3679
+ # checksum_type: "COMPOSITE", # accepts COMPOSITE, FULL_OBJECT
3610
3680
  # })
3611
3681
  #
3612
3682
  # @example Response structure
@@ -3623,7 +3693,8 @@ module Aws::S3
3623
3693
  # resp.ssekms_encryption_context #=> String
3624
3694
  # resp.bucket_key_enabled #=> Boolean
3625
3695
  # resp.request_charged #=> String, one of "requester"
3626
- # resp.checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
3696
+ # resp.checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256", "CRC64NVME"
3697
+ # resp.checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
3627
3698
  #
3628
3699
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUpload AWS API Documentation
3629
3700
  #
@@ -3848,7 +3919,7 @@ module Aws::S3
3848
3919
  # @option params [String] :ssekms_encryption_context
3849
3920
  # Specifies the Amazon Web Services KMS Encryption Context as an
3850
3921
  # additional encryption context to use for object encryption. The value
3851
- # of this header is a Base64-encoded string of a UTF-8 encoded JSON,
3922
+ # of this header is a Base64 encoded string of a UTF-8 encoded JSON,
3852
3923
  # which contains the encryption context as key-value pairs. This value
3853
3924
  # is stored as object metadata and automatically gets passed on to
3854
3925
  # Amazon Web Services KMS for future `GetObject` operations on this
@@ -5677,22 +5748,23 @@ module Aws::S3
5677
5748
  # For the `x-amz-checksum-algorithm ` header, replace ` algorithm ` with
5678
5749
  # the supported algorithm from the following list:
5679
5750
  #
5680
- # * `CRC32`
5751
+ # * `CRC-32`
5752
+ #
5753
+ # * `CRC-32C`
5681
5754
  #
5682
- # * `CRC32C`
5755
+ # * `CRC-64NVME`
5683
5756
  #
5684
- # * `SHA1`
5757
+ # * `SHA-1`
5685
5758
  #
5686
- # * `SHA256`
5759
+ # * `SHA-256`
5687
5760
  #
5688
5761
  # For more information, see [Checking object integrity][1] in the
5689
5762
  # *Amazon S3 User Guide*.
5690
5763
  #
5691
5764
  # If the individual checksum value you provide through
5692
5765
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
5693
- # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores any
5694
- # provided `ChecksumAlgorithm` parameter and uses the checksum algorithm
5695
- # that matches the provided value in `x-amz-checksum-algorithm `.
5766
+ # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
5767
+ # request with a `BadDigest` error.
5696
5768
  #
5697
5769
  # If you provide an individual checksum, Amazon S3 ignores any provided
5698
5770
  # `ChecksumAlgorithm` parameter.
@@ -5708,20 +5780,22 @@ module Aws::S3
5708
5780
  # * {Types::DeleteObjectsOutput#errors #errors} => Array<Types::Error>
5709
5781
  #
5710
5782
  #
5711
- # @example Example: To delete multiple objects from a versioned bucket
5783
+ # @example Example: To delete multiple object versions from a versioned bucket
5712
5784
  #
5713
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
5714
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
5785
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
5786
+ # # versions and returns the key and versions of deleted objects in the response.
5715
5787
  #
5716
5788
  # resp = client.delete_objects({
5717
5789
  # bucket: "examplebucket",
5718
5790
  # delete: {
5719
5791
  # objects: [
5720
5792
  # {
5721
- # key: "objectkey1",
5793
+ # key: "HappyFace.jpg",
5794
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5722
5795
  # },
5723
5796
  # {
5724
- # key: "objectkey2",
5797
+ # key: "HappyFace.jpg",
5798
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5725
5799
  # },
5726
5800
  # ],
5727
5801
  # quiet: false,
@@ -5732,34 +5806,30 @@ module Aws::S3
5732
5806
  # {
5733
5807
  # deleted: [
5734
5808
  # {
5735
- # delete_marker: true,
5736
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
5737
- # key: "objectkey1",
5809
+ # key: "HappyFace.jpg",
5810
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5738
5811
  # },
5739
5812
  # {
5740
- # delete_marker: true,
5741
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
5742
- # key: "objectkey2",
5813
+ # key: "HappyFace.jpg",
5814
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5743
5815
  # },
5744
5816
  # ],
5745
5817
  # }
5746
5818
  #
5747
- # @example Example: To delete multiple object versions from a versioned bucket
5819
+ # @example Example: To delete multiple objects from a versioned bucket
5748
5820
  #
5749
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
5750
- # # versions and returns the key and versions of deleted objects in the response.
5821
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
5822
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
5751
5823
  #
5752
5824
  # resp = client.delete_objects({
5753
5825
  # bucket: "examplebucket",
5754
5826
  # delete: {
5755
5827
  # objects: [
5756
5828
  # {
5757
- # key: "HappyFace.jpg",
5758
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5829
+ # key: "objectkey1",
5759
5830
  # },
5760
5831
  # {
5761
- # key: "HappyFace.jpg",
5762
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5832
+ # key: "objectkey2",
5763
5833
  # },
5764
5834
  # ],
5765
5835
  # quiet: false,
@@ -5770,12 +5840,14 @@ module Aws::S3
5770
5840
  # {
5771
5841
  # deleted: [
5772
5842
  # {
5773
- # key: "HappyFace.jpg",
5774
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5843
+ # delete_marker: true,
5844
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
5845
+ # key: "objectkey1",
5775
5846
  # },
5776
5847
  # {
5777
- # key: "HappyFace.jpg",
5778
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5848
+ # delete_marker: true,
5849
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
5850
+ # key: "objectkey2",
5779
5851
  # },
5780
5852
  # ],
5781
5853
  # }
@@ -5800,7 +5872,7 @@ module Aws::S3
5800
5872
  # request_payer: "requester", # accepts requester
5801
5873
  # bypass_governance_retention: false,
5802
5874
  # expected_bucket_owner: "AccountId",
5803
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
5875
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
5804
5876
  # })
5805
5877
  #
5806
5878
  # @example Response structure
@@ -8639,8 +8711,10 @@ module Aws::S3
8639
8711
  # * {Types::GetObjectOutput#etag #etag} => String
8640
8712
  # * {Types::GetObjectOutput#checksum_crc32 #checksum_crc32} => String
8641
8713
  # * {Types::GetObjectOutput#checksum_crc32c #checksum_crc32c} => String
8714
+ # * {Types::GetObjectOutput#checksum_crc64nvme #checksum_crc64nvme} => String
8642
8715
  # * {Types::GetObjectOutput#checksum_sha1 #checksum_sha1} => String
8643
8716
  # * {Types::GetObjectOutput#checksum_sha256 #checksum_sha256} => String
8717
+ # * {Types::GetObjectOutput#checksum_type #checksum_type} => String
8644
8718
  # * {Types::GetObjectOutput#missing_meta #missing_meta} => Integer
8645
8719
  # * {Types::GetObjectOutput#version_id #version_id} => String
8646
8720
  # * {Types::GetObjectOutput#cache_control #cache_control} => String
@@ -8781,8 +8855,10 @@ module Aws::S3
8781
8855
  # resp.etag #=> String
8782
8856
  # resp.checksum_crc32 #=> String
8783
8857
  # resp.checksum_crc32c #=> String
8858
+ # resp.checksum_crc64nvme #=> String
8784
8859
  # resp.checksum_sha1 #=> String
8785
8860
  # resp.checksum_sha256 #=> String
8861
+ # resp.checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
8786
8862
  # resp.missing_meta #=> Integer
8787
8863
  # resp.version_id #=> String
8788
8864
  # resp.cache_control #=> String
@@ -9341,8 +9417,10 @@ module Aws::S3
9341
9417
  # resp.etag #=> String
9342
9418
  # resp.checksum.checksum_crc32 #=> String
9343
9419
  # resp.checksum.checksum_crc32c #=> String
9420
+ # resp.checksum.checksum_crc64nvme #=> String
9344
9421
  # resp.checksum.checksum_sha1 #=> String
9345
9422
  # resp.checksum.checksum_sha256 #=> String
9423
+ # resp.checksum.checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
9346
9424
  # resp.object_parts.total_parts_count #=> Integer
9347
9425
  # resp.object_parts.part_number_marker #=> Integer
9348
9426
  # resp.object_parts.next_part_number_marker #=> Integer
@@ -9353,6 +9431,7 @@ module Aws::S3
9353
9431
  # resp.object_parts.parts[0].size #=> Integer
9354
9432
  # resp.object_parts.parts[0].checksum_crc32 #=> String
9355
9433
  # resp.object_parts.parts[0].checksum_crc32c #=> String
9434
+ # resp.object_parts.parts[0].checksum_crc64nvme #=> String
9356
9435
  # resp.object_parts.parts[0].checksum_sha1 #=> String
9357
9436
  # resp.object_parts.parts[0].checksum_sha256 #=> String
9358
9437
  # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW", "EXPRESS_ONEZONE"
@@ -10554,8 +10633,10 @@ module Aws::S3
10554
10633
  # * {Types::HeadObjectOutput#content_length #content_length} => Integer
10555
10634
  # * {Types::HeadObjectOutput#checksum_crc32 #checksum_crc32} => String
10556
10635
  # * {Types::HeadObjectOutput#checksum_crc32c #checksum_crc32c} => String
10636
+ # * {Types::HeadObjectOutput#checksum_crc64nvme #checksum_crc64nvme} => String
10557
10637
  # * {Types::HeadObjectOutput#checksum_sha1 #checksum_sha1} => String
10558
10638
  # * {Types::HeadObjectOutput#checksum_sha256 #checksum_sha256} => String
10639
+ # * {Types::HeadObjectOutput#checksum_type #checksum_type} => String
10559
10640
  # * {Types::HeadObjectOutput#etag #etag} => String
10560
10641
  # * {Types::HeadObjectOutput#missing_meta #missing_meta} => Integer
10561
10642
  # * {Types::HeadObjectOutput#version_id #version_id} => String
@@ -10640,8 +10721,10 @@ module Aws::S3
10640
10721
  # resp.content_length #=> Integer
10641
10722
  # resp.checksum_crc32 #=> String
10642
10723
  # resp.checksum_crc32c #=> String
10724
+ # resp.checksum_crc64nvme #=> String
10643
10725
  # resp.checksum_sha1 #=> String
10644
10726
  # resp.checksum_sha256 #=> String
10727
+ # resp.checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
10645
10728
  # resp.etag #=> String
10646
10729
  # resp.missing_meta #=> Integer
10647
10730
  # resp.version_id #=> String
@@ -11606,97 +11689,97 @@ module Aws::S3
11606
11689
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
11607
11690
  #
11608
11691
  #
11609
- # @example Example: To list in-progress multipart uploads on a bucket
11692
+ # @example Example: List next set of multipart uploads when previous result is truncated
11610
11693
  #
11611
- # # The following example lists in-progress multipart uploads on a specific bucket.
11694
+ # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
11695
+ # # setup of multipart uploads.
11612
11696
  #
11613
11697
  # resp = client.list_multipart_uploads({
11614
11698
  # bucket: "examplebucket",
11699
+ # key_marker: "nextkeyfrompreviousresponse",
11700
+ # max_uploads: 2,
11701
+ # upload_id_marker: "valuefrompreviousresponse",
11615
11702
  # })
11616
11703
  #
11617
11704
  # resp.to_h outputs the following:
11618
11705
  # {
11706
+ # bucket: "acl1",
11707
+ # is_truncated: true,
11708
+ # key_marker: "",
11709
+ # max_uploads: 2,
11710
+ # next_key_marker: "someobjectkey",
11711
+ # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11712
+ # upload_id_marker: "",
11619
11713
  # uploads: [
11620
11714
  # {
11621
11715
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
11622
11716
  # initiator: {
11623
- # display_name: "display-name",
11717
+ # display_name: "ownder-display-name",
11624
11718
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11625
11719
  # },
11626
11720
  # key: "JavaFile",
11627
11721
  # owner: {
11628
- # display_name: "display-name",
11629
- # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11722
+ # display_name: "mohanataws",
11723
+ # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11630
11724
  # },
11631
11725
  # storage_class: "STANDARD",
11632
- # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
11726
+ # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
11633
11727
  # },
11634
11728
  # {
11635
11729
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
11636
11730
  # initiator: {
11637
- # display_name: "display-name",
11731
+ # display_name: "ownder-display-name",
11638
11732
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11639
11733
  # },
11640
11734
  # key: "JavaFile",
11641
11735
  # owner: {
11642
- # display_name: "display-name",
11736
+ # display_name: "ownder-display-name",
11643
11737
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11644
11738
  # },
11645
11739
  # storage_class: "STANDARD",
11646
- # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11740
+ # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11647
11741
  # },
11648
11742
  # ],
11649
11743
  # }
11650
11744
  #
11651
- # @example Example: List next set of multipart uploads when previous result is truncated
11745
+ # @example Example: To list in-progress multipart uploads on a bucket
11652
11746
  #
11653
- # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
11654
- # # setup of multipart uploads.
11747
+ # # The following example lists in-progress multipart uploads on a specific bucket.
11655
11748
  #
11656
11749
  # resp = client.list_multipart_uploads({
11657
11750
  # bucket: "examplebucket",
11658
- # key_marker: "nextkeyfrompreviousresponse",
11659
- # max_uploads: 2,
11660
- # upload_id_marker: "valuefrompreviousresponse",
11661
11751
  # })
11662
11752
  #
11663
11753
  # resp.to_h outputs the following:
11664
11754
  # {
11665
- # bucket: "acl1",
11666
- # is_truncated: true,
11667
- # key_marker: "",
11668
- # max_uploads: 2,
11669
- # next_key_marker: "someobjectkey",
11670
- # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11671
- # upload_id_marker: "",
11672
11755
  # uploads: [
11673
11756
  # {
11674
11757
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
11675
11758
  # initiator: {
11676
- # display_name: "ownder-display-name",
11759
+ # display_name: "display-name",
11677
11760
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11678
11761
  # },
11679
11762
  # key: "JavaFile",
11680
11763
  # owner: {
11681
- # display_name: "mohanataws",
11682
- # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11764
+ # display_name: "display-name",
11765
+ # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11683
11766
  # },
11684
11767
  # storage_class: "STANDARD",
11685
- # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
11768
+ # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
11686
11769
  # },
11687
11770
  # {
11688
11771
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
11689
11772
  # initiator: {
11690
- # display_name: "ownder-display-name",
11773
+ # display_name: "display-name",
11691
11774
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11692
11775
  # },
11693
11776
  # key: "JavaFile",
11694
11777
  # owner: {
11695
- # display_name: "ownder-display-name",
11778
+ # display_name: "display-name",
11696
11779
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11697
11780
  # },
11698
11781
  # storage_class: "STANDARD",
11699
- # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11782
+ # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11700
11783
  # },
11701
11784
  # ],
11702
11785
  # }
@@ -11735,7 +11818,8 @@ module Aws::S3
11735
11818
  # resp.uploads[0].owner.id #=> String
11736
11819
  # resp.uploads[0].initiator.id #=> String
11737
11820
  # resp.uploads[0].initiator.display_name #=> String
11738
- # resp.uploads[0].checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
11821
+ # resp.uploads[0].checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256", "CRC64NVME"
11822
+ # resp.uploads[0].checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
11739
11823
  # resp.common_prefixes #=> Array
11740
11824
  # resp.common_prefixes[0].prefix #=> String
11741
11825
  # resp.encoding_type #=> String, one of "url"
@@ -11953,7 +12037,8 @@ module Aws::S3
11953
12037
  # resp.versions #=> Array
11954
12038
  # resp.versions[0].etag #=> String
11955
12039
  # resp.versions[0].checksum_algorithm #=> Array
11956
- # resp.versions[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
12040
+ # resp.versions[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256", "CRC64NVME"
12041
+ # resp.versions[0].checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
11957
12042
  # resp.versions[0].size #=> Integer
11958
12043
  # resp.versions[0].storage_class #=> String, one of "STANDARD"
11959
12044
  # resp.versions[0].key #=> String
@@ -12198,7 +12283,8 @@ module Aws::S3
12198
12283
  # resp.contents[0].last_modified #=> Time
12199
12284
  # resp.contents[0].etag #=> String
12200
12285
  # resp.contents[0].checksum_algorithm #=> Array
12201
- # resp.contents[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
12286
+ # resp.contents[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256", "CRC64NVME"
12287
+ # resp.contents[0].checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
12202
12288
  # resp.contents[0].size #=> Integer
12203
12289
  # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW", "EXPRESS_ONEZONE"
12204
12290
  # resp.contents[0].owner.display_name #=> String
@@ -12539,7 +12625,8 @@ module Aws::S3
12539
12625
  # resp.contents[0].last_modified #=> Time
12540
12626
  # resp.contents[0].etag #=> String
12541
12627
  # resp.contents[0].checksum_algorithm #=> Array
12542
- # resp.contents[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
12628
+ # resp.contents[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256", "CRC64NVME"
12629
+ # resp.contents[0].checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
12543
12630
  # resp.contents[0].size #=> Integer
12544
12631
  # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW", "EXPRESS_ONEZONE"
12545
12632
  # resp.contents[0].owner.display_name #=> String
@@ -12800,6 +12887,7 @@ module Aws::S3
12800
12887
  # * {Types::ListPartsOutput#storage_class #storage_class} => String
12801
12888
  # * {Types::ListPartsOutput#request_charged #request_charged} => String
12802
12889
  # * {Types::ListPartsOutput#checksum_algorithm #checksum_algorithm} => String
12890
+ # * {Types::ListPartsOutput#checksum_type #checksum_type} => String
12803
12891
  #
12804
12892
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
12805
12893
  #
@@ -12874,6 +12962,7 @@ module Aws::S3
12874
12962
  # resp.parts[0].size #=> Integer
12875
12963
  # resp.parts[0].checksum_crc32 #=> String
12876
12964
  # resp.parts[0].checksum_crc32c #=> String
12965
+ # resp.parts[0].checksum_crc64nvme #=> String
12877
12966
  # resp.parts[0].checksum_sha1 #=> String
12878
12967
  # resp.parts[0].checksum_sha256 #=> String
12879
12968
  # resp.initiator.id #=> String
@@ -12882,7 +12971,8 @@ module Aws::S3
12882
12971
  # resp.owner.id #=> String
12883
12972
  # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW", "EXPRESS_ONEZONE"
12884
12973
  # resp.request_charged #=> String, one of "requester"
12885
- # resp.checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
12974
+ # resp.checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256", "CRC64NVME"
12975
+ # resp.checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
12886
12976
  #
12887
12977
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListParts AWS API Documentation
12888
12978
  #
@@ -12980,7 +13070,7 @@ module Aws::S3
12980
13070
  # status: "Enabled", # accepts Enabled, Suspended
12981
13071
  # },
12982
13072
  # expected_bucket_owner: "AccountId",
12983
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
13073
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
12984
13074
  # })
12985
13075
  #
12986
13076
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAccelerateConfiguration AWS API Documentation
@@ -13176,9 +13266,10 @@ module Aws::S3
13176
13266
  # The bucket to which to apply the ACL.
13177
13267
  #
13178
13268
  # @option params [String] :content_md5
13179
- # The base64-encoded 128-bit MD5 digest of the data. This header must be
13180
- # used as a message integrity check to verify that the request body was
13181
- # not corrupted in transit. For more information, go to [RFC 1864.][1]
13269
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header must
13270
+ # be used as a message integrity check to verify that the request body
13271
+ # was not corrupted in transit. For more information, go to [RFC
13272
+ # 1864.][1]
13182
13273
  #
13183
13274
  # For requests made using the Amazon Web Services Command Line Interface
13184
13275
  # (CLI) or Amazon Web Services SDKs, this field is calculated
@@ -13267,7 +13358,7 @@ module Aws::S3
13267
13358
  # },
13268
13359
  # bucket: "BucketName", # required
13269
13360
  # content_md5: "ContentMD5",
13270
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
13361
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
13271
13362
  # grant_full_control: "GrantFullControl",
13272
13363
  # grant_read: "GrantRead",
13273
13364
  # grant_read_acp: "GrantReadACP",
@@ -13491,9 +13582,10 @@ module Aws::S3
13491
13582
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
13492
13583
  #
13493
13584
  # @option params [String] :content_md5
13494
- # The base64-encoded 128-bit MD5 digest of the data. This header must be
13495
- # used as a message integrity check to verify that the request body was
13496
- # not corrupted in transit. For more information, go to [RFC 1864.][1]
13585
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header must
13586
+ # be used as a message integrity check to verify that the request body
13587
+ # was not corrupted in transit. For more information, go to [RFC
13588
+ # 1864.][1]
13497
13589
  #
13498
13590
  # For requests made using the Amazon Web Services Command Line Interface
13499
13591
  # (CLI) or Amazon Web Services SDKs, this field is calculated
@@ -13587,7 +13679,7 @@ module Aws::S3
13587
13679
  # ],
13588
13680
  # },
13589
13681
  # content_md5: "ContentMD5",
13590
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
13682
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
13591
13683
  # expected_bucket_owner: "AccountId",
13592
13684
  # })
13593
13685
  #
@@ -13757,7 +13849,7 @@ module Aws::S3
13757
13849
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
13758
13850
  #
13759
13851
  # @option params [String] :content_md5
13760
- # The base64-encoded 128-bit MD5 digest of the server-side encryption
13852
+ # The Base64 encoded 128-bit `MD5` digest of the server-side encryption
13761
13853
  # configuration.
13762
13854
  #
13763
13855
  # For requests made using the Amazon Web Services Command Line Interface
@@ -13810,7 +13902,7 @@ module Aws::S3
13810
13902
  # resp = client.put_bucket_encryption({
13811
13903
  # bucket: "BucketName", # required
13812
13904
  # content_md5: "ContentMD5",
13813
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
13905
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
13814
13906
  # server_side_encryption_configuration: { # required
13815
13907
  # rules: [ # required
13816
13908
  # {
@@ -14111,6 +14203,10 @@ module Aws::S3
14111
14203
  req.send_request(options)
14112
14204
  end
14113
14205
 
14206
+ # <note markdown="1"> This operation is not supported for directory buckets.
14207
+ #
14208
+ # </note>
14209
+ #
14114
14210
  # For an updated version of this API, see
14115
14211
  # [PutBucketLifecycleConfiguration][1]. This version has been
14116
14212
  # deprecated. Existing lifecycle configurations will work. For new
@@ -14218,7 +14314,7 @@ module Aws::S3
14218
14314
  # resp = client.put_bucket_lifecycle({
14219
14315
  # bucket: "BucketName", # required
14220
14316
  # content_md5: "ContentMD5",
14221
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
14317
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
14222
14318
  # lifecycle_configuration: {
14223
14319
  # rules: [ # required
14224
14320
  # {
@@ -14483,7 +14579,7 @@ module Aws::S3
14483
14579
  #
14484
14580
  # resp = client.put_bucket_lifecycle_configuration({
14485
14581
  # bucket: "BucketName", # required
14486
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
14582
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
14487
14583
  # lifecycle_configuration: {
14488
14584
  # rules: [ # required
14489
14585
  # {
@@ -14726,7 +14822,7 @@ module Aws::S3
14726
14822
  # },
14727
14823
  # },
14728
14824
  # content_md5: "ContentMD5",
14729
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
14825
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
14730
14826
  # expected_bucket_owner: "AccountId",
14731
14827
  # })
14732
14828
  #
@@ -14895,7 +14991,7 @@ module Aws::S3
14895
14991
  # resp = client.put_bucket_notification({
14896
14992
  # bucket: "BucketName", # required
14897
14993
  # content_md5: "ContentMD5",
14898
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
14994
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
14899
14995
  # notification_configuration: { # required
14900
14996
  # topic_configuration: {
14901
14997
  # id: "NotificationId",
@@ -15305,22 +15401,23 @@ module Aws::S3
15305
15401
  # For the `x-amz-checksum-algorithm ` header, replace ` algorithm ` with
15306
15402
  # the supported algorithm from the following list:
15307
15403
  #
15308
- # * `CRC32`
15404
+ # * `CRC-32`
15405
+ #
15406
+ # * `CRC-32C`
15309
15407
  #
15310
- # * `CRC32C`
15408
+ # * `CRC-64NVME`
15311
15409
  #
15312
- # * `SHA1`
15410
+ # * `SHA-1`
15313
15411
  #
15314
- # * `SHA256`
15412
+ # * `SHA-256`
15315
15413
  #
15316
15414
  # For more information, see [Checking object integrity][1] in the
15317
15415
  # *Amazon S3 User Guide*.
15318
15416
  #
15319
15417
  # If the individual checksum value you provide through
15320
15418
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
15321
- # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores any
15322
- # provided `ChecksumAlgorithm` parameter and uses the checksum algorithm
15323
- # that matches the provided value in `x-amz-checksum-algorithm `.
15419
+ # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
15420
+ # request with a `BadDigest` error.
15324
15421
  #
15325
15422
  # <note markdown="1"> For directory buckets, when you use Amazon Web Services SDKs, `CRC32`
15326
15423
  # is the default checksum algorithm that's used for performance.
@@ -15373,7 +15470,7 @@ module Aws::S3
15373
15470
  # resp = client.put_bucket_policy({
15374
15471
  # bucket: "BucketName", # required
15375
15472
  # content_md5: "ContentMD5",
15376
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
15473
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
15377
15474
  # confirm_remove_self_bucket_access: false,
15378
15475
  # policy: "Policy", # required
15379
15476
  # expected_bucket_owner: "AccountId",
@@ -15479,7 +15576,7 @@ module Aws::S3
15479
15576
  # The name of the bucket
15480
15577
  #
15481
15578
  # @option params [String] :content_md5
15482
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
15579
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use this
15483
15580
  # header as a message integrity check to verify that the request body
15484
15581
  # was not corrupted in transit. For more information, see [RFC 1864][1].
15485
15582
  #
@@ -15548,7 +15645,7 @@ module Aws::S3
15548
15645
  # resp = client.put_bucket_replication({
15549
15646
  # bucket: "BucketName", # required
15550
15647
  # content_md5: "ContentMD5",
15551
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
15648
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
15552
15649
  # replication_configuration: { # required
15553
15650
  # role: "Role", # required
15554
15651
  # rules: [ # required
@@ -15652,7 +15749,7 @@ module Aws::S3
15652
15749
  # The bucket name.
15653
15750
  #
15654
15751
  # @option params [String] :content_md5
15655
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
15752
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use this
15656
15753
  # header as a message integrity check to verify that the request body
15657
15754
  # was not corrupted in transit. For more information, see [RFC 1864][1].
15658
15755
  #
@@ -15707,7 +15804,7 @@ module Aws::S3
15707
15804
  # resp = client.put_bucket_request_payment({
15708
15805
  # bucket: "BucketName", # required
15709
15806
  # content_md5: "ContentMD5",
15710
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
15807
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
15711
15808
  # request_payment_configuration: { # required
15712
15809
  # payer: "Requester", # required, accepts Requester, BucketOwner
15713
15810
  # },
@@ -15789,7 +15886,7 @@ module Aws::S3
15789
15886
  # The bucket name.
15790
15887
  #
15791
15888
  # @option params [String] :content_md5
15792
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
15889
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use this
15793
15890
  # header as a message integrity check to verify that the request body
15794
15891
  # was not corrupted in transit. For more information, see [RFC 1864][1].
15795
15892
  #
@@ -15853,7 +15950,7 @@ module Aws::S3
15853
15950
  # resp = client.put_bucket_tagging({
15854
15951
  # bucket: "BucketName", # required
15855
15952
  # content_md5: "ContentMD5",
15856
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
15953
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
15857
15954
  # tagging: { # required
15858
15955
  # tag_set: [ # required
15859
15956
  # {
@@ -15880,10 +15977,10 @@ module Aws::S3
15880
15977
  #
15881
15978
  # <note markdown="1"> When you enable versioning on a bucket for the first time, it might
15882
15979
  # take a short amount of time for the change to be fully propagated.
15883
- # While this change is propagating, you may encounter intermittent `HTTP
15884
- # 404 NoSuchKey` errors for requests to objects created or updated after
15885
- # enabling versioning. We recommend that you wait for 15 minutes after
15886
- # enabling versioning before issuing write operations (`PUT` or
15980
+ # While this change is propagating, you might encounter intermittent
15981
+ # `HTTP 404 NoSuchKey` errors for requests to objects created or updated
15982
+ # after enabling versioning. We recommend that you wait for 15 minutes
15983
+ # after enabling versioning before issuing write operations (`PUT` or
15887
15984
  # `DELETE`) on objects in the bucket.
15888
15985
  #
15889
15986
  # </note>
@@ -15936,7 +16033,7 @@ module Aws::S3
15936
16033
  # The bucket name.
15937
16034
  #
15938
16035
  # @option params [String] :content_md5
15939
- # &gt;The base64-encoded 128-bit MD5 digest of the data. You must use
16036
+ # &gt;The Base64 encoded 128-bit `MD5` digest of the data. You must use
15940
16037
  # this header as a message integrity check to verify that the request
15941
16038
  # body was not corrupted in transit. For more information, see [RFC
15942
16039
  # 1864][1].
@@ -15997,7 +16094,7 @@ module Aws::S3
15997
16094
  # resp = client.put_bucket_versioning({
15998
16095
  # bucket: "BucketName", # required
15999
16096
  # content_md5: "ContentMD5",
16000
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
16097
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
16001
16098
  # mfa: "MFA",
16002
16099
  # versioning_configuration: { # required
16003
16100
  # mfa_delete: "Enabled", # accepts Enabled, Disabled
@@ -16098,7 +16195,7 @@ module Aws::S3
16098
16195
  # The bucket name.
16099
16196
  #
16100
16197
  # @option params [String] :content_md5
16101
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
16198
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use this
16102
16199
  # header as a message integrity check to verify that the request body
16103
16200
  # was not corrupted in transit. For more information, see [RFC 1864][1].
16104
16201
  #
@@ -16159,7 +16256,7 @@ module Aws::S3
16159
16256
  # resp = client.put_bucket_website({
16160
16257
  # bucket: "BucketName", # required
16161
16258
  # content_md5: "ContentMD5",
16162
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
16259
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
16163
16260
  # website_configuration: { # required
16164
16261
  # error_document: {
16165
16262
  # key: "ObjectKey", # required
@@ -16448,7 +16545,7 @@ module Aws::S3
16448
16545
  # [1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length
16449
16546
  #
16450
16547
  # @option params [String] :content_md5
16451
- # The base64-encoded 128-bit MD5 digest of the message (without the
16548
+ # The Base64 encoded 128-bit `MD5` digest of the message (without the
16452
16549
  # headers) according to RFC 1864. This header can be used as a message
16453
16550
  # integrity check to verify that the data is the same data that was
16454
16551
  # originally sent. Although it is optional, we recommend using the
@@ -16493,22 +16590,23 @@ module Aws::S3
16493
16590
  # For the `x-amz-checksum-algorithm ` header, replace ` algorithm ` with
16494
16591
  # the supported algorithm from the following list:
16495
16592
  #
16496
- # * `CRC32`
16593
+ # * `CRC-32`
16497
16594
  #
16498
- # * `CRC32C`
16595
+ # * `CRC-32C`
16499
16596
  #
16500
- # * `SHA1`
16597
+ # * `CRC-64NVME`
16501
16598
  #
16502
- # * `SHA256`
16599
+ # * `SHA-1`
16600
+ #
16601
+ # * `SHA-256`
16503
16602
  #
16504
16603
  # For more information, see [Checking object integrity][1] in the
16505
16604
  # *Amazon S3 User Guide*.
16506
16605
  #
16507
16606
  # If the individual checksum value you provide through
16508
16607
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
16509
- # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores any
16510
- # provided `ChecksumAlgorithm` parameter and uses the checksum algorithm
16511
- # that matches the provided value in `x-amz-checksum-algorithm `.
16608
+ # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
16609
+ # request with a `BadDigest` error.
16512
16610
  #
16513
16611
  # <note markdown="1"> The `Content-MD5` or `x-amz-sdk-checksum-algorithm` header is required
16514
16612
  # for any request to upload an object with a retention period configured
@@ -16529,7 +16627,7 @@ module Aws::S3
16529
16627
  # @option params [String] :checksum_crc32
16530
16628
  # This header can be used as a data integrity check to verify that the
16531
16629
  # data received is the same data that was originally sent. This header
16532
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
16630
+ # specifies the Base64 encoded, 32-bit `CRC-32` checksum of the object.
16533
16631
  # For more information, see [Checking object integrity][1] in the
16534
16632
  # *Amazon S3 User Guide*.
16535
16633
  #
@@ -16540,7 +16638,7 @@ module Aws::S3
16540
16638
  # @option params [String] :checksum_crc32c
16541
16639
  # This header can be used as a data integrity check to verify that the
16542
16640
  # data received is the same data that was originally sent. This header
16543
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
16641
+ # specifies the Base64 encoded, 32-bit `CRC-32C` checksum of the object.
16544
16642
  # For more information, see [Checking object integrity][1] in the
16545
16643
  # *Amazon S3 User Guide*.
16546
16644
  #
@@ -16548,12 +16646,24 @@ module Aws::S3
16548
16646
  #
16549
16647
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
16550
16648
  #
16649
+ # @option params [String] :checksum_crc64nvme
16650
+ # This header can be used as a data integrity check to verify that the
16651
+ # data received is the same data that was originally sent. This header
16652
+ # specifies the Base64 encoded, 64-bit `CRC-64NVME` checksum of the
16653
+ # object. The `CRC-64NVME` checksum is always a full object checksum.
16654
+ # For more information, see [Checking object integrity in the Amazon S3
16655
+ # User Guide][1].
16656
+ #
16657
+ #
16658
+ #
16659
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
16660
+ #
16551
16661
  # @option params [String] :checksum_sha1
16552
16662
  # This header can be used as a data integrity check to verify that the
16553
16663
  # data received is the same data that was originally sent. This header
16554
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
16555
- # more information, see [Checking object integrity][1] in the *Amazon S3
16556
- # User Guide*.
16664
+ # specifies the Base64 encoded, 160-bit `SHA-1` digest of the object.
16665
+ # For more information, see [Checking object integrity][1] in the
16666
+ # *Amazon S3 User Guide*.
16557
16667
  #
16558
16668
  #
16559
16669
  #
@@ -16562,7 +16672,7 @@ module Aws::S3
16562
16672
  # @option params [String] :checksum_sha256
16563
16673
  # This header can be used as a data integrity check to verify that the
16564
16674
  # data received is the same data that was originally sent. This header
16565
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
16675
+ # specifies the Base64 encoded, 256-bit `SHA-256` digest of the object.
16566
16676
  # For more information, see [Checking object integrity][1] in the
16567
16677
  # *Amazon S3 User Guide*.
16568
16678
  #
@@ -16851,7 +16961,7 @@ module Aws::S3
16851
16961
  # @option params [String] :ssekms_encryption_context
16852
16962
  # Specifies the Amazon Web Services KMS Encryption Context as an
16853
16963
  # additional encryption context to use for object encryption. The value
16854
- # of this header is a Base64-encoded string of a UTF-8 encoded JSON,
16964
+ # of this header is a Base64 encoded string of a UTF-8 encoded JSON,
16855
16965
  # which contains the encryption context as key-value pairs. This value
16856
16966
  # is stored as object metadata and automatically gets passed on to
16857
16967
  # Amazon Web Services KMS for future `GetObject` operations on this
@@ -16962,8 +17072,10 @@ module Aws::S3
16962
17072
  # * {Types::PutObjectOutput#etag #etag} => String
16963
17073
  # * {Types::PutObjectOutput#checksum_crc32 #checksum_crc32} => String
16964
17074
  # * {Types::PutObjectOutput#checksum_crc32c #checksum_crc32c} => String
17075
+ # * {Types::PutObjectOutput#checksum_crc64nvme #checksum_crc64nvme} => String
16965
17076
  # * {Types::PutObjectOutput#checksum_sha1 #checksum_sha1} => String
16966
17077
  # * {Types::PutObjectOutput#checksum_sha256 #checksum_sha256} => String
17078
+ # * {Types::PutObjectOutput#checksum_type #checksum_type} => String
16967
17079
  # * {Types::PutObjectOutput#server_side_encryption #server_side_encryption} => String
16968
17080
  # * {Types::PutObjectOutput#version_id #version_id} => String
16969
17081
  # * {Types::PutObjectOutput#sse_customer_algorithm #sse_customer_algorithm} => String
@@ -16975,24 +17087,37 @@ module Aws::S3
16975
17087
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
16976
17088
  #
16977
17089
  #
16978
- # @example Example: To upload an object (specify optional headers)
17090
+ # @example Example: To create an object.
16979
17091
  #
16980
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
16981
- # # storage class and use server-side encryption.
17092
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
17093
+ #
17094
+ # resp = client.put_object({
17095
+ # body: "filetoupload",
17096
+ # bucket: "examplebucket",
17097
+ # key: "objectkey",
17098
+ # })
17099
+ #
17100
+ # resp.to_h outputs the following:
17101
+ # {
17102
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
17103
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
17104
+ # }
17105
+ #
17106
+ # @example Example: To upload an object
17107
+ #
17108
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
17109
+ # # syntax. S3 returns VersionId of the newly created object.
16982
17110
  #
16983
17111
  # resp = client.put_object({
16984
17112
  # body: "HappyFace.jpg",
16985
17113
  # bucket: "examplebucket",
16986
17114
  # key: "HappyFace.jpg",
16987
- # server_side_encryption: "AES256",
16988
- # storage_class: "STANDARD_IA",
16989
17115
  # })
16990
17116
  #
16991
17117
  # resp.to_h outputs the following:
16992
17118
  # {
16993
17119
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16994
- # server_side_encryption: "AES256",
16995
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
17120
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
16996
17121
  # }
16997
17122
  #
16998
17123
  # @example Example: To upload an object and specify server-side encryption and object tags
@@ -17036,24 +17161,6 @@ module Aws::S3
17036
17161
  # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
17037
17162
  # }
17038
17163
  #
17039
- # @example Example: To upload an object and specify canned ACL.
17040
- #
17041
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
17042
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
17043
- #
17044
- # resp = client.put_object({
17045
- # acl: "authenticated-read",
17046
- # body: "filetoupload",
17047
- # bucket: "examplebucket",
17048
- # key: "exampleobject",
17049
- # })
17050
- #
17051
- # resp.to_h outputs the following:
17052
- # {
17053
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
17054
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
17055
- # }
17056
- #
17057
17164
  # @example Example: To upload an object and specify optional tags
17058
17165
  #
17059
17166
  # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
@@ -17072,37 +17179,42 @@ module Aws::S3
17072
17179
  # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
17073
17180
  # }
17074
17181
  #
17075
- # @example Example: To upload an object
17182
+ # @example Example: To upload an object (specify optional headers)
17076
17183
  #
17077
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
17078
- # # syntax. S3 returns VersionId of the newly created object.
17184
+ # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
17185
+ # # storage class and use server-side encryption.
17079
17186
  #
17080
17187
  # resp = client.put_object({
17081
17188
  # body: "HappyFace.jpg",
17082
17189
  # bucket: "examplebucket",
17083
17190
  # key: "HappyFace.jpg",
17191
+ # server_side_encryption: "AES256",
17192
+ # storage_class: "STANDARD_IA",
17084
17193
  # })
17085
17194
  #
17086
17195
  # resp.to_h outputs the following:
17087
17196
  # {
17088
17197
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
17089
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
17198
+ # server_side_encryption: "AES256",
17199
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
17090
17200
  # }
17091
17201
  #
17092
- # @example Example: To create an object.
17202
+ # @example Example: To upload an object and specify canned ACL.
17093
17203
  #
17094
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
17204
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
17205
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
17095
17206
  #
17096
17207
  # resp = client.put_object({
17208
+ # acl: "authenticated-read",
17097
17209
  # body: "filetoupload",
17098
17210
  # bucket: "examplebucket",
17099
- # key: "objectkey",
17211
+ # key: "exampleobject",
17100
17212
  # })
17101
17213
  #
17102
17214
  # resp.to_h outputs the following:
17103
17215
  # {
17104
17216
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
17105
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
17217
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
17106
17218
  # }
17107
17219
  #
17108
17220
  # @example Streaming a file from disk
@@ -17124,9 +17236,10 @@ module Aws::S3
17124
17236
  # content_length: 1,
17125
17237
  # content_md5: "ContentMD5",
17126
17238
  # content_type: "ContentType",
17127
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
17239
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
17128
17240
  # checksum_crc32: "ChecksumCRC32",
17129
17241
  # checksum_crc32c: "ChecksumCRC32C",
17242
+ # checksum_crc64nvme: "ChecksumCRC64NVME",
17130
17243
  # checksum_sha1: "ChecksumSHA1",
17131
17244
  # checksum_sha256: "ChecksumSHA256",
17132
17245
  # expires: Time.now,
@@ -17164,8 +17277,10 @@ module Aws::S3
17164
17277
  # resp.etag #=> String
17165
17278
  # resp.checksum_crc32 #=> String
17166
17279
  # resp.checksum_crc32c #=> String
17280
+ # resp.checksum_crc64nvme #=> String
17167
17281
  # resp.checksum_sha1 #=> String
17168
17282
  # resp.checksum_sha256 #=> String
17283
+ # resp.checksum_type #=> String, one of "COMPOSITE", "FULL_OBJECT"
17169
17284
  # resp.server_side_encryption #=> String, one of "AES256", "aws:kms", "aws:kms:dsse"
17170
17285
  # resp.version_id #=> String
17171
17286
  # resp.sse_customer_algorithm #=> String
@@ -17394,9 +17509,9 @@ module Aws::S3
17394
17509
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
17395
17510
  #
17396
17511
  # @option params [String] :content_md5
17397
- # The base64-encoded 128-bit MD5 digest of the data. This header must be
17398
- # used as a message integrity check to verify that the request body was
17399
- # not corrupted in transit. For more information, go to [RFC
17512
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header must
17513
+ # be used as a message integrity check to verify that the request body
17514
+ # was not corrupted in transit. For more information, go to [RFC
17400
17515
  # 1864.&gt;][1]
17401
17516
  #
17402
17517
  # For requests made using the Amazon Web Services Command Line Interface
@@ -17529,7 +17644,7 @@ module Aws::S3
17529
17644
  # },
17530
17645
  # bucket: "BucketName", # required
17531
17646
  # content_md5: "ContentMD5",
17532
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
17647
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
17533
17648
  # grant_full_control: "GrantFullControl",
17534
17649
  # grant_read: "GrantRead",
17535
17650
  # grant_read_acp: "GrantReadACP",
@@ -17656,7 +17771,7 @@ module Aws::S3
17656
17771
  # request_payer: "requester", # accepts requester
17657
17772
  # version_id: "ObjectVersionId",
17658
17773
  # content_md5: "ContentMD5",
17659
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
17774
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
17660
17775
  # expected_bucket_owner: "AccountId",
17661
17776
  # })
17662
17777
  #
@@ -17775,7 +17890,7 @@ module Aws::S3
17775
17890
  # request_payer: "requester", # accepts requester
17776
17891
  # token: "ObjectLockToken",
17777
17892
  # content_md5: "ContentMD5",
17778
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
17893
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
17779
17894
  # expected_bucket_owner: "AccountId",
17780
17895
  # })
17781
17896
  #
@@ -17904,7 +18019,7 @@ module Aws::S3
17904
18019
  # version_id: "ObjectVersionId",
17905
18020
  # bypass_governance_retention: false,
17906
18021
  # content_md5: "ContentMD5",
17907
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
18022
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
17908
18023
  # expected_bucket_owner: "AccountId",
17909
18024
  # })
17910
18025
  #
@@ -18094,7 +18209,7 @@ module Aws::S3
18094
18209
  # key: "ObjectKey", # required
18095
18210
  # version_id: "ObjectVersionId",
18096
18211
  # content_md5: "ContentMD5",
18097
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
18212
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
18098
18213
  # tagging: { # required
18099
18214
  # tag_set: [ # required
18100
18215
  # {
@@ -18209,7 +18324,7 @@ module Aws::S3
18209
18324
  # resp = client.put_public_access_block({
18210
18325
  # bucket: "BucketName", # required
18211
18326
  # content_md5: "ContentMD5",
18212
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
18327
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
18213
18328
  # public_access_block_configuration: { # required
18214
18329
  # block_public_acls: false,
18215
18330
  # ignore_public_acls: false,
@@ -18594,7 +18709,7 @@ module Aws::S3
18594
18709
  # },
18595
18710
  # },
18596
18711
  # request_payer: "requester", # accepts requester
18597
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
18712
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
18598
18713
  # expected_bucket_owner: "AccountId",
18599
18714
  # })
18600
18715
  #
@@ -19271,7 +19386,7 @@ module Aws::S3
19271
19386
  # the body cannot be determined automatically.
19272
19387
  #
19273
19388
  # @option params [String] :content_md5
19274
- # The base64-encoded 128-bit MD5 digest of the part data. This parameter
19389
+ # The Base64 encoded 128-bit MD5 digest of the part data. This parameter
19275
19390
  # is auto-populated when using the command from the CLI. This parameter
19276
19391
  # is required if object lock parameters are specified.
19277
19392
  #
@@ -19301,7 +19416,7 @@ module Aws::S3
19301
19416
  # @option params [String] :checksum_crc32
19302
19417
  # This header can be used as a data integrity check to verify that the
19303
19418
  # data received is the same data that was originally sent. This header
19304
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
19419
+ # specifies the Base64 encoded, 32-bit `CRC-32` checksum of the object.
19305
19420
  # For more information, see [Checking object integrity][1] in the
19306
19421
  # *Amazon S3 User Guide*.
19307
19422
  #
@@ -19312,7 +19427,7 @@ module Aws::S3
19312
19427
  # @option params [String] :checksum_crc32c
19313
19428
  # This header can be used as a data integrity check to verify that the
19314
19429
  # data received is the same data that was originally sent. This header
19315
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
19430
+ # specifies the Base64 encoded, 32-bit `CRC-32C` checksum of the object.
19316
19431
  # For more information, see [Checking object integrity][1] in the
19317
19432
  # *Amazon S3 User Guide*.
19318
19433
  #
@@ -19320,12 +19435,23 @@ module Aws::S3
19320
19435
  #
19321
19436
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
19322
19437
  #
19438
+ # @option params [String] :checksum_crc64nvme
19439
+ # This header can be used as a data integrity check to verify that the
19440
+ # data received is the same data that was originally sent. This header
19441
+ # specifies the Base64 encoded, 64-bit `CRC-64NVME` checksum of the
19442
+ # part. For more information, see [Checking object integrity][1] in the
19443
+ # *Amazon S3 User Guide*.
19444
+ #
19445
+ #
19446
+ #
19447
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
19448
+ #
19323
19449
  # @option params [String] :checksum_sha1
19324
19450
  # This header can be used as a data integrity check to verify that the
19325
19451
  # data received is the same data that was originally sent. This header
19326
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
19327
- # more information, see [Checking object integrity][1] in the *Amazon S3
19328
- # User Guide*.
19452
+ # specifies the Base64 encoded, 160-bit `SHA-1` digest of the object.
19453
+ # For more information, see [Checking object integrity][1] in the
19454
+ # *Amazon S3 User Guide*.
19329
19455
  #
19330
19456
  #
19331
19457
  #
@@ -19334,7 +19460,7 @@ module Aws::S3
19334
19460
  # @option params [String] :checksum_sha256
19335
19461
  # This header can be used as a data integrity check to verify that the
19336
19462
  # data received is the same data that was originally sent. This header
19337
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
19463
+ # specifies the Base64 encoded, 256-bit `SHA-256` digest of the object.
19338
19464
  # For more information, see [Checking object integrity][1] in the
19339
19465
  # *Amazon S3 User Guide*.
19340
19466
  #
@@ -19411,6 +19537,7 @@ module Aws::S3
19411
19537
  # * {Types::UploadPartOutput#etag #etag} => String
19412
19538
  # * {Types::UploadPartOutput#checksum_crc32 #checksum_crc32} => String
19413
19539
  # * {Types::UploadPartOutput#checksum_crc32c #checksum_crc32c} => String
19540
+ # * {Types::UploadPartOutput#checksum_crc64nvme #checksum_crc64nvme} => String
19414
19541
  # * {Types::UploadPartOutput#checksum_sha1 #checksum_sha1} => String
19415
19542
  # * {Types::UploadPartOutput#checksum_sha256 #checksum_sha256} => String
19416
19543
  # * {Types::UploadPartOutput#sse_customer_algorithm #sse_customer_algorithm} => String
@@ -19445,9 +19572,10 @@ module Aws::S3
19445
19572
  # bucket: "BucketName", # required
19446
19573
  # content_length: 1,
19447
19574
  # content_md5: "ContentMD5",
19448
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
19575
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
19449
19576
  # checksum_crc32: "ChecksumCRC32",
19450
19577
  # checksum_crc32c: "ChecksumCRC32C",
19578
+ # checksum_crc64nvme: "ChecksumCRC64NVME",
19451
19579
  # checksum_sha1: "ChecksumSHA1",
19452
19580
  # checksum_sha256: "ChecksumSHA256",
19453
19581
  # key: "ObjectKey", # required
@@ -19466,6 +19594,7 @@ module Aws::S3
19466
19594
  # resp.etag #=> String
19467
19595
  # resp.checksum_crc32 #=> String
19468
19596
  # resp.checksum_crc32c #=> String
19597
+ # resp.checksum_crc64nvme #=> String
19469
19598
  # resp.checksum_sha1 #=> String
19470
19599
  # resp.checksum_sha256 #=> String
19471
19600
  # resp.sse_customer_algorithm #=> String
@@ -19971,45 +20100,45 @@ module Aws::S3
19971
20100
  # * {Types::UploadPartCopyOutput#request_charged #request_charged} => String
19972
20101
  #
19973
20102
  #
19974
- # @example Example: To upload a part by copying byte range from an existing object as data source
20103
+ # @example Example: To upload a part by copying data from an existing object as data source
19975
20104
  #
19976
- # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
19977
- # # data source.
20105
+ # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
19978
20106
  #
19979
20107
  # resp = client.upload_part_copy({
19980
20108
  # bucket: "examplebucket",
19981
20109
  # copy_source: "/bucketname/sourceobjectkey",
19982
- # copy_source_range: "bytes=1-100000",
19983
20110
  # key: "examplelargeobject",
19984
- # part_number: 2,
20111
+ # part_number: 1,
19985
20112
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
19986
20113
  # })
19987
20114
  #
19988
20115
  # resp.to_h outputs the following:
19989
20116
  # {
19990
20117
  # copy_part_result: {
19991
- # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
19992
- # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
20118
+ # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
20119
+ # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
19993
20120
  # },
19994
20121
  # }
19995
20122
  #
19996
- # @example Example: To upload a part by copying data from an existing object as data source
20123
+ # @example Example: To upload a part by copying byte range from an existing object as data source
19997
20124
  #
19998
- # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
20125
+ # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
20126
+ # # data source.
19999
20127
  #
20000
20128
  # resp = client.upload_part_copy({
20001
20129
  # bucket: "examplebucket",
20002
20130
  # copy_source: "/bucketname/sourceobjectkey",
20131
+ # copy_source_range: "bytes=1-100000",
20003
20132
  # key: "examplelargeobject",
20004
- # part_number: 1,
20133
+ # part_number: 2,
20005
20134
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
20006
20135
  # })
20007
20136
  #
20008
20137
  # resp.to_h outputs the following:
20009
20138
  # {
20010
20139
  # copy_part_result: {
20011
- # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
20012
- # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
20140
+ # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
20141
+ # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
20013
20142
  # },
20014
20143
  # }
20015
20144
  #
@@ -20044,6 +20173,7 @@ module Aws::S3
20044
20173
  # resp.copy_part_result.last_modified #=> Time
20045
20174
  # resp.copy_part_result.checksum_crc32 #=> String
20046
20175
  # resp.copy_part_result.checksum_crc32c #=> String
20176
+ # resp.copy_part_result.checksum_crc64nvme #=> String
20047
20177
  # resp.copy_part_result.checksum_sha1 #=> String
20048
20178
  # resp.copy_part_result.checksum_sha256 #=> String
20049
20179
  # resp.server_side_encryption #=> String, one of "AES256", "aws:kms", "aws:kms:dsse"
@@ -20208,7 +20338,7 @@ module Aws::S3
20208
20338
  # @option params [String] :checksum_crc32
20209
20339
  # This header can be used as a data integrity check to verify that the
20210
20340
  # data received is the same data that was originally sent. This
20211
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object
20341
+ # specifies the Base64 encoded, 32-bit `CRC-32` checksum of the object
20212
20342
  # returned by the Object Lambda function. This may not match the
20213
20343
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
20214
20344
  # validation of the checksum values only when the original `GetObject`
@@ -20228,7 +20358,7 @@ module Aws::S3
20228
20358
  # @option params [String] :checksum_crc32c
20229
20359
  # This header can be used as a data integrity check to verify that the
20230
20360
  # data received is the same data that was originally sent. This
20231
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object
20361
+ # specifies the Base64 encoded, 32-bit `CRC-32C` checksum of the object
20232
20362
  # returned by the Object Lambda function. This may not match the
20233
20363
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
20234
20364
  # validation of the checksum values only when the original `GetObject`
@@ -20243,10 +20373,21 @@ module Aws::S3
20243
20373
  #
20244
20374
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
20245
20375
  #
20376
+ # @option params [String] :checksum_crc64nvme
20377
+ # This header can be used as a data integrity check to verify that the
20378
+ # data received is the same data that was originally sent. This header
20379
+ # specifies the Base64 encoded, 64-bit `CRC-64NVME` checksum of the
20380
+ # part. For more information, see [Checking object integrity][1] in the
20381
+ # *Amazon S3 User Guide*.
20382
+ #
20383
+ #
20384
+ #
20385
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
20386
+ #
20246
20387
  # @option params [String] :checksum_sha1
20247
20388
  # This header can be used as a data integrity check to verify that the
20248
20389
  # data received is the same data that was originally sent. This
20249
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object
20390
+ # specifies the Base64 encoded, 160-bit `SHA-1` digest of the object
20250
20391
  # returned by the Object Lambda function. This may not match the
20251
20392
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
20252
20393
  # validation of the checksum values only when the original `GetObject`
@@ -20264,7 +20405,7 @@ module Aws::S3
20264
20405
  # @option params [String] :checksum_sha256
20265
20406
  # This header can be used as a data integrity check to verify that the
20266
20407
  # data received is the same data that was originally sent. This
20267
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object
20408
+ # specifies the Base64 encoded, 256-bit `SHA-256` digest of the object
20268
20409
  # returned by the Object Lambda function. This may not match the
20269
20410
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
20270
20411
  # validation of the checksum values only when the original `GetObject`
@@ -20416,6 +20557,7 @@ module Aws::S3
20416
20557
  # content_type: "ContentType",
20417
20558
  # checksum_crc32: "ChecksumCRC32",
20418
20559
  # checksum_crc32c: "ChecksumCRC32C",
20560
+ # checksum_crc64nvme: "ChecksumCRC64NVME",
20419
20561
  # checksum_sha1: "ChecksumSHA1",
20420
20562
  # checksum_sha256: "ChecksumSHA256",
20421
20563
  # delete_marker: false,
@@ -20471,7 +20613,7 @@ module Aws::S3
20471
20613
  tracer: tracer
20472
20614
  )
20473
20615
  context[:gem_name] = 'aws-sdk-s3'
20474
- context[:gem_version] = '1.176.1'
20616
+ context[:gem_version] = '1.178.0'
20475
20617
  Seahorse::Client::Request.new(handlers, context)
20476
20618
  end
20477
20619