aws-sdk-s3 1.109.0 → 1.114.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +50 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/bucket.rb +96 -17
  5. data/lib/aws-sdk-s3/bucket_acl.rb +18 -2
  6. data/lib/aws-sdk-s3/bucket_cors.rb +20 -4
  7. data/lib/aws-sdk-s3/bucket_lifecycle.rb +20 -4
  8. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +20 -4
  9. data/lib/aws-sdk-s3/bucket_logging.rb +18 -2
  10. data/lib/aws-sdk-s3/bucket_notification.rb +2 -2
  11. data/lib/aws-sdk-s3/bucket_policy.rb +20 -4
  12. data/lib/aws-sdk-s3/bucket_request_payment.rb +18 -2
  13. data/lib/aws-sdk-s3/bucket_tagging.rb +20 -4
  14. data/lib/aws-sdk-s3/bucket_versioning.rb +54 -6
  15. data/lib/aws-sdk-s3/bucket_website.rb +20 -4
  16. data/lib/aws-sdk-s3/client.rb +1760 -638
  17. data/lib/aws-sdk-s3/client_api.rb +371 -21
  18. data/lib/aws-sdk-s3/customizations/object.rb +2 -2
  19. data/lib/aws-sdk-s3/file_downloader.rb +1 -1
  20. data/lib/aws-sdk-s3/file_uploader.rb +5 -0
  21. data/lib/aws-sdk-s3/multipart_file_uploader.rb +26 -7
  22. data/lib/aws-sdk-s3/multipart_upload.rb +126 -12
  23. data/lib/aws-sdk-s3/multipart_upload_part.rb +132 -13
  24. data/lib/aws-sdk-s3/object.rb +245 -73
  25. data/lib/aws-sdk-s3/object_acl.rb +20 -4
  26. data/lib/aws-sdk-s3/object_summary.rb +166 -42
  27. data/lib/aws-sdk-s3/object_version.rb +64 -38
  28. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +6 -0
  29. data/lib/aws-sdk-s3/plugins/md5s.rb +5 -3
  30. data/lib/aws-sdk-s3/plugins/s3_signer.rb +6 -1
  31. data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +31 -0
  32. data/lib/aws-sdk-s3/plugins/streaming_retry.rb +23 -2
  33. data/lib/aws-sdk-s3/presigned_post.rb +38 -19
  34. data/lib/aws-sdk-s3/types.rb +2250 -484
  35. data/lib/aws-sdk-s3.rb +1 -1
  36. metadata +5 -4
@@ -27,6 +27,9 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
32
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
30
33
  require 'aws-sdk-core/plugins/protocols/rest_xml.rb'
31
34
  require 'aws-sdk-s3/plugins/accelerate.rb'
32
35
  require 'aws-sdk-s3/plugins/arn.rb'
@@ -46,6 +49,7 @@ require 'aws-sdk-s3/plugins/s3_signer.rb'
46
49
  require 'aws-sdk-s3/plugins/sse_cpk.rb'
47
50
  require 'aws-sdk-s3/plugins/streaming_retry.rb'
48
51
  require 'aws-sdk-s3/plugins/url_encoded_keys.rb'
52
+ require 'aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb'
49
53
  require 'aws-sdk-core/plugins/event_stream_configuration.rb'
50
54
 
51
55
  Aws::Plugins::GlobalConfiguration.add_identifier(:s3)
@@ -91,6 +95,9 @@ module Aws::S3
91
95
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
92
96
  add_plugin(Aws::Plugins::TransferEncoding)
93
97
  add_plugin(Aws::Plugins::HttpChecksum)
98
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
99
+ add_plugin(Aws::Plugins::DefaultsMode)
100
+ add_plugin(Aws::Plugins::RecursionDetection)
94
101
  add_plugin(Aws::Plugins::Protocols::RestXml)
95
102
  add_plugin(Aws::S3::Plugins::Accelerate)
96
103
  add_plugin(Aws::S3::Plugins::ARN)
@@ -110,6 +117,7 @@ module Aws::S3
110
117
  add_plugin(Aws::S3::Plugins::SseCpk)
111
118
  add_plugin(Aws::S3::Plugins::StreamingRetry)
112
119
  add_plugin(Aws::S3::Plugins::UrlEncodedKeys)
120
+ add_plugin(Aws::S3::Plugins::SkipWholeMultipartGetChecksums)
113
121
  add_plugin(Aws::Plugins::EventStreamConfiguration)
114
122
 
115
123
  # @overload initialize(options)
@@ -218,6 +226,10 @@ module Aws::S3
218
226
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
219
227
  # a clock skew correction and retry requests with skewed client clocks.
220
228
  #
229
+ # @option options [String] :defaults_mode ("legacy")
230
+ # See {Aws::DefaultsModeConfiguration} for a list of the
231
+ # accepted modes and the configuration defaults that are included.
232
+ #
221
233
  # @option options [Boolean] :disable_host_prefix_injection (false)
222
234
  # Set to true to disable SDK automatically adding host prefix
223
235
  # to default service endpoint when available.
@@ -381,7 +393,7 @@ module Aws::S3
381
393
  # seconds to wait when opening a HTTP session before raising a
382
394
  # `Timeout::Error`.
383
395
  #
384
- # @option options [Integer] :http_read_timeout (60) The default
396
+ # @option options [Float] :http_read_timeout (60) The default
385
397
  # number of seconds to wait for response data. This value can
386
398
  # safely be set per-request on the session.
387
399
  #
@@ -397,6 +409,9 @@ module Aws::S3
397
409
  # disables this behaviour. This value can safely be set per
398
410
  # request on the session.
399
411
  #
412
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
413
+ # in seconds.
414
+ #
400
415
  # @option options [Boolean] :http_wire_trace (false) When `true`,
401
416
  # HTTP debug output will be sent to the `:logger`.
402
417
  #
@@ -471,12 +486,12 @@ module Aws::S3
471
486
  #
472
487
  # When using this action with Amazon S3 on Outposts, you must direct
473
488
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
474
- # takes the form
475
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
476
- # When using this action using S3 on Outposts through the Amazon Web
489
+ # takes the form `
490
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
491
+ # When using this action with S3 on Outposts through the Amazon Web
477
492
  # Services SDKs, you provide the Outposts bucket ARN in place of the
478
493
  # bucket name. For more information about S3 on Outposts ARNs, see
479
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
494
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
480
495
  #
481
496
  #
482
497
  #
@@ -492,8 +507,8 @@ module Aws::S3
492
507
  # @option params [String] :request_payer
493
508
  # Confirms that the requester knows that they will be charged for the
494
509
  # request. Bucket owners need not specify this parameter in their
495
- # requests. For information about downloading objects from requester
496
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
510
+ # requests. For information about downloading objects from Requester
511
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
497
512
  # in the *Amazon S3 User Guide*.
498
513
  #
499
514
  #
@@ -502,8 +517,8 @@ module Aws::S3
502
517
  #
503
518
  # @option params [String] :expected_bucket_owner
504
519
  # The account ID of the expected bucket owner. If the bucket is owned by
505
- # a different account, the request will fail with an HTTP `403 (Access
506
- # Denied)` error.
520
+ # a different account, the request fails with the HTTP status code `403
521
+ # Forbidden` (access denied).
507
522
  #
508
523
  # @return [Types::AbortMultipartUploadOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
509
524
  #
@@ -653,12 +668,12 @@ module Aws::S3
653
668
  #
654
669
  # When using this action with Amazon S3 on Outposts, you must direct
655
670
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
656
- # takes the form
657
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
658
- # When using this action using S3 on Outposts through the Amazon Web
671
+ # takes the form `
672
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
673
+ # When using this action with S3 on Outposts through the Amazon Web
659
674
  # Services SDKs, you provide the Outposts bucket ARN in place of the
660
675
  # bucket name. For more information about S3 on Outposts ARNs, see
661
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
676
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
662
677
  #
663
678
  #
664
679
  #
@@ -674,11 +689,55 @@ module Aws::S3
674
689
  # @option params [required, String] :upload_id
675
690
  # ID for the initiated multipart upload.
676
691
  #
692
+ # @option params [String] :checksum_crc32
693
+ # This header can be used as a data integrity check to verify that the
694
+ # data received is the same data that was originally sent. This header
695
+ # specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
696
+ # more information, see [Checking object integrity][1] in the *Amazon S3
697
+ # User Guide*.
698
+ #
699
+ #
700
+ #
701
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
702
+ #
703
+ # @option params [String] :checksum_crc32c
704
+ # This header can be used as a data integrity check to verify that the
705
+ # data received is the same data that was originally sent. This header
706
+ # specifies the base64-encoded, 32-bit CRC32C checksum of the object.
707
+ # For more information, see [Checking object integrity][1] in the
708
+ # *Amazon S3 User Guide*.
709
+ #
710
+ #
711
+ #
712
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
713
+ #
714
+ # @option params [String] :checksum_sha1
715
+ # This header can be used as a data integrity check to verify that the
716
+ # data received is the same data that was originally sent. This header
717
+ # specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
718
+ # more information, see [Checking object integrity][1] in the *Amazon S3
719
+ # User Guide*.
720
+ #
721
+ #
722
+ #
723
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
724
+ #
725
+ # @option params [String] :checksum_sha256
726
+ # This header can be used as a data integrity check to verify that the
727
+ # data received is the same data that was originally sent. This header
728
+ # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
729
+ # For more information, see [Checking object integrity][1] in the
730
+ # *Amazon S3 User Guide*.
731
+ #
732
+ #
733
+ #
734
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
735
+ #
677
736
  # @option params [String] :request_payer
678
737
  # Confirms that the requester knows that they will be charged for the
679
738
  # request. Bucket owners need not specify this parameter in their
680
- # requests. For information about downloading objects from requester
681
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
739
+ # requests. For information about downloading objects from Requester
740
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
682
741
  # in the *Amazon S3 User Guide*.
683
742
  #
684
743
  #
@@ -687,8 +746,38 @@ module Aws::S3
687
746
  #
688
747
  # @option params [String] :expected_bucket_owner
689
748
  # The account ID of the expected bucket owner. If the bucket is owned by
690
- # a different account, the request will fail with an HTTP `403 (Access
691
- # Denied)` error.
749
+ # a different account, the request fails with the HTTP status code `403
750
+ # Forbidden` (access denied).
751
+ #
752
+ # @option params [String] :sse_customer_algorithm
753
+ # The server-side encryption (SSE) algorithm used to encrypt the object.
754
+ # This parameter is needed only when the object was created using a
755
+ # checksum algorithm. For more information, see [Protecting data using
756
+ # SSE-C keys][1] in the *Amazon S3 User Guide*.
757
+ #
758
+ #
759
+ #
760
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
761
+ #
762
+ # @option params [String] :sse_customer_key
763
+ # The server-side encryption (SSE) customer managed key. This parameter
764
+ # is needed only when the object was created using a checksum algorithm.
765
+ # For more information, see [Protecting data using SSE-C keys][1] in the
766
+ # *Amazon S3 User Guide*.
767
+ #
768
+ #
769
+ #
770
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
771
+ #
772
+ # @option params [String] :sse_customer_key_md5
773
+ # The MD5 server-side encryption (SSE) customer managed key. This
774
+ # parameter is needed only when the object was created using a checksum
775
+ # algorithm. For more information, see [Protecting data using SSE-C
776
+ # keys][1] in the *Amazon S3 User Guide*.
777
+ #
778
+ #
779
+ #
780
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
692
781
  #
693
782
  # @return [Types::CompleteMultipartUploadOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
694
783
  #
@@ -697,6 +786,10 @@ module Aws::S3
697
786
  # * {Types::CompleteMultipartUploadOutput#key #key} => String
698
787
  # * {Types::CompleteMultipartUploadOutput#expiration #expiration} => String
699
788
  # * {Types::CompleteMultipartUploadOutput#etag #etag} => String
789
+ # * {Types::CompleteMultipartUploadOutput#checksum_crc32 #checksum_crc32} => String
790
+ # * {Types::CompleteMultipartUploadOutput#checksum_crc32c #checksum_crc32c} => String
791
+ # * {Types::CompleteMultipartUploadOutput#checksum_sha1 #checksum_sha1} => String
792
+ # * {Types::CompleteMultipartUploadOutput#checksum_sha256 #checksum_sha256} => String
700
793
  # * {Types::CompleteMultipartUploadOutput#server_side_encryption #server_side_encryption} => String
701
794
  # * {Types::CompleteMultipartUploadOutput#version_id #version_id} => String
702
795
  # * {Types::CompleteMultipartUploadOutput#ssekms_key_id #ssekms_key_id} => String
@@ -743,13 +836,24 @@ module Aws::S3
743
836
  # parts: [
744
837
  # {
745
838
  # etag: "ETag",
839
+ # checksum_crc32: "ChecksumCRC32",
840
+ # checksum_crc32c: "ChecksumCRC32C",
841
+ # checksum_sha1: "ChecksumSHA1",
842
+ # checksum_sha256: "ChecksumSHA256",
746
843
  # part_number: 1,
747
844
  # },
748
845
  # ],
749
846
  # },
750
847
  # upload_id: "MultipartUploadId", # required
848
+ # checksum_crc32: "ChecksumCRC32",
849
+ # checksum_crc32c: "ChecksumCRC32C",
850
+ # checksum_sha1: "ChecksumSHA1",
851
+ # checksum_sha256: "ChecksumSHA256",
751
852
  # request_payer: "requester", # accepts requester
752
853
  # expected_bucket_owner: "AccountId",
854
+ # sse_customer_algorithm: "SSECustomerAlgorithm",
855
+ # sse_customer_key: "SSECustomerKey",
856
+ # sse_customer_key_md5: "SSECustomerKeyMD5",
753
857
  # })
754
858
  #
755
859
  # @example Response structure
@@ -759,6 +863,10 @@ module Aws::S3
759
863
  # resp.key #=> String
760
864
  # resp.expiration #=> String
761
865
  # resp.etag #=> String
866
+ # resp.checksum_crc32 #=> String
867
+ # resp.checksum_crc32c #=> String
868
+ # resp.checksum_sha1 #=> String
869
+ # resp.checksum_sha256 #=> String
762
870
  # resp.server_side_encryption #=> String, one of "AES256", "aws:kms"
763
871
  # resp.version_id #=> String
764
872
  # resp.ssekms_key_id #=> String
@@ -779,8 +887,9 @@ module Aws::S3
779
887
  # <note markdown="1"> You can store individual objects of up to 5 TB in Amazon S3. You
780
888
  # create a copy of your object up to 5 GB in size in a single atomic
781
889
  # action using this API. However, to copy an object greater than 5 GB,
782
- # you must use the multipart upload Upload Part - Copy API. For more
783
- # information, see [Copy Object Using the REST Multipart Upload API][1].
890
+ # you must use the multipart upload Upload Part - Copy (UploadPartCopy)
891
+ # API. For more information, see [Copy Object Using the REST Multipart
892
+ # Upload API][1].
784
893
  #
785
894
  # </note>
786
895
  #
@@ -835,7 +944,7 @@ module Aws::S3
835
944
  # condition keys, see [Actions, Resources, and Condition Keys for Amazon
836
945
  # S3][7].
837
946
  #
838
- # <b> <code>x-amz-copy-source-if</code> Headers</b>
947
+ # **x-amz-copy-source-if Headers**
839
948
  #
840
949
  # To only copy an object under certain conditions, such as whether the
841
950
  # `Etag` matches or whether the object was modified before or after a
@@ -915,6 +1024,13 @@ module Aws::S3
915
1024
  #
916
1025
  # </note>
917
1026
  #
1027
+ # **Checksums**
1028
+ #
1029
+ # When copying an object, if it has a checksum, that checksum will be
1030
+ # copied to the new object by default. When you copy the object over,
1031
+ # you may optionally specify a different checksum algorithm to use with
1032
+ # the `x-amz-checksum-algorithm` header.
1033
+ #
918
1034
  # **Storage Class Options**
919
1035
  #
920
1036
  # You can use the `CopyObject` action to change the storage class of an
@@ -988,12 +1104,12 @@ module Aws::S3
988
1104
  #
989
1105
  # When using this action with Amazon S3 on Outposts, you must direct
990
1106
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
991
- # takes the form
992
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
993
- # When using this action using S3 on Outposts through the Amazon Web
1107
+ # takes the form `
1108
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
1109
+ # When using this action with S3 on Outposts through the Amazon Web
994
1110
  # Services SDKs, you provide the Outposts bucket ARN in place of the
995
1111
  # bucket name. For more information about S3 on Outposts ARNs, see
996
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
1112
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
997
1113
  #
998
1114
  #
999
1115
  #
@@ -1003,6 +1119,15 @@ module Aws::S3
1003
1119
  # @option params [String] :cache_control
1004
1120
  # Specifies caching behavior along the request/reply chain.
1005
1121
  #
1122
+ # @option params [String] :checksum_algorithm
1123
+ # Indicates the algorithm you want Amazon S3 to use to create the
1124
+ # checksum for the object. For more information, see [Checking object
1125
+ # integrity][1] in the *Amazon S3 User Guide*.
1126
+ #
1127
+ #
1128
+ #
1129
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1130
+ #
1006
1131
  # @option params [String] :content_disposition
1007
1132
  # Specifies presentational information for the object.
1008
1133
  #
@@ -1026,8 +1151,8 @@ module Aws::S3
1026
1151
  # of the source bucket and the key of the source object, separated by
1027
1152
  # a slash (/). For example, to copy the object `reports/january.pdf`
1028
1153
  # from the bucket `awsexamplebucket`, use
1029
- # `awsexamplebucket/reports/january.pdf`. The value must be URL
1030
- # encoded.
1154
+ # `awsexamplebucket/reports/january.pdf`. The value must be
1155
+ # URL-encoded.
1031
1156
  #
1032
1157
  # * For objects accessed through access points, specify the Amazon
1033
1158
  # Resource Name (ARN) of the object as accessed through the access
@@ -1052,7 +1177,7 @@ module Aws::S3
1052
1177
  # outpost `my-outpost` owned by account `123456789012` in Region
1053
1178
  # `us-west-2`, use the URL encoding of
1054
1179
  # `arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf`.
1055
- # The value must be URL encoded.
1180
+ # The value must be URL-encoded.
1056
1181
  #
1057
1182
  # To copy a specific version of an object, append
1058
1183
  # `?versionId=<version-id>` to the value (for example,
@@ -1197,8 +1322,8 @@ module Aws::S3
1197
1322
  # @option params [String] :request_payer
1198
1323
  # Confirms that the requester knows that they will be charged for the
1199
1324
  # request. Bucket owners need not specify this parameter in their
1200
- # requests. For information about downloading objects from requester
1201
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
1325
+ # requests. For information about downloading objects from Requester
1326
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
1202
1327
  # in the *Amazon S3 User Guide*.
1203
1328
  #
1204
1329
  #
@@ -1218,17 +1343,17 @@ module Aws::S3
1218
1343
  # expire.
1219
1344
  #
1220
1345
  # @option params [String] :object_lock_legal_hold_status
1221
- # Specifies whether you want to apply a Legal Hold to the copied object.
1346
+ # Specifies whether you want to apply a legal hold to the copied object.
1222
1347
  #
1223
1348
  # @option params [String] :expected_bucket_owner
1224
1349
  # The account ID of the expected destination bucket owner. If the
1225
- # destination bucket is owned by a different account, the request will
1226
- # fail with an HTTP `403 (Access Denied)` error.
1350
+ # destination bucket is owned by a different account, the request fails
1351
+ # with the HTTP status code `403 Forbidden` (access denied).
1227
1352
  #
1228
1353
  # @option params [String] :expected_source_bucket_owner
1229
1354
  # The account ID of the expected source bucket owner. If the source
1230
- # bucket is owned by a different account, the request will fail with an
1231
- # HTTP `403 (Access Denied)` error.
1355
+ # bucket is owned by a different account, the request fails with the
1356
+ # HTTP status code `403 Forbidden` (access denied).
1232
1357
  #
1233
1358
  # @return [Types::CopyObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1234
1359
  #
@@ -1269,6 +1394,7 @@ module Aws::S3
1269
1394
  # acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
1270
1395
  # bucket: "BucketName", # required
1271
1396
  # cache_control: "CacheControl",
1397
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
1272
1398
  # content_disposition: "ContentDisposition",
1273
1399
  # content_encoding: "ContentEncoding",
1274
1400
  # content_language: "ContentLanguage",
@@ -1314,6 +1440,10 @@ module Aws::S3
1314
1440
  #
1315
1441
  # resp.copy_object_result.etag #=> String
1316
1442
  # resp.copy_object_result.last_modified #=> Time
1443
+ # resp.copy_object_result.checksum_crc32 #=> String
1444
+ # resp.copy_object_result.checksum_crc32c #=> String
1445
+ # resp.copy_object_result.checksum_sha1 #=> String
1446
+ # resp.copy_object_result.checksum_sha256 #=> String
1317
1447
  # resp.expiration #=> String
1318
1448
  # resp.copy_source_version_id #=> String
1319
1449
  # resp.version_id #=> String
@@ -1369,12 +1499,12 @@ module Aws::S3
1369
1499
  # configure the bucket ACL to specify the accounts or groups that should
1370
1500
  # be granted specific permissions on the bucket.
1371
1501
  #
1372
- # If your CreateBucket request includes the `BucketOwnerEnforced` value
1373
- # for the `x-amz-object-ownership` header, your request can either not
1374
- # specify an ACL or specify bucket owner full control ACLs, such as the
1375
- # `bucket-owner-full-control` canned ACL or an equivalent ACL expressed
1376
- # in the XML format. For more information, see [Controlling object
1377
- # ownership][5] in the *Amazon S3 User Guide*.
1502
+ # If your CreateBucket request sets bucket owner enforced for S3 Object
1503
+ # Ownership and specifies a bucket ACL that provides access to an
1504
+ # external Amazon Web Services account, your request fails with a `400`
1505
+ # error and returns the `InvalidBucketAclWithObjectOwnership` error
1506
+ # code. For more information, see [Controlling object ownership][5] in
1507
+ # the *Amazon S3 User Guide*.
1378
1508
  #
1379
1509
  # There are two ways to grant the appropriate permissions using the
1380
1510
  # request headers.
@@ -1687,11 +1817,11 @@ module Aws::S3
1687
1817
  # used to encrypt data, specify the following headers in the
1688
1818
  # request.
1689
1819
  #
1690
- # * x-amz-server-side-encryption
1820
+ # * `x-amz-server-side-encryption`
1691
1821
  #
1692
- # * x-amz-server-side-encryption-aws-kms-key-id
1822
+ # * `x-amz-server-side-encryption-aws-kms-key-id`
1693
1823
  #
1694
- # * x-amz-server-side-encryption-context
1824
+ # * `x-amz-server-side-encryption-context`
1695
1825
  #
1696
1826
  # <note markdown="1"> If you specify `x-amz-server-side-encryption:aws:kms`, but don't
1697
1827
  # provide `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3
@@ -1712,11 +1842,11 @@ module Aws::S3
1712
1842
  # own encryption keys, provide all the following headers in the
1713
1843
  # request.
1714
1844
  #
1715
- # * x-amz-server-side-encryption-customer-algorithm
1845
+ # * `x-amz-server-side-encryption-customer-algorithm`
1716
1846
  #
1717
- # * x-amz-server-side-encryption-customer-key
1847
+ # * `x-amz-server-side-encryption-customer-key`
1718
1848
  #
1719
- # * x-amz-server-side-encryption-customer-key-MD5
1849
+ # * `x-amz-server-side-encryption-customer-key-MD5`
1720
1850
  #
1721
1851
  # For more information about server-side encryption with KMS keys
1722
1852
  # (SSE-KMS), see [Protecting Data Using Server-Side Encryption with
@@ -1746,15 +1876,15 @@ module Aws::S3
1746
1876
  # header, you specify a list of grantees who get the specific
1747
1877
  # permission. To grant permissions explicitly, use:
1748
1878
  #
1749
- # * x-amz-grant-read
1879
+ # * `x-amz-grant-read`
1750
1880
  #
1751
- # * x-amz-grant-write
1881
+ # * `x-amz-grant-write`
1752
1882
  #
1753
- # * x-amz-grant-read-acp
1883
+ # * `x-amz-grant-read-acp`
1754
1884
  #
1755
- # * x-amz-grant-write-acp
1885
+ # * `x-amz-grant-write-acp`
1756
1886
  #
1757
- # * x-amz-grant-full-control
1887
+ # * `x-amz-grant-full-control`
1758
1888
  #
1759
1889
  # You specify each grantee as a type=value pair, where the type is
1760
1890
  # one of the following:
@@ -1848,12 +1978,12 @@ module Aws::S3
1848
1978
  #
1849
1979
  # When using this action with Amazon S3 on Outposts, you must direct
1850
1980
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
1851
- # takes the form
1852
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
1853
- # When using this action using S3 on Outposts through the Amazon Web
1981
+ # takes the form `
1982
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
1983
+ # When using this action with S3 on Outposts through the Amazon Web
1854
1984
  # Services SDKs, you provide the Outposts bucket ARN in place of the
1855
1985
  # bucket name. For more information about S3 on Outposts ARNs, see
1856
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
1986
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
1857
1987
  #
1858
1988
  #
1859
1989
  #
@@ -1974,8 +2104,8 @@ module Aws::S3
1974
2104
  # @option params [String] :request_payer
1975
2105
  # Confirms that the requester knows that they will be charged for the
1976
2106
  # request. Bucket owners need not specify this parameter in their
1977
- # requests. For information about downloading objects from requester
1978
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
2107
+ # requests. For information about downloading objects from Requester
2108
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
1979
2109
  # in the *Amazon S3 User Guide*.
1980
2110
  #
1981
2111
  #
@@ -1994,13 +2124,22 @@ module Aws::S3
1994
2124
  # Specifies the date and time when you want the Object Lock to expire.
1995
2125
  #
1996
2126
  # @option params [String] :object_lock_legal_hold_status
1997
- # Specifies whether you want to apply a Legal Hold to the uploaded
2127
+ # Specifies whether you want to apply a legal hold to the uploaded
1998
2128
  # object.
1999
2129
  #
2000
2130
  # @option params [String] :expected_bucket_owner
2001
2131
  # The account ID of the expected bucket owner. If the bucket is owned by
2002
- # a different account, the request will fail with an HTTP `403 (Access
2003
- # Denied)` error.
2132
+ # a different account, the request fails with the HTTP status code `403
2133
+ # Forbidden` (access denied).
2134
+ #
2135
+ # @option params [String] :checksum_algorithm
2136
+ # Indicates the algorithm you want Amazon S3 to use to create the
2137
+ # checksum for the object. For more information, see [Checking object
2138
+ # integrity][1] in the *Amazon S3 User Guide*.
2139
+ #
2140
+ #
2141
+ #
2142
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2004
2143
  #
2005
2144
  # @return [Types::CreateMultipartUploadOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2006
2145
  #
@@ -2016,6 +2155,7 @@ module Aws::S3
2016
2155
  # * {Types::CreateMultipartUploadOutput#ssekms_encryption_context #ssekms_encryption_context} => String
2017
2156
  # * {Types::CreateMultipartUploadOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
2018
2157
  # * {Types::CreateMultipartUploadOutput#request_charged #request_charged} => String
2158
+ # * {Types::CreateMultipartUploadOutput#checksum_algorithm #checksum_algorithm} => String
2019
2159
  #
2020
2160
  #
2021
2161
  # @example Example: To initiate a multipart upload
@@ -2068,6 +2208,7 @@ module Aws::S3
2068
2208
  # object_lock_retain_until_date: Time.now,
2069
2209
  # object_lock_legal_hold_status: "ON", # accepts ON, OFF
2070
2210
  # expected_bucket_owner: "AccountId",
2211
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
2071
2212
  # })
2072
2213
  #
2073
2214
  # @example Response structure
@@ -2084,6 +2225,7 @@ module Aws::S3
2084
2225
  # resp.ssekms_encryption_context #=> String
2085
2226
  # resp.bucket_key_enabled #=> Boolean
2086
2227
  # resp.request_charged #=> String, one of "requester"
2228
+ # resp.checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
2087
2229
  #
2088
2230
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUpload AWS API Documentation
2089
2231
  #
@@ -2114,8 +2256,8 @@ module Aws::S3
2114
2256
  #
2115
2257
  # @option params [String] :expected_bucket_owner
2116
2258
  # The account ID of the expected bucket owner. If the bucket is owned by
2117
- # a different account, the request will fail with an HTTP `403 (Access
2118
- # Denied)` error.
2259
+ # a different account, the request fails with the HTTP status code `403
2260
+ # Forbidden` (access denied).
2119
2261
  #
2120
2262
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2121
2263
  #
@@ -2184,8 +2326,8 @@ module Aws::S3
2184
2326
  #
2185
2327
  # @option params [String] :expected_bucket_owner
2186
2328
  # The account ID of the expected bucket owner. If the bucket is owned by
2187
- # a different account, the request will fail with an HTTP `403 (Access
2188
- # Denied)` error.
2329
+ # a different account, the request fails with the HTTP status code `403
2330
+ # Forbidden` (access denied).
2189
2331
  #
2190
2332
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2191
2333
  #
@@ -2232,8 +2374,8 @@ module Aws::S3
2232
2374
  #
2233
2375
  # @option params [String] :expected_bucket_owner
2234
2376
  # The account ID of the expected bucket owner. If the bucket is owned by
2235
- # a different account, the request will fail with an HTTP `403 (Access
2236
- # Denied)` error.
2377
+ # a different account, the request fails with the HTTP status code `403
2378
+ # Forbidden` (access denied).
2237
2379
  #
2238
2380
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2239
2381
  #
@@ -2295,8 +2437,8 @@ module Aws::S3
2295
2437
  #
2296
2438
  # @option params [String] :expected_bucket_owner
2297
2439
  # The account ID of the expected bucket owner. If the bucket is owned by
2298
- # a different account, the request will fail with an HTTP `403 (Access
2299
- # Denied)` error.
2440
+ # a different account, the request fails with the HTTP status code `403
2441
+ # Forbidden` (access denied).
2300
2442
  #
2301
2443
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2302
2444
  #
@@ -2418,8 +2560,8 @@ module Aws::S3
2418
2560
  #
2419
2561
  # @option params [String] :expected_bucket_owner
2420
2562
  # The account ID of the expected bucket owner. If the bucket is owned by
2421
- # a different account, the request will fail with an HTTP `403 (Access
2422
- # Denied)` error.
2563
+ # a different account, the request fails with the HTTP status code `403
2564
+ # Forbidden` (access denied).
2423
2565
  #
2424
2566
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2425
2567
  #
@@ -2474,8 +2616,8 @@ module Aws::S3
2474
2616
  #
2475
2617
  # @option params [String] :expected_bucket_owner
2476
2618
  # The account ID of the expected bucket owner. If the bucket is owned by
2477
- # a different account, the request will fail with an HTTP `403 (Access
2478
- # Denied)` error.
2619
+ # a different account, the request fails with the HTTP status code `403
2620
+ # Forbidden` (access denied).
2479
2621
  #
2480
2622
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2481
2623
  #
@@ -2546,8 +2688,8 @@ module Aws::S3
2546
2688
  #
2547
2689
  # @option params [String] :expected_bucket_owner
2548
2690
  # The account ID of the expected bucket owner. If the bucket is owned by
2549
- # a different account, the request will fail with an HTTP `403 (Access
2550
- # Denied)` error.
2691
+ # a different account, the request fails with the HTTP status code `403
2692
+ # Forbidden` (access denied).
2551
2693
  #
2552
2694
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2553
2695
  #
@@ -2593,8 +2735,8 @@ module Aws::S3
2593
2735
  #
2594
2736
  # @option params [String] :expected_bucket_owner
2595
2737
  # The account ID of the expected bucket owner. If the bucket is owned by
2596
- # a different account, the request will fail with an HTTP `403 (Access
2597
- # Denied)` error.
2738
+ # a different account, the request fails with the HTTP status code `403
2739
+ # Forbidden` (access denied).
2598
2740
  #
2599
2741
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2600
2742
  #
@@ -2651,8 +2793,8 @@ module Aws::S3
2651
2793
  #
2652
2794
  # @option params [String] :expected_bucket_owner
2653
2795
  # The account ID of the expected bucket owner. If the bucket is owned by
2654
- # a different account, the request will fail with an HTTP `403 (Access
2655
- # Denied)` error.
2796
+ # a different account, the request fails with the HTTP status code `403
2797
+ # Forbidden` (access denied).
2656
2798
  #
2657
2799
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2658
2800
  #
@@ -2717,8 +2859,8 @@ module Aws::S3
2717
2859
  #
2718
2860
  # @option params [String] :expected_bucket_owner
2719
2861
  # The account ID of the expected bucket owner. If the bucket is owned by
2720
- # a different account, the request will fail with an HTTP `403 (Access
2721
- # Denied)` error.
2862
+ # a different account, the request fails with the HTTP status code `403
2863
+ # Forbidden` (access denied).
2722
2864
  #
2723
2865
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2724
2866
  #
@@ -2769,8 +2911,8 @@ module Aws::S3
2769
2911
  #
2770
2912
  # @option params [String] :expected_bucket_owner
2771
2913
  # The account ID of the expected bucket owner. If the bucket is owned by
2772
- # a different account, the request will fail with an HTTP `403 (Access
2773
- # Denied)` error.
2914
+ # a different account, the request fails with the HTTP status code `403
2915
+ # Forbidden` (access denied).
2774
2916
  #
2775
2917
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2776
2918
  #
@@ -2833,8 +2975,8 @@ module Aws::S3
2833
2975
  #
2834
2976
  # @option params [String] :expected_bucket_owner
2835
2977
  # The account ID of the expected bucket owner. If the bucket is owned by
2836
- # a different account, the request will fail with an HTTP `403 (Access
2837
- # Denied)` error.
2978
+ # a different account, the request fails with the HTTP status code `403
2979
+ # Forbidden` (access denied).
2838
2980
  #
2839
2981
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2840
2982
  #
@@ -2915,12 +3057,12 @@ module Aws::S3
2915
3057
  #
2916
3058
  # When using this action with Amazon S3 on Outposts, you must direct
2917
3059
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
2918
- # takes the form
2919
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
2920
- # When using this action using S3 on Outposts through the Amazon Web
3060
+ # takes the form `
3061
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
3062
+ # When using this action with S3 on Outposts through the Amazon Web
2921
3063
  # Services SDKs, you provide the Outposts bucket ARN in place of the
2922
3064
  # bucket name. For more information about S3 on Outposts ARNs, see
2923
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
3065
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
2924
3066
  #
2925
3067
  #
2926
3068
  #
@@ -2942,8 +3084,8 @@ module Aws::S3
2942
3084
  # @option params [String] :request_payer
2943
3085
  # Confirms that the requester knows that they will be charged for the
2944
3086
  # request. Bucket owners need not specify this parameter in their
2945
- # requests. For information about downloading objects from requester
2946
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
3087
+ # requests. For information about downloading objects from Requester
3088
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
2947
3089
  # in the *Amazon S3 User Guide*.
2948
3090
  #
2949
3091
  #
@@ -2953,12 +3095,12 @@ module Aws::S3
2953
3095
  # @option params [Boolean] :bypass_governance_retention
2954
3096
  # Indicates whether S3 Object Lock should bypass Governance-mode
2955
3097
  # restrictions to process this operation. To use this header, you must
2956
- # have the `s3:PutBucketPublicAccessBlock` permission.
3098
+ # have the `s3:BypassGovernanceRetention` permission.
2957
3099
  #
2958
3100
  # @option params [String] :expected_bucket_owner
2959
3101
  # The account ID of the expected bucket owner. If the bucket is owned by
2960
- # a different account, the request will fail with an HTTP `403 (Access
2961
- # Denied)` error.
3102
+ # a different account, the request fails with the HTTP status code `403
3103
+ # Forbidden` (access denied).
2962
3104
  #
2963
3105
  # @return [Types::DeleteObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2964
3106
  #
@@ -3052,12 +3194,12 @@ module Aws::S3
3052
3194
  #
3053
3195
  # When using this action with Amazon S3 on Outposts, you must direct
3054
3196
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
3055
- # takes the form
3056
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
3057
- # When using this action using S3 on Outposts through the Amazon Web
3197
+ # takes the form `
3198
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
3199
+ # When using this action with S3 on Outposts through the Amazon Web
3058
3200
  # Services SDKs, you provide the Outposts bucket ARN in place of the
3059
3201
  # bucket name. For more information about S3 on Outposts ARNs, see
3060
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
3202
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
3061
3203
  #
3062
3204
  #
3063
3205
  #
@@ -3073,8 +3215,8 @@ module Aws::S3
3073
3215
  #
3074
3216
  # @option params [String] :expected_bucket_owner
3075
3217
  # The account ID of the expected bucket owner. If the bucket is owned by
3076
- # a different account, the request will fail with an HTTP `403 (Access
3077
- # Denied)` error.
3218
+ # a different account, the request fails with the HTTP status code `403
3219
+ # Forbidden` (access denied).
3078
3220
  #
3079
3221
  # @return [Types::DeleteObjectTaggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3080
3222
  #
@@ -3200,12 +3342,12 @@ module Aws::S3
3200
3342
  #
3201
3343
  # When using this action with Amazon S3 on Outposts, you must direct
3202
3344
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
3203
- # takes the form
3204
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
3205
- # When using this action using S3 on Outposts through the Amazon Web
3345
+ # takes the form `
3346
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
3347
+ # When using this action with S3 on Outposts through the Amazon Web
3206
3348
  # Services SDKs, you provide the Outposts bucket ARN in place of the
3207
3349
  # bucket name. For more information about S3 on Outposts ARNs, see
3208
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
3350
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
3209
3351
  #
3210
3352
  #
3211
3353
  #
@@ -3224,8 +3366,8 @@ module Aws::S3
3224
3366
  # @option params [String] :request_payer
3225
3367
  # Confirms that the requester knows that they will be charged for the
3226
3368
  # request. Bucket owners need not specify this parameter in their
3227
- # requests. For information about downloading objects from requester
3228
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
3369
+ # requests. For information about downloading objects from Requester
3370
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
3229
3371
  # in the *Amazon S3 User Guide*.
3230
3372
  #
3231
3373
  #
@@ -3235,12 +3377,31 @@ module Aws::S3
3235
3377
  # @option params [Boolean] :bypass_governance_retention
3236
3378
  # Specifies whether you want to delete this object even if it has a
3237
3379
  # Governance-type Object Lock in place. To use this header, you must
3238
- # have the `s3:PutBucketPublicAccessBlock` permission.
3380
+ # have the `s3:BypassGovernanceRetention` permission.
3239
3381
  #
3240
3382
  # @option params [String] :expected_bucket_owner
3241
3383
  # The account ID of the expected bucket owner. If the bucket is owned by
3242
- # a different account, the request will fail with an HTTP `403 (Access
3243
- # Denied)` error.
3384
+ # a different account, the request fails with the HTTP status code `403
3385
+ # Forbidden` (access denied).
3386
+ #
3387
+ # @option params [String] :checksum_algorithm
3388
+ # Indicates the algorithm used to create the checksum for the object
3389
+ # when using the SDK. This header will not provide any additional
3390
+ # functionality if not using the SDK. When sending this header, there
3391
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
3392
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
3393
+ # `400 Bad Request`. For more information, see [Checking object
3394
+ # integrity][1] in the *Amazon S3 User Guide*.
3395
+ #
3396
+ # If you provide an individual checksum, Amazon S3 ignores any provided
3397
+ # `ChecksumAlgorithm` parameter.
3398
+ #
3399
+ # This checksum algorithm must be the same for all parts and it match
3400
+ # the checksum value supplied in the `CreateMultipartUpload` request.
3401
+ #
3402
+ #
3403
+ #
3404
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
3244
3405
  #
3245
3406
  # @return [Types::DeleteObjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3246
3407
  #
@@ -3338,6 +3499,7 @@ module Aws::S3
3338
3499
  # request_payer: "requester", # accepts requester
3339
3500
  # bypass_governance_retention: false,
3340
3501
  # expected_bucket_owner: "AccountId",
3502
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
3341
3503
  # })
3342
3504
  #
3343
3505
  # @example Response structure
@@ -3395,8 +3557,8 @@ module Aws::S3
3395
3557
  #
3396
3558
  # @option params [String] :expected_bucket_owner
3397
3559
  # The account ID of the expected bucket owner. If the bucket is owned by
3398
- # a different account, the request will fail with an HTTP `403 (Access
3399
- # Denied)` error.
3560
+ # a different account, the request fails with the HTTP status code `403
3561
+ # Forbidden` (access denied).
3400
3562
  #
3401
3563
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3402
3564
  #
@@ -3460,8 +3622,8 @@ module Aws::S3
3460
3622
  #
3461
3623
  # @option params [String] :expected_bucket_owner
3462
3624
  # The account ID of the expected bucket owner. If the bucket is owned by
3463
- # a different account, the request will fail with an HTTP `403 (Access
3464
- # Denied)` error.
3625
+ # a different account, the request fails with the HTTP status code `403
3626
+ # Forbidden` (access denied).
3465
3627
  #
3466
3628
  # @return [Types::GetBucketAccelerateConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3467
3629
  #
@@ -3518,8 +3680,8 @@ module Aws::S3
3518
3680
  #
3519
3681
  # @option params [String] :expected_bucket_owner
3520
3682
  # The account ID of the expected bucket owner. If the bucket is owned by
3521
- # a different account, the request will fail with an HTTP `403 (Access
3522
- # Denied)` error.
3683
+ # a different account, the request fails with the HTTP status code `403
3684
+ # Forbidden` (access denied).
3523
3685
  #
3524
3686
  # @return [Types::GetBucketAclOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3525
3687
  #
@@ -3595,8 +3757,8 @@ module Aws::S3
3595
3757
  #
3596
3758
  # @option params [String] :expected_bucket_owner
3597
3759
  # The account ID of the expected bucket owner. If the bucket is owned by
3598
- # a different account, the request will fail with an HTTP `403 (Access
3599
- # Denied)` error.
3760
+ # a different account, the request fails with the HTTP status code `403
3761
+ # Forbidden` (access denied).
3600
3762
  #
3601
3763
  # @return [Types::GetBucketAnalyticsConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3602
3764
  #
@@ -3635,13 +3797,14 @@ module Aws::S3
3635
3797
  req.send_request(options)
3636
3798
  end
3637
3799
 
3638
- # Returns the cors configuration information set for the bucket.
3800
+ # Returns the Cross-Origin Resource Sharing (CORS) configuration
3801
+ # information set for the bucket.
3639
3802
  #
3640
3803
  # To use this operation, you must have permission to perform the
3641
- # s3:GetBucketCORS action. By default, the bucket owner has this
3804
+ # `s3:GetBucketCORS` action. By default, the bucket owner has this
3642
3805
  # permission and can grant it to others.
3643
3806
  #
3644
- # For more information about cors, see [ Enabling Cross-Origin Resource
3807
+ # For more information about CORS, see [ Enabling Cross-Origin Resource
3645
3808
  # Sharing][1].
3646
3809
  #
3647
3810
  # The following operations are related to `GetBucketCors`\:
@@ -3661,8 +3824,8 @@ module Aws::S3
3661
3824
  #
3662
3825
  # @option params [String] :expected_bucket_owner
3663
3826
  # The account ID of the expected bucket owner. If the bucket is owned by
3664
- # a different account, the request will fail with an HTTP `403 (Access
3665
- # Denied)` error.
3827
+ # a different account, the request fails with the HTTP status code `403
3828
+ # Forbidden` (access denied).
3666
3829
  #
3667
3830
  # @return [Types::GetBucketCorsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3668
3831
  #
@@ -3760,8 +3923,8 @@ module Aws::S3
3760
3923
  #
3761
3924
  # @option params [String] :expected_bucket_owner
3762
3925
  # The account ID of the expected bucket owner. If the bucket is owned by
3763
- # a different account, the request will fail with an HTTP `403 (Access
3764
- # Denied)` error.
3926
+ # a different account, the request fails with the HTTP status code `403
3927
+ # Forbidden` (access denied).
3765
3928
  #
3766
3929
  # @return [Types::GetBucketEncryptionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3767
3930
  #
@@ -3910,8 +4073,8 @@ module Aws::S3
3910
4073
  #
3911
4074
  # @option params [String] :expected_bucket_owner
3912
4075
  # The account ID of the expected bucket owner. If the bucket is owned by
3913
- # a different account, the request will fail with an HTTP `403 (Access
3914
- # Denied)` error.
4076
+ # a different account, the request fails with the HTTP status code `403
4077
+ # Forbidden` (access denied).
3915
4078
  #
3916
4079
  # @return [Types::GetBucketInventoryConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3917
4080
  #
@@ -3937,7 +4100,7 @@ module Aws::S3
3937
4100
  # resp.inventory_configuration.id #=> String
3938
4101
  # resp.inventory_configuration.included_object_versions #=> String, one of "All", "Current"
3939
4102
  # resp.inventory_configuration.optional_fields #=> Array
3940
- # resp.inventory_configuration.optional_fields[0] #=> String, one of "Size", "LastModifiedDate", "StorageClass", "ETag", "IsMultipartUploaded", "ReplicationStatus", "EncryptionStatus", "ObjectLockRetainUntilDate", "ObjectLockMode", "ObjectLockLegalHoldStatus", "IntelligentTieringAccessTier", "BucketKeyStatus"
4103
+ # resp.inventory_configuration.optional_fields[0] #=> String, one of "Size", "LastModifiedDate", "StorageClass", "ETag", "IsMultipartUploaded", "ReplicationStatus", "EncryptionStatus", "ObjectLockRetainUntilDate", "ObjectLockMode", "ObjectLockLegalHoldStatus", "IntelligentTieringAccessTier", "BucketKeyStatus", "ChecksumAlgorithm"
3941
4104
  # resp.inventory_configuration.schedule.frequency #=> String, one of "Daily", "Weekly"
3942
4105
  #
3943
4106
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketInventoryConfiguration AWS API Documentation
@@ -3998,8 +4161,8 @@ module Aws::S3
3998
4161
  #
3999
4162
  # @option params [String] :expected_bucket_owner
4000
4163
  # The account ID of the expected bucket owner. If the bucket is owned by
4001
- # a different account, the request will fail with an HTTP `403 (Access
4002
- # Denied)` error.
4164
+ # a different account, the request fails with the HTTP status code `403
4165
+ # Forbidden` (access denied).
4003
4166
  #
4004
4167
  # @return [Types::GetBucketLifecycleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4005
4168
  #
@@ -4118,8 +4281,8 @@ module Aws::S3
4118
4281
  #
4119
4282
  # @option params [String] :expected_bucket_owner
4120
4283
  # The account ID of the expected bucket owner. If the bucket is owned by
4121
- # a different account, the request will fail with an HTTP `403 (Access
4122
- # Denied)` error.
4284
+ # a different account, the request fails with the HTTP status code `403
4285
+ # Forbidden` (access denied).
4123
4286
  #
4124
4287
  # @return [Types::GetBucketLifecycleConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4125
4288
  #
@@ -4225,8 +4388,8 @@ module Aws::S3
4225
4388
  #
4226
4389
  # @option params [String] :expected_bucket_owner
4227
4390
  # The account ID of the expected bucket owner. If the bucket is owned by
4228
- # a different account, the request will fail with an HTTP `403 (Access
4229
- # Denied)` error.
4391
+ # a different account, the request fails with the HTTP status code `403
4392
+ # Forbidden` (access denied).
4230
4393
  #
4231
4394
  # @return [Types::GetBucketLocationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4232
4395
  #
@@ -4286,8 +4449,8 @@ module Aws::S3
4286
4449
  #
4287
4450
  # @option params [String] :expected_bucket_owner
4288
4451
  # The account ID of the expected bucket owner. If the bucket is owned by
4289
- # a different account, the request will fail with an HTTP `403 (Access
4290
- # Denied)` error.
4452
+ # a different account, the request fails with the HTTP status code `403
4453
+ # Forbidden` (access denied).
4291
4454
  #
4292
4455
  # @return [Types::GetBucketLoggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4293
4456
  #
@@ -4364,8 +4527,8 @@ module Aws::S3
4364
4527
  #
4365
4528
  # @option params [String] :expected_bucket_owner
4366
4529
  # The account ID of the expected bucket owner. If the bucket is owned by
4367
- # a different account, the request will fail with an HTTP `403 (Access
4368
- # Denied)` error.
4530
+ # a different account, the request fails with the HTTP status code `403
4531
+ # Forbidden` (access denied).
4369
4532
  #
4370
4533
  # @return [Types::GetBucketMetricsConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4371
4534
  #
@@ -4413,8 +4576,8 @@ module Aws::S3
4413
4576
  #
4414
4577
  # @option params [String] :expected_bucket_owner
4415
4578
  # The account ID of the expected bucket owner. If the bucket is owned by
4416
- # a different account, the request will fail with an HTTP `403 (Access
4417
- # Denied)` error.
4579
+ # a different account, the request fails with the HTTP status code `403
4580
+ # Forbidden` (access denied).
4418
4581
  #
4419
4582
  # @return [Types::NotificationConfigurationDeprecated] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4420
4583
  #
@@ -4547,8 +4710,8 @@ module Aws::S3
4547
4710
  #
4548
4711
  # @option params [String] :expected_bucket_owner
4549
4712
  # The account ID of the expected bucket owner. If the bucket is owned by
4550
- # a different account, the request will fail with an HTTP `403 (Access
4551
- # Denied)` error.
4713
+ # a different account, the request fails with the HTTP status code `403
4714
+ # Forbidden` (access denied).
4552
4715
  #
4553
4716
  # @return [Types::NotificationConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4554
4717
  #
@@ -4625,8 +4788,8 @@ module Aws::S3
4625
4788
  #
4626
4789
  # @option params [String] :expected_bucket_owner
4627
4790
  # The account ID of the expected bucket owner. If the bucket is owned by
4628
- # a different account, the request will fail with an HTTP `403 (Access
4629
- # Denied)` error.
4791
+ # a different account, the request fails with the HTTP status code `403
4792
+ # Forbidden` (access denied).
4630
4793
  #
4631
4794
  # @return [Types::GetBucketOwnershipControlsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4632
4795
  #
@@ -4688,8 +4851,8 @@ module Aws::S3
4688
4851
  #
4689
4852
  # @option params [String] :expected_bucket_owner
4690
4853
  # The account ID of the expected bucket owner. If the bucket is owned by
4691
- # a different account, the request will fail with an HTTP `403 (Access
4692
- # Denied)` error.
4854
+ # a different account, the request fails with the HTTP status code `403
4855
+ # Forbidden` (access denied).
4693
4856
  #
4694
4857
  # @return [Types::GetBucketPolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4695
4858
  #
@@ -4763,8 +4926,8 @@ module Aws::S3
4763
4926
  #
4764
4927
  # @option params [String] :expected_bucket_owner
4765
4928
  # The account ID of the expected bucket owner. If the bucket is owned by
4766
- # a different account, the request will fail with an HTTP `403 (Access
4767
- # Denied)` error.
4929
+ # a different account, the request fails with the HTTP status code `403
4930
+ # Forbidden` (access denied).
4768
4931
  #
4769
4932
  # @return [Types::GetBucketPolicyStatusOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4770
4933
  #
@@ -4831,8 +4994,8 @@ module Aws::S3
4831
4994
  #
4832
4995
  # @option params [String] :expected_bucket_owner
4833
4996
  # The account ID of the expected bucket owner. If the bucket is owned by
4834
- # a different account, the request will fail with an HTTP `403 (Access
4835
- # Denied)` error.
4997
+ # a different account, the request fails with the HTTP status code `403
4998
+ # Forbidden` (access denied).
4836
4999
  #
4837
5000
  # @return [Types::GetBucketReplicationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4838
5001
  #
@@ -4930,8 +5093,8 @@ module Aws::S3
4930
5093
  #
4931
5094
  # @option params [String] :expected_bucket_owner
4932
5095
  # The account ID of the expected bucket owner. If the bucket is owned by
4933
- # a different account, the request will fail with an HTTP `403 (Access
4934
- # Denied)` error.
5096
+ # a different account, the request fails with the HTTP status code `403
5097
+ # Forbidden` (access denied).
4935
5098
  #
4936
5099
  # @return [Types::GetBucketRequestPaymentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4937
5100
  #
@@ -4979,7 +5142,7 @@ module Aws::S3
4979
5142
  #
4980
5143
  # `GetBucketTagging` has the following special error:
4981
5144
  #
4982
- # * Error code: `NoSuchTagSetError`
5145
+ # * Error code: `NoSuchTagSet`
4983
5146
  #
4984
5147
  # * Description: There is no tag set associated with the bucket.
4985
5148
  #
@@ -5001,8 +5164,8 @@ module Aws::S3
5001
5164
  #
5002
5165
  # @option params [String] :expected_bucket_owner
5003
5166
  # The account ID of the expected bucket owner. If the bucket is owned by
5004
- # a different account, the request will fail with an HTTP `403 (Access
5005
- # Denied)` error.
5167
+ # a different account, the request fails with the HTTP status code `403
5168
+ # Forbidden` (access denied).
5006
5169
  #
5007
5170
  # @return [Types::GetBucketTaggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5008
5171
  #
@@ -5082,8 +5245,8 @@ module Aws::S3
5082
5245
  #
5083
5246
  # @option params [String] :expected_bucket_owner
5084
5247
  # The account ID of the expected bucket owner. If the bucket is owned by
5085
- # a different account, the request will fail with an HTTP `403 (Access
5086
- # Denied)` error.
5248
+ # a different account, the request fails with the HTTP status code `403
5249
+ # Forbidden` (access denied).
5087
5250
  #
5088
5251
  # @return [Types::GetBucketVersioningOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5089
5252
  #
@@ -5154,8 +5317,8 @@ module Aws::S3
5154
5317
  #
5155
5318
  # @option params [String] :expected_bucket_owner
5156
5319
  # The account ID of the expected bucket owner. If the bucket is owned by
5157
- # a different account, the request will fail with an HTTP `403 (Access
5158
- # Denied)` error.
5320
+ # a different account, the request fails with the HTTP status code `403
5321
+ # Forbidden` (access denied).
5159
5322
  #
5160
5323
  # @return [Types::GetBucketWebsiteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5161
5324
  #
@@ -5234,18 +5397,16 @@ module Aws::S3
5234
5397
  # `/examplebucket/photos/2006/February/sample.jpg`. For more information
5235
5398
  # about request types, see [HTTP Host Header Bucket Specification][1].
5236
5399
  #
5237
- # To distribute large files to many people, you can save bandwidth costs
5238
- # by using BitTorrent. For more information, see [Amazon S3 Torrent][2].
5239
5400
  # For more information about returning the ACL of an object, see
5240
- # [GetObjectAcl][3].
5401
+ # [GetObjectAcl][2].
5241
5402
  #
5242
5403
  # If the object you are retrieving is stored in the S3 Glacier or S3
5243
5404
  # Glacier Deep Archive storage class, or S3 Intelligent-Tiering Archive
5244
5405
  # or S3 Intelligent-Tiering Deep Archive tiers, before you can retrieve
5245
- # the object you must first restore a copy using [RestoreObject][4].
5406
+ # the object you must first restore a copy using [RestoreObject][3].
5246
5407
  # Otherwise, this action returns an `InvalidObjectStateError` error. For
5247
5408
  # information about restoring archived objects, see [Restoring Archived
5248
- # Objects][5].
5409
+ # Objects][4].
5249
5410
  #
5250
5411
  # Encryption request headers, like `x-amz-server-side-encryption`,
5251
5412
  # should not be sent for GET requests if your object uses server-side
@@ -5265,19 +5426,19 @@ module Aws::S3
5265
5426
  # * x-amz-server-side-encryption-customer-key-MD5
5266
5427
  #
5267
5428
  # For more information about SSE-C, see [Server-Side Encryption (Using
5268
- # Customer-Provided Encryption Keys)][6].
5429
+ # Customer-Provided Encryption Keys)][5].
5269
5430
  #
5270
5431
  # Assuming you have the relevant permission to read object tags, the
5271
5432
  # response also returns the `x-amz-tagging-count` header that provides
5272
5433
  # the count of number of tags associated with the object. You can use
5273
- # [GetObjectTagging][7] to retrieve the tag set associated with an
5434
+ # [GetObjectTagging][6] to retrieve the tag set associated with an
5274
5435
  # object.
5275
5436
  #
5276
5437
  # **Permissions**
5277
5438
  #
5278
5439
  # You need the relevant read object (or version) permission for this
5279
5440
  # operation. For more information, see [Specifying Permissions in a
5280
- # Policy][8]. If the object you request does not exist, the error Amazon
5441
+ # Policy][7]. If the object you request does not exist, the error Amazon
5281
5442
  # S3 returns depends on whether you also have the `s3:ListBucket`
5282
5443
  # permission.
5283
5444
  #
@@ -5303,13 +5464,13 @@ module Aws::S3
5303
5464
  #
5304
5465
  # </note>
5305
5466
  #
5306
- # For more information about versioning, see [PutBucketVersioning][9].
5467
+ # For more information about versioning, see [PutBucketVersioning][8].
5307
5468
  #
5308
5469
  # **Overriding Response Header Values**
5309
5470
  #
5310
5471
  # There are times when you want to override certain response header
5311
5472
  # values in a GET response. For example, you might override the
5312
- # Content-Disposition response header value in your GET request.
5473
+ # `Content-Disposition` response header value in your GET request.
5313
5474
  #
5314
5475
  # You can override values for a set of response headers using the
5315
5476
  # following query parameters. These response header values are sent only
@@ -5352,27 +5513,26 @@ module Aws::S3
5352
5513
  # to `false`, and; `If-Modified-Since` condition evaluates to `true`;
5353
5514
  # then, S3 returns 304 Not Modified response code.
5354
5515
  #
5355
- # For more information about conditional requests, see [RFC 7232][10].
5516
+ # For more information about conditional requests, see [RFC 7232][9].
5356
5517
  #
5357
5518
  # The following operations are related to `GetObject`\:
5358
5519
  #
5359
- # * [ListBuckets][11]
5520
+ # * [ListBuckets][10]
5360
5521
  #
5361
- # * [GetObjectAcl][3]
5522
+ # * [GetObjectAcl][2]
5362
5523
  #
5363
5524
  #
5364
5525
  #
5365
5526
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket
5366
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html
5367
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html
5368
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
5369
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
5370
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
5371
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html
5372
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
5373
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html
5374
- # [10]: https://tools.ietf.org/html/rfc7232
5375
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html
5527
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html
5528
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
5529
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
5530
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
5531
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html
5532
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
5533
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html
5534
+ # [9]: https://tools.ietf.org/html/rfc7232
5535
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html
5376
5536
  #
5377
5537
  # @option params [String, IO] :response_target
5378
5538
  # Where to write response data, file path, or IO object.
@@ -5393,12 +5553,12 @@ module Aws::S3
5393
5553
  #
5394
5554
  # When using this action with Amazon S3 on Outposts, you must direct
5395
5555
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
5396
- # takes the form
5397
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
5398
- # When using this action using S3 on Outposts through the Amazon Web
5556
+ # takes the form `
5557
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
5558
+ # When using this action with S3 on Outposts through the Amazon Web
5399
5559
  # Services SDKs, you provide the Outposts bucket ARN in place of the
5400
5560
  # bucket name. For more information about S3 on Outposts ARNs, see
5401
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
5561
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
5402
5562
  #
5403
5563
  #
5404
5564
  #
@@ -5407,19 +5567,19 @@ module Aws::S3
5407
5567
  #
5408
5568
  # @option params [String] :if_match
5409
5569
  # Return the object only if its entity tag (ETag) is the same as the one
5410
- # specified, otherwise return a 412 (precondition failed).
5570
+ # specified; otherwise, return a 412 (precondition failed) error.
5411
5571
  #
5412
5572
  # @option params [Time,DateTime,Date,Integer,String] :if_modified_since
5413
5573
  # Return the object only if it has been modified since the specified
5414
- # time, otherwise return a 304 (not modified).
5574
+ # time; otherwise, return a 304 (not modified) error.
5415
5575
  #
5416
5576
  # @option params [String] :if_none_match
5417
5577
  # Return the object only if its entity tag (ETag) is different from the
5418
- # one specified, otherwise return a 304 (not modified).
5578
+ # one specified; otherwise, return a 304 (not modified) error.
5419
5579
  #
5420
5580
  # @option params [Time,DateTime,Date,Integer,String] :if_unmodified_since
5421
5581
  # Return the object only if it has not been modified since the specified
5422
- # time, otherwise return a 412 (precondition failed).
5582
+ # time; otherwise, return a 412 (precondition failed) error.
5423
5583
  #
5424
5584
  # @option params [required, String] :key
5425
5585
  # Key of the object to get.
@@ -5478,8 +5638,8 @@ module Aws::S3
5478
5638
  # @option params [String] :request_payer
5479
5639
  # Confirms that the requester knows that they will be charged for the
5480
5640
  # request. Bucket owners need not specify this parameter in their
5481
- # requests. For information about downloading objects from requester
5482
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
5641
+ # requests. For information about downloading objects from Requester
5642
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
5483
5643
  # in the *Amazon S3 User Guide*.
5484
5644
  #
5485
5645
  #
@@ -5494,8 +5654,11 @@ module Aws::S3
5494
5654
  #
5495
5655
  # @option params [String] :expected_bucket_owner
5496
5656
  # The account ID of the expected bucket owner. If the bucket is owned by
5497
- # a different account, the request will fail with an HTTP `403 (Access
5498
- # Denied)` error.
5657
+ # a different account, the request fails with the HTTP status code `403
5658
+ # Forbidden` (access denied).
5659
+ #
5660
+ # @option params [String] :checksum_mode
5661
+ # To retrieve the checksum, this mode must be enabled.
5499
5662
  #
5500
5663
  # @return [Types::GetObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5501
5664
  #
@@ -5507,6 +5670,10 @@ module Aws::S3
5507
5670
  # * {Types::GetObjectOutput#last_modified #last_modified} => Time
5508
5671
  # * {Types::GetObjectOutput#content_length #content_length} => Integer
5509
5672
  # * {Types::GetObjectOutput#etag #etag} => String
5673
+ # * {Types::GetObjectOutput#checksum_crc32 #checksum_crc32} => String
5674
+ # * {Types::GetObjectOutput#checksum_crc32c #checksum_crc32c} => String
5675
+ # * {Types::GetObjectOutput#checksum_sha1 #checksum_sha1} => String
5676
+ # * {Types::GetObjectOutput#checksum_sha256 #checksum_sha256} => String
5510
5677
  # * {Types::GetObjectOutput#missing_meta #missing_meta} => Integer
5511
5678
  # * {Types::GetObjectOutput#version_id #version_id} => String
5512
5679
  # * {Types::GetObjectOutput#cache_control #cache_control} => String
@@ -5632,6 +5799,7 @@ module Aws::S3
5632
5799
  # request_payer: "requester", # accepts requester
5633
5800
  # part_number: 1,
5634
5801
  # expected_bucket_owner: "AccountId",
5802
+ # checksum_mode: "ENABLED", # accepts ENABLED
5635
5803
  # })
5636
5804
  #
5637
5805
  # @example Response structure
@@ -5644,6 +5812,10 @@ module Aws::S3
5644
5812
  # resp.last_modified #=> Time
5645
5813
  # resp.content_length #=> Integer
5646
5814
  # resp.etag #=> String
5815
+ # resp.checksum_crc32 #=> String
5816
+ # resp.checksum_crc32c #=> String
5817
+ # resp.checksum_sha1 #=> String
5818
+ # resp.checksum_sha256 #=> String
5647
5819
  # resp.missing_meta #=> Integer
5648
5820
  # resp.version_id #=> String
5649
5821
  # resp.cache_control #=> String
@@ -5681,7 +5853,10 @@ module Aws::S3
5681
5853
  end
5682
5854
 
5683
5855
  # Returns the access control list (ACL) of an object. To use this
5684
- # operation, you must have `READ_ACP` access to the object.
5856
+ # operation, you must have `s3:GetObjectAcl` permissions or `READ_ACP`
5857
+ # access to the object. For more information, see [Mapping of ACL
5858
+ # permissions and access policy permissions][1] in the *Amazon S3 User
5859
+ # Guide*
5685
5860
  #
5686
5861
  # This action is not supported by Amazon S3 on Outposts.
5687
5862
  #
@@ -5695,24 +5870,28 @@ module Aws::S3
5695
5870
  # Ownership, requests to read ACLs are still supported and return the
5696
5871
  # `bucket-owner-full-control` ACL with the owner being the account that
5697
5872
  # created the bucket. For more information, see [ Controlling object
5698
- # ownership and disabling ACLs][1] in the *Amazon S3 User Guide*.
5873
+ # ownership and disabling ACLs][2] in the *Amazon S3 User Guide*.
5699
5874
  #
5700
5875
  # </note>
5701
5876
  #
5702
5877
  # The following operations are related to `GetObjectAcl`\:
5703
5878
  #
5704
- # * [GetObject][2]
5879
+ # * [GetObject][3]
5705
5880
  #
5706
- # * [DeleteObject][3]
5881
+ # * [GetObjectAttributes][4]
5707
5882
  #
5708
- # * [PutObject][4]
5883
+ # * [DeleteObject][5]
5709
5884
  #
5885
+ # * [PutObject][6]
5710
5886
  #
5711
5887
  #
5712
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
5713
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
5714
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
5715
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
5888
+ #
5889
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#acl-access-policy-permission-mapping
5890
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
5891
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
5892
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
5893
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
5894
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
5716
5895
  #
5717
5896
  # @option params [required, String] :bucket
5718
5897
  # The bucket name that contains the object for which to get the ACL
@@ -5739,8 +5918,8 @@ module Aws::S3
5739
5918
  # @option params [String] :request_payer
5740
5919
  # Confirms that the requester knows that they will be charged for the
5741
5920
  # request. Bucket owners need not specify this parameter in their
5742
- # requests. For information about downloading objects from requester
5743
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
5921
+ # requests. For information about downloading objects from Requester
5922
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
5744
5923
  # in the *Amazon S3 User Guide*.
5745
5924
  #
5746
5925
  #
@@ -5749,8 +5928,8 @@ module Aws::S3
5749
5928
  #
5750
5929
  # @option params [String] :expected_bucket_owner
5751
5930
  # The account ID of the expected bucket owner. If the bucket is owned by
5752
- # a different account, the request will fail with an HTTP `403 (Access
5753
- # Denied)` error.
5931
+ # a different account, the request fails with the HTTP status code `403
5932
+ # Forbidden` (access denied).
5754
5933
  #
5755
5934
  # @return [Types::GetObjectAclOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5756
5935
  #
@@ -5842,17 +6021,270 @@ module Aws::S3
5842
6021
  req.send_request(options)
5843
6022
  end
5844
6023
 
5845
- # Gets an object's current Legal Hold status. For more information, see
6024
+ # Retrieves all the metadata from an object without returning the object
6025
+ # itself. This action is useful if you're interested only in an
6026
+ # object's metadata. To use `GetObjectAttributes`, you must have READ
6027
+ # access to the object.
6028
+ #
6029
+ # `GetObjectAttributes` combines the functionality of `GetObjectAcl`,
6030
+ # `GetObjectLegalHold`, `GetObjectLockConfiguration`,
6031
+ # `GetObjectRetention`, `GetObjectTagging`, `HeadObject`, and
6032
+ # `ListParts`. All of the data returned with each of those individual
6033
+ # calls can be returned with a single call to `GetObjectAttributes`.
6034
+ #
6035
+ # If you encrypt an object by using server-side encryption with
6036
+ # customer-provided encryption keys (SSE-C) when you store the object in
6037
+ # Amazon S3, then when you retrieve the metadata from the object, you
6038
+ # must use the following headers:
6039
+ #
6040
+ # * `x-amz-server-side-encryption-customer-algorithm`
6041
+ #
6042
+ # * `x-amz-server-side-encryption-customer-key`
6043
+ #
6044
+ # * `x-amz-server-side-encryption-customer-key-MD5`
6045
+ #
6046
+ # For more information about SSE-C, see [Server-Side Encryption (Using
6047
+ # Customer-Provided Encryption Keys)][1] in the *Amazon S3 User Guide*.
6048
+ #
6049
+ # <note markdown="1"> * Encryption request headers, such as `x-amz-server-side-encryption`,
6050
+ # should not be sent for GET requests if your object uses server-side
6051
+ # encryption with Amazon Web Services KMS keys stored in Amazon Web
6052
+ # Services Key Management Service (SSE-KMS) or server-side encryption
6053
+ # with Amazon S3 managed encryption keys (SSE-S3). If your object does
6054
+ # use these types of keys, you'll get an HTTP `400 Bad Request`
6055
+ # error.
6056
+ #
6057
+ # * The last modified property in this case is the creation date of the
6058
+ # object.
6059
+ #
6060
+ # </note>
6061
+ #
6062
+ # Consider the following when using request headers:
6063
+ #
6064
+ # * If both of the `If-Match` and `If-Unmodified-Since` headers are
6065
+ # present in the request as follows, then Amazon S3 returns the HTTP
6066
+ # status code `200 OK` and the data requested:
6067
+ #
6068
+ # * `If-Match` condition evaluates to `true`.
6069
+ #
6070
+ # * `If-Unmodified-Since` condition evaluates to `false`.
6071
+ #
6072
+ # * If both of the `If-None-Match` and `If-Modified-Since` headers are
6073
+ # present in the request as follows, then Amazon S3 returns the HTTP
6074
+ # status code `304 Not Modified`\:
6075
+ #
6076
+ # * `If-None-Match` condition evaluates to `false`.
6077
+ #
6078
+ # * `If-Modified-Since` condition evaluates to `true`.
6079
+ #
6080
+ # For more information about conditional requests, see [RFC 7232][2].
6081
+ #
6082
+ # **Permissions**
6083
+ #
6084
+ # The permissions that you need to use this operation depend on whether
6085
+ # the bucket is versioned. If the bucket is versioned, you need both the
6086
+ # `s3:GetObjectVersion` and `s3:GetObjectVersionAttributes` permissions
6087
+ # for this operation. If the bucket is not versioned, you need the
6088
+ # `s3:GetObject` and `s3:GetObjectAttributes` permissions. For more
6089
+ # information, see [Specifying Permissions in a Policy][3] in the
6090
+ # *Amazon S3 User Guide*. If the object that you request does not exist,
6091
+ # the error Amazon S3 returns depends on whether you also have the
6092
+ # `s3:ListBucket` permission.
6093
+ #
6094
+ # * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
6095
+ # returns an HTTP status code `404 Not Found` ("no such key") error.
6096
+ #
6097
+ # * If you don't have the `s3:ListBucket` permission, Amazon S3 returns
6098
+ # an HTTP status code `403 Forbidden` ("access denied") error.
6099
+ #
6100
+ # The following actions are related to `GetObjectAttributes`\:
6101
+ #
6102
+ # * [GetObject][4]
6103
+ #
6104
+ # * [GetObjectAcl][5]
6105
+ #
6106
+ # * [GetObjectLegalHold][6]
6107
+ #
6108
+ # * [GetObjectLockConfiguration][7]
6109
+ #
6110
+ # * [GetObjectRetention][8]
6111
+ #
6112
+ # * [GetObjectTagging][9]
6113
+ #
6114
+ # * [HeadObject][10]
6115
+ #
6116
+ # * [ListParts][11]
6117
+ #
6118
+ #
6119
+ #
6120
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
6121
+ # [2]: https://tools.ietf.org/html/rfc7232
6122
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
6123
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
6124
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html
6125
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLegalHold.html
6126
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLockConfiguration.html
6127
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectRetention.html
6128
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html
6129
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html
6130
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
6131
+ #
6132
+ # @option params [required, String] :bucket
6133
+ # The name of the bucket that contains the object.
6134
+ #
6135
+ # When using this action with an access point, you must direct requests
6136
+ # to the access point hostname. The access point hostname takes the form
6137
+ # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
6138
+ # When using this action with an access point through the Amazon Web
6139
+ # Services SDKs, you provide the access point ARN in place of the bucket
6140
+ # name. For more information about access point ARNs, see [Using access
6141
+ # points][1] in the *Amazon S3 User Guide*.
6142
+ #
6143
+ # When using this action with Amazon S3 on Outposts, you must direct
6144
+ # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6145
+ # takes the form `
6146
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
6147
+ # When using this action with S3 on Outposts through the Amazon Web
6148
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
6149
+ # bucket name. For more information about S3 on Outposts ARNs, see
6150
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
6151
+ #
6152
+ #
6153
+ #
6154
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
6155
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
6156
+ #
6157
+ # @option params [required, String] :key
6158
+ # The object key.
6159
+ #
6160
+ # @option params [String] :version_id
6161
+ # The version ID used to reference a specific version of the object.
6162
+ #
6163
+ # @option params [Integer] :max_parts
6164
+ # Sets the maximum number of parts to return.
6165
+ #
6166
+ # @option params [Integer] :part_number_marker
6167
+ # Specifies the part after which listing should begin. Only parts with
6168
+ # higher part numbers will be listed.
6169
+ #
6170
+ # @option params [String] :sse_customer_algorithm
6171
+ # Specifies the algorithm to use when encrypting the object (for
6172
+ # example, AES256).
6173
+ #
6174
+ # @option params [String] :sse_customer_key
6175
+ # Specifies the customer-provided encryption key for Amazon S3 to use in
6176
+ # encrypting data. This value is used to store the object and then it is
6177
+ # discarded; Amazon S3 does not store the encryption key. The key must
6178
+ # be appropriate for use with the algorithm specified in the
6179
+ # `x-amz-server-side-encryption-customer-algorithm` header.
6180
+ #
6181
+ # @option params [String] :sse_customer_key_md5
6182
+ # Specifies the 128-bit MD5 digest of the encryption key according to
6183
+ # RFC 1321. Amazon S3 uses this header for a message integrity check to
6184
+ # ensure that the encryption key was transmitted without error.
6185
+ #
6186
+ # @option params [String] :request_payer
6187
+ # Confirms that the requester knows that they will be charged for the
6188
+ # request. Bucket owners need not specify this parameter in their
6189
+ # requests. For information about downloading objects from Requester
6190
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
6191
+ # in the *Amazon S3 User Guide*.
6192
+ #
6193
+ #
6194
+ #
6195
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
6196
+ #
6197
+ # @option params [String] :expected_bucket_owner
6198
+ # The account ID of the expected bucket owner. If the bucket is owned by
6199
+ # a different account, the request fails with the HTTP status code `403
6200
+ # Forbidden` (access denied).
6201
+ #
6202
+ # @option params [required, Array<String>] :object_attributes
6203
+ # An XML header that specifies the fields at the root level that you
6204
+ # want returned in the response. Fields that you do not specify are not
6205
+ # returned.
6206
+ #
6207
+ # @return [Types::GetObjectAttributesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6208
+ #
6209
+ # * {Types::GetObjectAttributesOutput#delete_marker #delete_marker} => Boolean
6210
+ # * {Types::GetObjectAttributesOutput#last_modified #last_modified} => Time
6211
+ # * {Types::GetObjectAttributesOutput#version_id #version_id} => String
6212
+ # * {Types::GetObjectAttributesOutput#request_charged #request_charged} => String
6213
+ # * {Types::GetObjectAttributesOutput#etag #etag} => String
6214
+ # * {Types::GetObjectAttributesOutput#checksum #checksum} => Types::Checksum
6215
+ # * {Types::GetObjectAttributesOutput#object_parts #object_parts} => Types::GetObjectAttributesParts
6216
+ # * {Types::GetObjectAttributesOutput#storage_class #storage_class} => String
6217
+ # * {Types::GetObjectAttributesOutput#object_size #object_size} => Integer
6218
+ #
6219
+ # @example Request syntax with placeholder values
6220
+ #
6221
+ # resp = client.get_object_attributes({
6222
+ # bucket: "BucketName", # required
6223
+ # key: "ObjectKey", # required
6224
+ # version_id: "ObjectVersionId",
6225
+ # max_parts: 1,
6226
+ # part_number_marker: 1,
6227
+ # sse_customer_algorithm: "SSECustomerAlgorithm",
6228
+ # sse_customer_key: "SSECustomerKey",
6229
+ # sse_customer_key_md5: "SSECustomerKeyMD5",
6230
+ # request_payer: "requester", # accepts requester
6231
+ # expected_bucket_owner: "AccountId",
6232
+ # object_attributes: ["ETag"], # required, accepts ETag, Checksum, ObjectParts, StorageClass, ObjectSize
6233
+ # })
6234
+ #
6235
+ # @example Response structure
6236
+ #
6237
+ # resp.delete_marker #=> Boolean
6238
+ # resp.last_modified #=> Time
6239
+ # resp.version_id #=> String
6240
+ # resp.request_charged #=> String, one of "requester"
6241
+ # resp.etag #=> String
6242
+ # resp.checksum.checksum_crc32 #=> String
6243
+ # resp.checksum.checksum_crc32c #=> String
6244
+ # resp.checksum.checksum_sha1 #=> String
6245
+ # resp.checksum.checksum_sha256 #=> String
6246
+ # resp.object_parts.total_parts_count #=> Integer
6247
+ # resp.object_parts.part_number_marker #=> Integer
6248
+ # resp.object_parts.next_part_number_marker #=> Integer
6249
+ # resp.object_parts.max_parts #=> Integer
6250
+ # resp.object_parts.is_truncated #=> Boolean
6251
+ # resp.object_parts.parts #=> Array
6252
+ # resp.object_parts.parts[0].part_number #=> Integer
6253
+ # resp.object_parts.parts[0].size #=> Integer
6254
+ # resp.object_parts.parts[0].checksum_crc32 #=> String
6255
+ # resp.object_parts.parts[0].checksum_crc32c #=> String
6256
+ # resp.object_parts.parts[0].checksum_sha1 #=> String
6257
+ # resp.object_parts.parts[0].checksum_sha256 #=> String
6258
+ # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
6259
+ # resp.object_size #=> Integer
6260
+ #
6261
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectAttributes AWS API Documentation
6262
+ #
6263
+ # @overload get_object_attributes(params = {})
6264
+ # @param [Hash] params ({})
6265
+ def get_object_attributes(params = {}, options = {})
6266
+ req = build_request(:get_object_attributes, params)
6267
+ req.send_request(options)
6268
+ end
6269
+
6270
+ # Gets an object's current legal hold status. For more information, see
5846
6271
  # [Locking Objects][1].
5847
6272
  #
5848
6273
  # This action is not supported by Amazon S3 on Outposts.
5849
6274
  #
6275
+ # The following action is related to `GetObjectLegalHold`\:
6276
+ #
6277
+ # * [GetObjectAttributes][2]
6278
+ #
6279
+ # ^
6280
+ #
5850
6281
  #
5851
6282
  #
5852
6283
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
6284
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
5853
6285
  #
5854
6286
  # @option params [required, String] :bucket
5855
- # The bucket name containing the object whose Legal Hold status you want
6287
+ # The bucket name containing the object whose legal hold status you want
5856
6288
  # to retrieve.
5857
6289
  #
5858
6290
  # When using this action with an access point, you must direct requests
@@ -5868,18 +6300,18 @@ module Aws::S3
5868
6300
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
5869
6301
  #
5870
6302
  # @option params [required, String] :key
5871
- # The key name for the object whose Legal Hold status you want to
6303
+ # The key name for the object whose legal hold status you want to
5872
6304
  # retrieve.
5873
6305
  #
5874
6306
  # @option params [String] :version_id
5875
- # The version ID of the object whose Legal Hold status you want to
6307
+ # The version ID of the object whose legal hold status you want to
5876
6308
  # retrieve.
5877
6309
  #
5878
6310
  # @option params [String] :request_payer
5879
6311
  # Confirms that the requester knows that they will be charged for the
5880
6312
  # request. Bucket owners need not specify this parameter in their
5881
- # requests. For information about downloading objects from requester
5882
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
6313
+ # requests. For information about downloading objects from Requester
6314
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
5883
6315
  # in the *Amazon S3 User Guide*.
5884
6316
  #
5885
6317
  #
@@ -5888,8 +6320,8 @@ module Aws::S3
5888
6320
  #
5889
6321
  # @option params [String] :expected_bucket_owner
5890
6322
  # The account ID of the expected bucket owner. If the bucket is owned by
5891
- # a different account, the request will fail with an HTTP `403 (Access
5892
- # Denied)` error.
6323
+ # a different account, the request fails with the HTTP status code `403
6324
+ # Forbidden` (access denied).
5893
6325
  #
5894
6326
  # @return [Types::GetObjectLegalHoldOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5895
6327
  #
@@ -5923,9 +6355,16 @@ module Aws::S3
5923
6355
  # object placed in the specified bucket. For more information, see
5924
6356
  # [Locking Objects][1].
5925
6357
  #
6358
+ # The following action is related to `GetObjectLockConfiguration`\:
6359
+ #
6360
+ # * [GetObjectAttributes][2]
6361
+ #
6362
+ # ^
6363
+ #
5926
6364
  #
5927
6365
  #
5928
6366
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
6367
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
5929
6368
  #
5930
6369
  # @option params [required, String] :bucket
5931
6370
  # The bucket whose Object Lock configuration you want to retrieve.
@@ -5944,8 +6383,8 @@ module Aws::S3
5944
6383
  #
5945
6384
  # @option params [String] :expected_bucket_owner
5946
6385
  # The account ID of the expected bucket owner. If the bucket is owned by
5947
- # a different account, the request will fail with an HTTP `403 (Access
5948
- # Denied)` error.
6386
+ # a different account, the request fails with the HTTP status code `403
6387
+ # Forbidden` (access denied).
5949
6388
  #
5950
6389
  # @return [Types::GetObjectLockConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5951
6390
  #
@@ -5979,9 +6418,16 @@ module Aws::S3
5979
6418
  #
5980
6419
  # This action is not supported by Amazon S3 on Outposts.
5981
6420
  #
6421
+ # The following action is related to `GetObjectRetention`\:
6422
+ #
6423
+ # * [GetObjectAttributes][2]
6424
+ #
6425
+ # ^
6426
+ #
5982
6427
  #
5983
6428
  #
5984
6429
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
6430
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
5985
6431
  #
5986
6432
  # @option params [required, String] :bucket
5987
6433
  # The bucket name containing the object whose retention settings you
@@ -6010,8 +6456,8 @@ module Aws::S3
6010
6456
  # @option params [String] :request_payer
6011
6457
  # Confirms that the requester knows that they will be charged for the
6012
6458
  # request. Bucket owners need not specify this parameter in their
6013
- # requests. For information about downloading objects from requester
6014
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
6459
+ # requests. For information about downloading objects from Requester
6460
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
6015
6461
  # in the *Amazon S3 User Guide*.
6016
6462
  #
6017
6463
  #
@@ -6020,8 +6466,8 @@ module Aws::S3
6020
6466
  #
6021
6467
  # @option params [String] :expected_bucket_owner
6022
6468
  # The account ID of the expected bucket owner. If the bucket is owned by
6023
- # a different account, the request will fail with an HTTP `403 (Access
6024
- # Denied)` error.
6469
+ # a different account, the request fails with the HTTP status code `403
6470
+ # Forbidden` (access denied).
6025
6471
  #
6026
6472
  # @return [Types::GetObjectRetentionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6027
6473
  #
@@ -6067,17 +6513,20 @@ module Aws::S3
6067
6513
  # For information about the Amazon S3 object tagging feature, see
6068
6514
  # [Object Tagging][1].
6069
6515
  #
6070
- # The following action is related to `GetObjectTagging`\:
6516
+ # The following actions are related to `GetObjectTagging`\:
6071
6517
  #
6072
- # * [PutObjectTagging][2]
6518
+ # * [DeleteObjectTagging][2]
6073
6519
  #
6074
- # * [DeleteObjectTagging][3]
6520
+ # * [GetObjectAttributes][3]
6521
+ #
6522
+ # * [PutObjectTagging][4]
6075
6523
  #
6076
6524
  #
6077
6525
  #
6078
6526
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html
6079
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html
6080
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html
6527
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html
6528
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
6529
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html
6081
6530
  #
6082
6531
  # @option params [required, String] :bucket
6083
6532
  # The bucket name containing the object for which to get the tagging
@@ -6093,12 +6542,12 @@ module Aws::S3
6093
6542
  #
6094
6543
  # When using this action with Amazon S3 on Outposts, you must direct
6095
6544
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6096
- # takes the form
6097
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
6098
- # When using this action using S3 on Outposts through the Amazon Web
6545
+ # takes the form `
6546
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
6547
+ # When using this action with S3 on Outposts through the Amazon Web
6099
6548
  # Services SDKs, you provide the Outposts bucket ARN in place of the
6100
6549
  # bucket name. For more information about S3 on Outposts ARNs, see
6101
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
6550
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
6102
6551
  #
6103
6552
  #
6104
6553
  #
@@ -6113,14 +6562,14 @@ module Aws::S3
6113
6562
  #
6114
6563
  # @option params [String] :expected_bucket_owner
6115
6564
  # The account ID of the expected bucket owner. If the bucket is owned by
6116
- # a different account, the request will fail with an HTTP `403 (Access
6117
- # Denied)` error.
6565
+ # a different account, the request fails with the HTTP status code `403
6566
+ # Forbidden` (access denied).
6118
6567
  #
6119
6568
  # @option params [String] :request_payer
6120
6569
  # Confirms that the requester knows that they will be charged for the
6121
6570
  # request. Bucket owners need not specify this parameter in their
6122
- # requests. For information about downloading objects from requester
6123
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
6571
+ # requests. For information about downloading objects from Requester
6572
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
6124
6573
  # in the *Amazon S3 User Guide*.
6125
6574
  #
6126
6575
  #
@@ -6133,27 +6582,6 @@ module Aws::S3
6133
6582
  # * {Types::GetObjectTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
6134
6583
  #
6135
6584
  #
6136
- # @example Example: To retrieve tag set of a specific object version
6137
- #
6138
- # # The following example retrieves tag set of an object. The request specifies object version.
6139
- #
6140
- # resp = client.get_object_tagging({
6141
- # bucket: "examplebucket",
6142
- # key: "exampleobject",
6143
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6144
- # })
6145
- #
6146
- # resp.to_h outputs the following:
6147
- # {
6148
- # tag_set: [
6149
- # {
6150
- # key: "Key1",
6151
- # value: "Value1",
6152
- # },
6153
- # ],
6154
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6155
- # }
6156
- #
6157
6585
  # @example Example: To retrieve tag set of an object
6158
6586
  #
6159
6587
  # # The following example retrieves tag set of an object.
@@ -6178,12 +6606,33 @@ module Aws::S3
6178
6606
  # version_id: "null",
6179
6607
  # }
6180
6608
  #
6181
- # @example Request syntax with placeholder values
6609
+ # @example Example: To retrieve tag set of a specific object version
6610
+ #
6611
+ # # The following example retrieves tag set of an object. The request specifies object version.
6182
6612
  #
6183
6613
  # resp = client.get_object_tagging({
6184
- # bucket: "BucketName", # required
6185
- # key: "ObjectKey", # required
6186
- # version_id: "ObjectVersionId",
6614
+ # bucket: "examplebucket",
6615
+ # key: "exampleobject",
6616
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6617
+ # })
6618
+ #
6619
+ # resp.to_h outputs the following:
6620
+ # {
6621
+ # tag_set: [
6622
+ # {
6623
+ # key: "Key1",
6624
+ # value: "Value1",
6625
+ # },
6626
+ # ],
6627
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6628
+ # }
6629
+ #
6630
+ # @example Request syntax with placeholder values
6631
+ #
6632
+ # resp = client.get_object_tagging({
6633
+ # bucket: "BucketName", # required
6634
+ # key: "ObjectKey", # required
6635
+ # version_id: "ObjectVersionId",
6187
6636
  # expected_bucket_owner: "AccountId",
6188
6637
  # request_payer: "requester", # accepts requester
6189
6638
  # })
@@ -6242,8 +6691,8 @@ module Aws::S3
6242
6691
  # @option params [String] :request_payer
6243
6692
  # Confirms that the requester knows that they will be charged for the
6244
6693
  # request. Bucket owners need not specify this parameter in their
6245
- # requests. For information about downloading objects from requester
6246
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
6694
+ # requests. For information about downloading objects from Requester
6695
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
6247
6696
  # in the *Amazon S3 User Guide*.
6248
6697
  #
6249
6698
  #
@@ -6252,8 +6701,8 @@ module Aws::S3
6252
6701
  #
6253
6702
  # @option params [String] :expected_bucket_owner
6254
6703
  # The account ID of the expected bucket owner. If the bucket is owned by
6255
- # a different account, the request will fail with an HTTP `403 (Access
6256
- # Denied)` error.
6704
+ # a different account, the request fails with the HTTP status code `403
6705
+ # Forbidden` (access denied).
6257
6706
  #
6258
6707
  # @return [Types::GetObjectTorrentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6259
6708
  #
@@ -6338,8 +6787,8 @@ module Aws::S3
6338
6787
  #
6339
6788
  # @option params [String] :expected_bucket_owner
6340
6789
  # The account ID of the expected bucket owner. If the bucket is owned by
6341
- # a different account, the request will fail with an HTTP `403 (Access
6342
- # Denied)` error.
6790
+ # a different account, the request fails with the HTTP status code `403
6791
+ # Forbidden` (access denied).
6343
6792
  #
6344
6793
  # @return [Types::GetPublicAccessBlockOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6345
6794
  #
@@ -6411,12 +6860,12 @@ module Aws::S3
6411
6860
  #
6412
6861
  # When using this action with Amazon S3 on Outposts, you must direct
6413
6862
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6414
- # takes the form
6415
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
6416
- # When using this action using S3 on Outposts through the Amazon Web
6863
+ # takes the form `
6864
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
6865
+ # When using this action with S3 on Outposts through the Amazon Web
6417
6866
  # Services SDKs, you provide the Outposts bucket ARN in place of the
6418
6867
  # bucket name. For more information about S3 on Outposts ARNs, see
6419
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
6868
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
6420
6869
  #
6421
6870
  #
6422
6871
  #
@@ -6425,8 +6874,8 @@ module Aws::S3
6425
6874
  #
6426
6875
  # @option params [String] :expected_bucket_owner
6427
6876
  # The account ID of the expected bucket owner. If the bucket is owned by
6428
- # a different account, the request will fail with an HTTP `403 (Access
6429
- # Denied)` error.
6877
+ # a different account, the request fails with the HTTP status code `403
6878
+ # Forbidden` (access denied).
6430
6879
  #
6431
6880
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6432
6881
  #
@@ -6537,11 +6986,11 @@ module Aws::S3
6537
6986
  # * If you don’t have the `s3:ListBucket` permission, Amazon S3 returns
6538
6987
  # an HTTP status code 403 ("access denied") error.
6539
6988
  #
6540
- # The following action is related to `HeadObject`\:
6989
+ # The following actions are related to `HeadObject`\:
6541
6990
  #
6542
6991
  # * [GetObject][5]
6543
6992
  #
6544
- # ^
6993
+ # * [GetObjectAttributes][6]
6545
6994
  #
6546
6995
  #
6547
6996
  #
@@ -6550,6 +6999,7 @@ module Aws::S3
6550
6999
  # [3]: https://tools.ietf.org/html/rfc7232
6551
7000
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
6552
7001
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
7002
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
6553
7003
  #
6554
7004
  # @option params [required, String] :bucket
6555
7005
  # The name of the bucket containing the object.
@@ -6564,12 +7014,12 @@ module Aws::S3
6564
7014
  #
6565
7015
  # When using this action with Amazon S3 on Outposts, you must direct
6566
7016
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6567
- # takes the form
6568
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
6569
- # When using this action using S3 on Outposts through the Amazon Web
7017
+ # takes the form `
7018
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
7019
+ # When using this action with S3 on Outposts through the Amazon Web
6570
7020
  # Services SDKs, you provide the Outposts bucket ARN in place of the
6571
7021
  # bucket name. For more information about S3 on Outposts ARNs, see
6572
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
7022
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
6573
7023
  #
6574
7024
  #
6575
7025
  #
@@ -6578,36 +7028,26 @@ module Aws::S3
6578
7028
  #
6579
7029
  # @option params [String] :if_match
6580
7030
  # Return the object only if its entity tag (ETag) is the same as the one
6581
- # specified, otherwise return a 412 (precondition failed).
7031
+ # specified; otherwise, return a 412 (precondition failed) error.
6582
7032
  #
6583
7033
  # @option params [Time,DateTime,Date,Integer,String] :if_modified_since
6584
7034
  # Return the object only if it has been modified since the specified
6585
- # time, otherwise return a 304 (not modified).
7035
+ # time; otherwise, return a 304 (not modified) error.
6586
7036
  #
6587
7037
  # @option params [String] :if_none_match
6588
7038
  # Return the object only if its entity tag (ETag) is different from the
6589
- # one specified, otherwise return a 304 (not modified).
7039
+ # one specified; otherwise, return a 304 (not modified) error.
6590
7040
  #
6591
7041
  # @option params [Time,DateTime,Date,Integer,String] :if_unmodified_since
6592
7042
  # Return the object only if it has not been modified since the specified
6593
- # time, otherwise return a 412 (precondition failed).
7043
+ # time; otherwise, return a 412 (precondition failed) error.
6594
7044
  #
6595
7045
  # @option params [required, String] :key
6596
7046
  # The object key.
6597
7047
  #
6598
7048
  # @option params [String] :range
6599
- # Downloads the specified range bytes of an object. For more information
6600
- # about the HTTP Range header, see
6601
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35][1].
6602
- #
6603
- # <note markdown="1"> Amazon S3 doesn't support retrieving multiple ranges of data per
6604
- # `GET` request.
6605
- #
6606
- # </note>
6607
- #
6608
- #
6609
- #
6610
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
7049
+ # Because `HeadObject` returns only the metadata for an object, this
7050
+ # parameter has no effect.
6611
7051
  #
6612
7052
  # @option params [String] :version_id
6613
7053
  # VersionId used to reference a specific version of the object.
@@ -6631,8 +7071,8 @@ module Aws::S3
6631
7071
  # @option params [String] :request_payer
6632
7072
  # Confirms that the requester knows that they will be charged for the
6633
7073
  # request. Bucket owners need not specify this parameter in their
6634
- # requests. For information about downloading objects from requester
6635
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
7074
+ # requests. For information about downloading objects from Requester
7075
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
6636
7076
  # in the *Amazon S3 User Guide*.
6637
7077
  #
6638
7078
  #
@@ -6647,8 +7087,16 @@ module Aws::S3
6647
7087
  #
6648
7088
  # @option params [String] :expected_bucket_owner
6649
7089
  # The account ID of the expected bucket owner. If the bucket is owned by
6650
- # a different account, the request will fail with an HTTP `403 (Access
6651
- # Denied)` error.
7090
+ # a different account, the request fails with the HTTP status code `403
7091
+ # Forbidden` (access denied).
7092
+ #
7093
+ # @option params [String] :checksum_mode
7094
+ # To retrieve the checksum, this parameter must be enabled.
7095
+ #
7096
+ # In addition, if you enable `ChecksumMode` and the object is encrypted
7097
+ # with Amazon Web Services Key Management Service (Amazon Web Services
7098
+ # KMS), you must have permission to use the `kms:Decrypt` action for the
7099
+ # request to succeed.
6652
7100
  #
6653
7101
  # @return [Types::HeadObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6654
7102
  #
@@ -6659,6 +7107,10 @@ module Aws::S3
6659
7107
  # * {Types::HeadObjectOutput#archive_status #archive_status} => String
6660
7108
  # * {Types::HeadObjectOutput#last_modified #last_modified} => Time
6661
7109
  # * {Types::HeadObjectOutput#content_length #content_length} => Integer
7110
+ # * {Types::HeadObjectOutput#checksum_crc32 #checksum_crc32} => String
7111
+ # * {Types::HeadObjectOutput#checksum_crc32c #checksum_crc32c} => String
7112
+ # * {Types::HeadObjectOutput#checksum_sha1 #checksum_sha1} => String
7113
+ # * {Types::HeadObjectOutput#checksum_sha256 #checksum_sha256} => String
6662
7114
  # * {Types::HeadObjectOutput#etag #etag} => String
6663
7115
  # * {Types::HeadObjectOutput#missing_meta #missing_meta} => Integer
6664
7116
  # * {Types::HeadObjectOutput#version_id #version_id} => String
@@ -6723,6 +7175,7 @@ module Aws::S3
6723
7175
  # request_payer: "requester", # accepts requester
6724
7176
  # part_number: 1,
6725
7177
  # expected_bucket_owner: "AccountId",
7178
+ # checksum_mode: "ENABLED", # accepts ENABLED
6726
7179
  # })
6727
7180
  #
6728
7181
  # @example Response structure
@@ -6734,6 +7187,10 @@ module Aws::S3
6734
7187
  # resp.archive_status #=> String, one of "ARCHIVE_ACCESS", "DEEP_ARCHIVE_ACCESS"
6735
7188
  # resp.last_modified #=> Time
6736
7189
  # resp.content_length #=> Integer
7190
+ # resp.checksum_crc32 #=> String
7191
+ # resp.checksum_crc32c #=> String
7192
+ # resp.checksum_sha1 #=> String
7193
+ # resp.checksum_sha256 #=> String
6737
7194
  # resp.etag #=> String
6738
7195
  # resp.missing_meta #=> Integer
6739
7196
  # resp.version_id #=> String
@@ -6825,8 +7282,8 @@ module Aws::S3
6825
7282
  #
6826
7283
  # @option params [String] :expected_bucket_owner
6827
7284
  # The account ID of the expected bucket owner. If the bucket is owned by
6828
- # a different account, the request will fail with an HTTP `403 (Access
6829
- # Denied)` error.
7285
+ # a different account, the request fails with the HTTP status code `403
7286
+ # Forbidden` (access denied).
6830
7287
  #
6831
7288
  # @return [Types::ListBucketAnalyticsConfigurationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6832
7289
  #
@@ -6915,7 +7372,7 @@ module Aws::S3
6915
7372
  # modify or retrieve.
6916
7373
  #
6917
7374
  # @option params [String] :continuation_token
6918
- # The ContinuationToken that represents a placeholder from where this
7375
+ # The `ContinuationToken` that represents a placeholder from where this
6919
7376
  # request should begin.
6920
7377
  #
6921
7378
  # @return [Types::ListBucketIntelligentTieringConfigurationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -7012,8 +7469,8 @@ module Aws::S3
7012
7469
  #
7013
7470
  # @option params [String] :expected_bucket_owner
7014
7471
  # The account ID of the expected bucket owner. If the bucket is owned by
7015
- # a different account, the request will fail with an HTTP `403 (Access
7016
- # Denied)` error.
7472
+ # a different account, the request fails with the HTTP status code `403
7473
+ # Forbidden` (access denied).
7017
7474
  #
7018
7475
  # @return [Types::ListBucketInventoryConfigurationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7019
7476
  #
@@ -7044,7 +7501,7 @@ module Aws::S3
7044
7501
  # resp.inventory_configuration_list[0].id #=> String
7045
7502
  # resp.inventory_configuration_list[0].included_object_versions #=> String, one of "All", "Current"
7046
7503
  # resp.inventory_configuration_list[0].optional_fields #=> Array
7047
- # resp.inventory_configuration_list[0].optional_fields[0] #=> String, one of "Size", "LastModifiedDate", "StorageClass", "ETag", "IsMultipartUploaded", "ReplicationStatus", "EncryptionStatus", "ObjectLockRetainUntilDate", "ObjectLockMode", "ObjectLockLegalHoldStatus", "IntelligentTieringAccessTier", "BucketKeyStatus"
7504
+ # resp.inventory_configuration_list[0].optional_fields[0] #=> String, one of "Size", "LastModifiedDate", "StorageClass", "ETag", "IsMultipartUploaded", "ReplicationStatus", "EncryptionStatus", "ObjectLockRetainUntilDate", "ObjectLockMode", "ObjectLockLegalHoldStatus", "IntelligentTieringAccessTier", "BucketKeyStatus", "ChecksumAlgorithm"
7048
7505
  # resp.inventory_configuration_list[0].schedule.frequency #=> String, one of "Daily", "Weekly"
7049
7506
  # resp.is_truncated #=> Boolean
7050
7507
  # resp.next_continuation_token #=> String
@@ -7112,8 +7569,8 @@ module Aws::S3
7112
7569
  #
7113
7570
  # @option params [String] :expected_bucket_owner
7114
7571
  # The account ID of the expected bucket owner. If the bucket is owned by
7115
- # a different account, the request will fail with an HTTP `403 (Access
7116
- # Denied)` error.
7572
+ # a different account, the request fails with the HTTP status code `403
7573
+ # Forbidden` (access denied).
7117
7574
  #
7118
7575
  # @return [Types::ListBucketMetricsConfigurationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7119
7576
  #
@@ -7157,7 +7614,8 @@ module Aws::S3
7157
7614
  end
7158
7615
 
7159
7616
  # Returns a list of all buckets owned by the authenticated sender of the
7160
- # request.
7617
+ # request. To use this operation, you must have the
7618
+ # `s3:ListAllMyBuckets` permission.
7161
7619
  #
7162
7620
  # @return [Types::ListBucketsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7163
7621
  #
@@ -7274,12 +7732,12 @@ module Aws::S3
7274
7732
  #
7275
7733
  # When using this action with Amazon S3 on Outposts, you must direct
7276
7734
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
7277
- # takes the form
7278
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
7279
- # When using this action using S3 on Outposts through the Amazon Web
7735
+ # takes the form `
7736
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
7737
+ # When using this action with S3 on Outposts through the Amazon Web
7280
7738
  # Services SDKs, you provide the Outposts bucket ARN in place of the
7281
7739
  # bucket name. For more information about S3 on Outposts ARNs, see
7282
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
7740
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
7283
7741
  #
7284
7742
  #
7285
7743
  #
@@ -7338,8 +7796,8 @@ module Aws::S3
7338
7796
  #
7339
7797
  # @option params [String] :expected_bucket_owner
7340
7798
  # The account ID of the expected bucket owner. If the bucket is owned by
7341
- # a different account, the request will fail with an HTTP `403 (Access
7342
- # Denied)` error.
7799
+ # a different account, the request fails with the HTTP status code `403
7800
+ # Forbidden` (access denied).
7343
7801
  #
7344
7802
  # @return [Types::ListMultipartUploadsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7345
7803
  #
@@ -7359,97 +7817,97 @@ module Aws::S3
7359
7817
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7360
7818
  #
7361
7819
  #
7362
- # @example Example: To list in-progress multipart uploads on a bucket
7820
+ # @example Example: List next set of multipart uploads when previous result is truncated
7363
7821
  #
7364
- # # The following example lists in-progress multipart uploads on a specific bucket.
7822
+ # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
7823
+ # # setup of multipart uploads.
7365
7824
  #
7366
7825
  # resp = client.list_multipart_uploads({
7367
7826
  # bucket: "examplebucket",
7827
+ # key_marker: "nextkeyfrompreviousresponse",
7828
+ # max_uploads: 2,
7829
+ # upload_id_marker: "valuefrompreviousresponse",
7368
7830
  # })
7369
7831
  #
7370
7832
  # resp.to_h outputs the following:
7371
7833
  # {
7834
+ # bucket: "acl1",
7835
+ # is_truncated: true,
7836
+ # key_marker: "",
7837
+ # max_uploads: 2,
7838
+ # next_key_marker: "someobjectkey",
7839
+ # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7840
+ # upload_id_marker: "",
7372
7841
  # uploads: [
7373
7842
  # {
7374
7843
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
7375
7844
  # initiator: {
7376
- # display_name: "display-name",
7845
+ # display_name: "ownder-display-name",
7377
7846
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7378
7847
  # },
7379
7848
  # key: "JavaFile",
7380
7849
  # owner: {
7381
- # display_name: "display-name",
7382
- # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7850
+ # display_name: "mohanataws",
7851
+ # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7383
7852
  # },
7384
7853
  # storage_class: "STANDARD",
7385
- # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7854
+ # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7386
7855
  # },
7387
7856
  # {
7388
7857
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
7389
7858
  # initiator: {
7390
- # display_name: "display-name",
7859
+ # display_name: "ownder-display-name",
7391
7860
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7392
7861
  # },
7393
7862
  # key: "JavaFile",
7394
7863
  # owner: {
7395
- # display_name: "display-name",
7864
+ # display_name: "ownder-display-name",
7396
7865
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7397
7866
  # },
7398
7867
  # storage_class: "STANDARD",
7399
- # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7868
+ # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7400
7869
  # },
7401
7870
  # ],
7402
7871
  # }
7403
7872
  #
7404
- # @example Example: List next set of multipart uploads when previous result is truncated
7873
+ # @example Example: To list in-progress multipart uploads on a bucket
7405
7874
  #
7406
- # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
7407
- # # setup of multipart uploads.
7875
+ # # The following example lists in-progress multipart uploads on a specific bucket.
7408
7876
  #
7409
7877
  # resp = client.list_multipart_uploads({
7410
7878
  # bucket: "examplebucket",
7411
- # key_marker: "nextkeyfrompreviousresponse",
7412
- # max_uploads: 2,
7413
- # upload_id_marker: "valuefrompreviousresponse",
7414
7879
  # })
7415
7880
  #
7416
7881
  # resp.to_h outputs the following:
7417
7882
  # {
7418
- # bucket: "acl1",
7419
- # is_truncated: true,
7420
- # key_marker: "",
7421
- # max_uploads: 2,
7422
- # next_key_marker: "someobjectkey",
7423
- # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7424
- # upload_id_marker: "",
7425
7883
  # uploads: [
7426
7884
  # {
7427
7885
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
7428
7886
  # initiator: {
7429
- # display_name: "ownder-display-name",
7887
+ # display_name: "display-name",
7430
7888
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7431
7889
  # },
7432
7890
  # key: "JavaFile",
7433
7891
  # owner: {
7434
- # display_name: "mohanataws",
7435
- # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7892
+ # display_name: "display-name",
7893
+ # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7436
7894
  # },
7437
7895
  # storage_class: "STANDARD",
7438
- # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7896
+ # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7439
7897
  # },
7440
7898
  # {
7441
7899
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
7442
7900
  # initiator: {
7443
- # display_name: "ownder-display-name",
7901
+ # display_name: "display-name",
7444
7902
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7445
7903
  # },
7446
7904
  # key: "JavaFile",
7447
7905
  # owner: {
7448
- # display_name: "ownder-display-name",
7906
+ # display_name: "display-name",
7449
7907
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7450
7908
  # },
7451
7909
  # storage_class: "STANDARD",
7452
- # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7910
+ # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7453
7911
  # },
7454
7912
  # ],
7455
7913
  # }
@@ -7487,6 +7945,7 @@ module Aws::S3
7487
7945
  # resp.uploads[0].owner.id #=> String
7488
7946
  # resp.uploads[0].initiator.id #=> String
7489
7947
  # resp.uploads[0].initiator.display_name #=> String
7948
+ # resp.uploads[0].checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
7490
7949
  # resp.common_prefixes #=> Array
7491
7950
  # resp.common_prefixes[0].prefix #=> String
7492
7951
  # resp.encoding_type #=> String, one of "url"
@@ -7577,8 +8036,8 @@ module Aws::S3
7577
8036
  #
7578
8037
  # @option params [String] :expected_bucket_owner
7579
8038
  # The account ID of the expected bucket owner. If the bucket is owned by
7580
- # a different account, the request will fail with an HTTP `403 (Access
7581
- # Denied)` error.
8039
+ # a different account, the request fails with the HTTP status code `403
8040
+ # Forbidden` (access denied).
7582
8041
  #
7583
8042
  # @return [Types::ListObjectVersionsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7584
8043
  #
@@ -7664,6 +8123,8 @@ module Aws::S3
7664
8123
  # resp.next_version_id_marker #=> String
7665
8124
  # resp.versions #=> Array
7666
8125
  # resp.versions[0].etag #=> String
8126
+ # resp.versions[0].checksum_algorithm #=> Array
8127
+ # resp.versions[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
7667
8128
  # resp.versions[0].size #=> Integer
7668
8129
  # resp.versions[0].storage_class #=> String, one of "STANDARD"
7669
8130
  # resp.versions[0].key #=> String
@@ -7739,12 +8200,12 @@ module Aws::S3
7739
8200
  #
7740
8201
  # When using this action with Amazon S3 on Outposts, you must direct
7741
8202
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
7742
- # takes the form
7743
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
7744
- # When using this action using S3 on Outposts through the Amazon Web
8203
+ # takes the form `
8204
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8205
+ # When using this action with S3 on Outposts through the Amazon Web
7745
8206
  # Services SDKs, you provide the Outposts bucket ARN in place of the
7746
8207
  # bucket name. For more information about S3 on Outposts ARNs, see
7747
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
8208
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
7748
8209
  #
7749
8210
  #
7750
8211
  #
@@ -7782,8 +8243,8 @@ module Aws::S3
7782
8243
  #
7783
8244
  # @option params [String] :expected_bucket_owner
7784
8245
  # The account ID of the expected bucket owner. If the bucket is owned by
7785
- # a different account, the request will fail with an HTTP `403 (Access
7786
- # Denied)` error.
8246
+ # a different account, the request fails with the HTTP status code `403
8247
+ # Forbidden` (access denied).
7787
8248
  #
7788
8249
  # @return [Types::ListObjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7789
8250
  #
@@ -7861,6 +8322,8 @@ module Aws::S3
7861
8322
  # resp.contents[0].key #=> String
7862
8323
  # resp.contents[0].last_modified #=> Time
7863
8324
  # resp.contents[0].etag #=> String
8325
+ # resp.contents[0].checksum_algorithm #=> Array
8326
+ # resp.contents[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
7864
8327
  # resp.contents[0].size #=> Integer
7865
8328
  # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
7866
8329
  # resp.contents[0].owner.display_name #=> String
@@ -7939,12 +8402,12 @@ module Aws::S3
7939
8402
  #
7940
8403
  # When using this action with Amazon S3 on Outposts, you must direct
7941
8404
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
7942
- # takes the form
7943
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
7944
- # When using this action using S3 on Outposts through the Amazon Web
8405
+ # takes the form `
8406
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8407
+ # When using this action with S3 on Outposts through the Amazon Web
7945
8408
  # Services SDKs, you provide the Outposts bucket ARN in place of the
7946
8409
  # bucket name. For more information about S3 on Outposts ARNs, see
7947
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
8410
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
7948
8411
  #
7949
8412
  #
7950
8413
  #
@@ -7987,8 +8450,8 @@ module Aws::S3
7987
8450
  #
7988
8451
  # @option params [String] :expected_bucket_owner
7989
8452
  # The account ID of the expected bucket owner. If the bucket is owned by
7990
- # a different account, the request will fail with an HTTP `403 (Access
7991
- # Denied)` error.
8453
+ # a different account, the request fails with the HTTP status code `403
8454
+ # Forbidden` (access denied).
7992
8455
  #
7993
8456
  # @return [Types::ListObjectsV2Output] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7994
8457
  #
@@ -8066,6 +8529,8 @@ module Aws::S3
8066
8529
  # resp.contents[0].key #=> String
8067
8530
  # resp.contents[0].last_modified #=> Time
8068
8531
  # resp.contents[0].etag #=> String
8532
+ # resp.contents[0].checksum_algorithm #=> Array
8533
+ # resp.contents[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
8069
8534
  # resp.contents[0].size #=> Integer
8070
8535
  # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
8071
8536
  # resp.contents[0].owner.display_name #=> String
@@ -8104,6 +8569,10 @@ module Aws::S3
8104
8569
  # query string parameter and set its value to the `NextPartNumberMarker`
8105
8570
  # field value from the previous response.
8106
8571
  #
8572
+ # If the upload was created using a checksum algorithm, you will need to
8573
+ # have permission to the `kms:Decrypt` action for the request to
8574
+ # succeed.
8575
+ #
8107
8576
  # For more information on multipart uploads, see [Uploading Objects
8108
8577
  # Using Multipart Upload][2].
8109
8578
  #
@@ -8120,7 +8589,9 @@ module Aws::S3
8120
8589
  #
8121
8590
  # * [AbortMultipartUpload][6]
8122
8591
  #
8123
- # * [ListMultipartUploads][7]
8592
+ # * [GetObjectAttributes][7]
8593
+ #
8594
+ # * [ListMultipartUploads][8]
8124
8595
  #
8125
8596
  #
8126
8597
  #
@@ -8130,7 +8601,8 @@ module Aws::S3
8130
8601
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
8131
8602
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
8132
8603
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
8133
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
8604
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
8605
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
8134
8606
  #
8135
8607
  # @option params [required, String] :bucket
8136
8608
  # The name of the bucket to which the parts are being uploaded.
@@ -8145,12 +8617,12 @@ module Aws::S3
8145
8617
  #
8146
8618
  # When using this action with Amazon S3 on Outposts, you must direct
8147
8619
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
8148
- # takes the form
8149
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
8150
- # When using this action using S3 on Outposts through the Amazon Web
8620
+ # takes the form `
8621
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8622
+ # When using this action with S3 on Outposts through the Amazon Web
8151
8623
  # Services SDKs, you provide the Outposts bucket ARN in place of the
8152
8624
  # bucket name. For more information about S3 on Outposts ARNs, see
8153
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
8625
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
8154
8626
  #
8155
8627
  #
8156
8628
  #
@@ -8174,8 +8646,8 @@ module Aws::S3
8174
8646
  # @option params [String] :request_payer
8175
8647
  # Confirms that the requester knows that they will be charged for the
8176
8648
  # request. Bucket owners need not specify this parameter in their
8177
- # requests. For information about downloading objects from requester
8178
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
8649
+ # requests. For information about downloading objects from Requester
8650
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
8179
8651
  # in the *Amazon S3 User Guide*.
8180
8652
  #
8181
8653
  #
@@ -8184,8 +8656,38 @@ module Aws::S3
8184
8656
  #
8185
8657
  # @option params [String] :expected_bucket_owner
8186
8658
  # The account ID of the expected bucket owner. If the bucket is owned by
8187
- # a different account, the request will fail with an HTTP `403 (Access
8188
- # Denied)` error.
8659
+ # a different account, the request fails with the HTTP status code `403
8660
+ # Forbidden` (access denied).
8661
+ #
8662
+ # @option params [String] :sse_customer_algorithm
8663
+ # The server-side encryption (SSE) algorithm used to encrypt the object.
8664
+ # This parameter is needed only when the object was created using a
8665
+ # checksum algorithm. For more information, see [Protecting data using
8666
+ # SSE-C keys][1] in the *Amazon S3 User Guide*.
8667
+ #
8668
+ #
8669
+ #
8670
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
8671
+ #
8672
+ # @option params [String] :sse_customer_key
8673
+ # The server-side encryption (SSE) customer managed key. This parameter
8674
+ # is needed only when the object was created using a checksum algorithm.
8675
+ # For more information, see [Protecting data using SSE-C keys][1] in the
8676
+ # *Amazon S3 User Guide*.
8677
+ #
8678
+ #
8679
+ #
8680
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
8681
+ #
8682
+ # @option params [String] :sse_customer_key_md5
8683
+ # The MD5 server-side encryption (SSE) customer managed key. This
8684
+ # parameter is needed only when the object was created using a checksum
8685
+ # algorithm. For more information, see [Protecting data using SSE-C
8686
+ # keys][1] in the *Amazon S3 User Guide*.
8687
+ #
8688
+ #
8689
+ #
8690
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
8189
8691
  #
8190
8692
  # @return [Types::ListPartsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8191
8693
  #
@@ -8203,6 +8705,7 @@ module Aws::S3
8203
8705
  # * {Types::ListPartsOutput#owner #owner} => Types::Owner
8204
8706
  # * {Types::ListPartsOutput#storage_class #storage_class} => String
8205
8707
  # * {Types::ListPartsOutput#request_charged #request_charged} => String
8708
+ # * {Types::ListPartsOutput#checksum_algorithm #checksum_algorithm} => String
8206
8709
  #
8207
8710
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8208
8711
  #
@@ -8254,6 +8757,9 @@ module Aws::S3
8254
8757
  # upload_id: "MultipartUploadId", # required
8255
8758
  # request_payer: "requester", # accepts requester
8256
8759
  # expected_bucket_owner: "AccountId",
8760
+ # sse_customer_algorithm: "SSECustomerAlgorithm",
8761
+ # sse_customer_key: "SSECustomerKey",
8762
+ # sse_customer_key_md5: "SSECustomerKeyMD5",
8257
8763
  # })
8258
8764
  #
8259
8765
  # @example Response structure
@@ -8272,12 +8778,17 @@ module Aws::S3
8272
8778
  # resp.parts[0].last_modified #=> Time
8273
8779
  # resp.parts[0].etag #=> String
8274
8780
  # resp.parts[0].size #=> Integer
8781
+ # resp.parts[0].checksum_crc32 #=> String
8782
+ # resp.parts[0].checksum_crc32c #=> String
8783
+ # resp.parts[0].checksum_sha1 #=> String
8784
+ # resp.parts[0].checksum_sha256 #=> String
8275
8785
  # resp.initiator.id #=> String
8276
8786
  # resp.initiator.display_name #=> String
8277
8787
  # resp.owner.display_name #=> String
8278
8788
  # resp.owner.id #=> String
8279
8789
  # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
8280
8790
  # resp.request_charged #=> String, one of "requester"
8791
+ # resp.checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
8281
8792
  #
8282
8793
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListParts AWS API Documentation
8283
8794
  #
@@ -8293,7 +8804,7 @@ module Aws::S3
8293
8804
  # perform faster data transfers to Amazon S3.
8294
8805
  #
8295
8806
  # To use this operation, you must have permission to perform the
8296
- # s3:PutAccelerateConfiguration action. The bucket owner has this
8807
+ # `s3:PutAccelerateConfiguration` action. The bucket owner has this
8297
8808
  # permission by default. The bucket owner can grant this permission to
8298
8809
  # others. For more information about permissions, see [Permissions
8299
8810
  # Related to Bucket Subresource Operations][1] and [Managing Access
@@ -8342,8 +8853,24 @@ module Aws::S3
8342
8853
  #
8343
8854
  # @option params [String] :expected_bucket_owner
8344
8855
  # The account ID of the expected bucket owner. If the bucket is owned by
8345
- # a different account, the request will fail with an HTTP `403 (Access
8346
- # Denied)` error.
8856
+ # a different account, the request fails with the HTTP status code `403
8857
+ # Forbidden` (access denied).
8858
+ #
8859
+ # @option params [String] :checksum_algorithm
8860
+ # Indicates the algorithm used to create the checksum for the object
8861
+ # when using the SDK. This header will not provide any additional
8862
+ # functionality if not using the SDK. When sending this header, there
8863
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
8864
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
8865
+ # `400 Bad Request`. For more information, see [Checking object
8866
+ # integrity][1] in the *Amazon S3 User Guide*.
8867
+ #
8868
+ # If you provide an individual checksum, Amazon S3 ignores any provided
8869
+ # `ChecksumAlgorithm` parameter.
8870
+ #
8871
+ #
8872
+ #
8873
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
8347
8874
  #
8348
8875
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8349
8876
  #
@@ -8355,6 +8882,7 @@ module Aws::S3
8355
8882
  # status: "Enabled", # accepts Enabled, Suspended
8356
8883
  # },
8357
8884
  # expected_bucket_owner: "AccountId",
8885
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
8358
8886
  # })
8359
8887
  #
8360
8888
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAccelerateConfiguration AWS API Documentation
@@ -8557,6 +9085,22 @@ module Aws::S3
8557
9085
  #
8558
9086
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
8559
9087
  #
9088
+ # @option params [String] :checksum_algorithm
9089
+ # Indicates the algorithm used to create the checksum for the object
9090
+ # when using the SDK. This header will not provide any additional
9091
+ # functionality if not using the SDK. When sending this header, there
9092
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
9093
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
9094
+ # `400 Bad Request`. For more information, see [Checking object
9095
+ # integrity][1] in the *Amazon S3 User Guide*.
9096
+ #
9097
+ # If you provide an individual checksum, Amazon S3 ignores any provided
9098
+ # `ChecksumAlgorithm` parameter.
9099
+ #
9100
+ #
9101
+ #
9102
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
9103
+ #
8560
9104
  # @option params [String] :grant_full_control
8561
9105
  # Allows grantee the read, write, read ACP, and write ACP permissions on
8562
9106
  # the bucket.
@@ -8578,8 +9122,8 @@ module Aws::S3
8578
9122
  #
8579
9123
  # @option params [String] :expected_bucket_owner
8580
9124
  # The account ID of the expected bucket owner. If the bucket is owned by
8581
- # a different account, the request will fail with an HTTP `403 (Access
8582
- # Denied)` error.
9125
+ # a different account, the request fails with the HTTP status code `403
9126
+ # Forbidden` (access denied).
8583
9127
  #
8584
9128
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8585
9129
  #
@@ -8620,6 +9164,7 @@ module Aws::S3
8620
9164
  # },
8621
9165
  # bucket: "BucketName", # required
8622
9166
  # content_md5: "ContentMD5",
9167
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
8623
9168
  # grant_full_control: "GrantFullControl",
8624
9169
  # grant_read: "GrantRead",
8625
9170
  # grant_read_acp: "GrantReadACP",
@@ -8716,8 +9261,8 @@ module Aws::S3
8716
9261
  #
8717
9262
  # @option params [String] :expected_bucket_owner
8718
9263
  # The account ID of the expected bucket owner. If the bucket is owned by
8719
- # a different account, the request will fail with an HTTP `403 (Access
8720
- # Denied)` error.
9264
+ # a different account, the request fails with the HTTP status code `403
9265
+ # Forbidden` (access denied).
8721
9266
  #
8722
9267
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8723
9268
  #
@@ -8848,10 +9393,26 @@ module Aws::S3
8848
9393
  #
8849
9394
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
8850
9395
  #
9396
+ # @option params [String] :checksum_algorithm
9397
+ # Indicates the algorithm used to create the checksum for the object
9398
+ # when using the SDK. This header will not provide any additional
9399
+ # functionality if not using the SDK. When sending this header, there
9400
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
9401
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
9402
+ # `400 Bad Request`. For more information, see [Checking object
9403
+ # integrity][1] in the *Amazon S3 User Guide*.
9404
+ #
9405
+ # If you provide an individual checksum, Amazon S3 ignores any provided
9406
+ # `ChecksumAlgorithm` parameter.
9407
+ #
9408
+ #
9409
+ #
9410
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
9411
+ #
8851
9412
  # @option params [String] :expected_bucket_owner
8852
9413
  # The account ID of the expected bucket owner. If the bucket is owned by
8853
- # a different account, the request will fail with an HTTP `403 (Access
8854
- # Denied)` error.
9414
+ # a different account, the request fails with the HTTP status code `403
9415
+ # Forbidden` (access denied).
8855
9416
  #
8856
9417
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8857
9418
  #
@@ -8916,6 +9477,7 @@ module Aws::S3
8916
9477
  # ],
8917
9478
  # },
8918
9479
  # content_md5: "ContentMD5",
9480
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
8919
9481
  # expected_bucket_owner: "AccountId",
8920
9482
  # })
8921
9483
  #
@@ -8934,8 +9496,11 @@ module Aws::S3
8934
9496
  # Default encryption for a bucket can use server-side encryption with
8935
9497
  # Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). If
8936
9498
  # you specify default encryption using SSE-KMS, you can also configure
8937
- # Amazon S3 Bucket Key. For information about default encryption, see
8938
- # [Amazon S3 default bucket encryption][1] in the *Amazon S3 User
9499
+ # Amazon S3 Bucket Key. When the default encryption is SSE-KMS, if you
9500
+ # upload an object to the bucket and do not specify the KMS key to use
9501
+ # for encryption, Amazon S3 uses the default Amazon Web Services managed
9502
+ # KMS key for your account. For information about default encryption,
9503
+ # see [Amazon S3 default bucket encryption][1] in the *Amazon S3 User
8939
9504
  # Guide*. For more information about S3 Bucket Keys, see [Amazon S3
8940
9505
  # Bucket Keys][2] in the *Amazon S3 User Guide*.
8941
9506
  #
@@ -8986,13 +9551,29 @@ module Aws::S3
8986
9551
  # (CLI) or Amazon Web Services SDKs, this field is calculated
8987
9552
  # automatically.
8988
9553
  #
9554
+ # @option params [String] :checksum_algorithm
9555
+ # Indicates the algorithm used to create the checksum for the object
9556
+ # when using the SDK. This header will not provide any additional
9557
+ # functionality if not using the SDK. When sending this header, there
9558
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
9559
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
9560
+ # `400 Bad Request`. For more information, see [Checking object
9561
+ # integrity][1] in the *Amazon S3 User Guide*.
9562
+ #
9563
+ # If you provide an individual checksum, Amazon S3 ignores any provided
9564
+ # `ChecksumAlgorithm` parameter.
9565
+ #
9566
+ #
9567
+ #
9568
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
9569
+ #
8989
9570
  # @option params [required, Types::ServerSideEncryptionConfiguration] :server_side_encryption_configuration
8990
9571
  # Specifies the default server-side-encryption configuration.
8991
9572
  #
8992
9573
  # @option params [String] :expected_bucket_owner
8993
9574
  # The account ID of the expected bucket owner. If the bucket is owned by
8994
- # a different account, the request will fail with an HTTP `403 (Access
8995
- # Denied)` error.
9575
+ # a different account, the request fails with the HTTP status code `403
9576
+ # Forbidden` (access denied).
8996
9577
  #
8997
9578
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8998
9579
  #
@@ -9001,6 +9582,7 @@ module Aws::S3
9001
9582
  # resp = client.put_bucket_encryption({
9002
9583
  # bucket: "BucketName", # required
9003
9584
  # content_md5: "ContentMD5",
9585
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
9004
9586
  # server_side_encryption_configuration: { # required
9005
9587
  # rules: [ # required
9006
9588
  # {
@@ -9229,8 +9811,8 @@ module Aws::S3
9229
9811
  #
9230
9812
  # @option params [String] :expected_bucket_owner
9231
9813
  # The account ID of the expected bucket owner. If the bucket is owned by
9232
- # a different account, the request will fail with an HTTP `403 (Access
9233
- # Denied)` error.
9814
+ # a different account, the request fails with the HTTP status code `403
9815
+ # Forbidden` (access denied).
9234
9816
  #
9235
9817
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9236
9818
  #
@@ -9261,7 +9843,7 @@ module Aws::S3
9261
9843
  # },
9262
9844
  # id: "InventoryId", # required
9263
9845
  # included_object_versions: "All", # required, accepts All, Current
9264
- # optional_fields: ["Size"], # accepts Size, LastModifiedDate, StorageClass, ETag, IsMultipartUploaded, ReplicationStatus, EncryptionStatus, ObjectLockRetainUntilDate, ObjectLockMode, ObjectLockLegalHoldStatus, IntelligentTieringAccessTier, BucketKeyStatus
9846
+ # optional_fields: ["Size"], # accepts Size, LastModifiedDate, StorageClass, ETag, IsMultipartUploaded, ReplicationStatus, EncryptionStatus, ObjectLockRetainUntilDate, ObjectLockMode, ObjectLockLegalHoldStatus, IntelligentTieringAccessTier, BucketKeyStatus, ChecksumAlgorithm
9265
9847
  # schedule: { # required
9266
9848
  # frequency: "Daily", # required, accepts Daily, Weekly
9267
9849
  # },
@@ -9351,12 +9933,28 @@ module Aws::S3
9351
9933
  # (CLI) or Amazon Web Services SDKs, this field is calculated
9352
9934
  # automatically.
9353
9935
  #
9936
+ # @option params [String] :checksum_algorithm
9937
+ # Indicates the algorithm used to create the checksum for the object
9938
+ # when using the SDK. This header will not provide any additional
9939
+ # functionality if not using the SDK. When sending this header, there
9940
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
9941
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
9942
+ # `400 Bad Request`. For more information, see [Checking object
9943
+ # integrity][1] in the *Amazon S3 User Guide*.
9944
+ #
9945
+ # If you provide an individual checksum, Amazon S3 ignores any provided
9946
+ # `ChecksumAlgorithm` parameter.
9947
+ #
9948
+ #
9949
+ #
9950
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
9951
+ #
9354
9952
  # @option params [Types::LifecycleConfiguration] :lifecycle_configuration
9355
9953
  #
9356
9954
  # @option params [String] :expected_bucket_owner
9357
9955
  # The account ID of the expected bucket owner. If the bucket is owned by
9358
- # a different account, the request will fail with an HTTP `403 (Access
9359
- # Denied)` error.
9956
+ # a different account, the request fails with the HTTP status code `403
9957
+ # Forbidden` (access denied).
9360
9958
  #
9361
9959
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9362
9960
  #
@@ -9365,6 +9963,7 @@ module Aws::S3
9365
9963
  # resp = client.put_bucket_lifecycle({
9366
9964
  # bucket: "BucketName", # required
9367
9965
  # content_md5: "ContentMD5",
9966
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
9368
9967
  # lifecycle_configuration: {
9369
9968
  # rules: [ # required
9370
9969
  # {
@@ -9409,7 +10008,10 @@ module Aws::S3
9409
10008
  end
9410
10009
 
9411
10010
  # Creates a new lifecycle configuration for the bucket or replaces an
9412
- # existing lifecycle configuration. For information about lifecycle
10011
+ # existing lifecycle configuration. Keep in mind that this will
10012
+ # overwrite an existing lifecycle configuration, so if you want to
10013
+ # retain any configuration details, they must be included in the new
10014
+ # lifecycle configuration. For information about lifecycle
9413
10015
  # configuration, see [Managing your storage lifecycle][1].
9414
10016
  #
9415
10017
  # <note markdown="1"> Bucket lifecycle configuration now supports specifying a lifecycle
@@ -9426,7 +10028,9 @@ module Aws::S3
9426
10028
  #
9427
10029
  # You specify the lifecycle configuration in your request body. The
9428
10030
  # lifecycle configuration is specified as XML consisting of one or more
9429
- # rules. Each rule consists of the following:
10031
+ # rules. An Amazon S3 Lifecycle configuration can have up to 1,000
10032
+ # rules. This limit is not adjustable. Each rule consists of the
10033
+ # following:
9430
10034
  #
9431
10035
  # * Filter identifying a subset of objects to which the rule applies.
9432
10036
  # The filter can be based on a key name prefix, object tags, or a
@@ -9453,18 +10057,18 @@ module Aws::S3
9453
10057
  # (that is, the Amazon Web Services account that created it) can access
9454
10058
  # the resource. The resource owner can optionally grant access
9455
10059
  # permissions to others by writing an access policy. For this operation,
9456
- # a user must get the s3:PutLifecycleConfiguration permission.
10060
+ # a user must get the `s3:PutLifecycleConfiguration` permission.
9457
10061
  #
9458
10062
  # You can also explicitly deny permissions. Explicit deny also
9459
10063
  # supersedes any other permissions. If you want to block users or
9460
10064
  # accounts from removing or deleting objects from your bucket, you must
9461
10065
  # deny them permissions for the following actions:
9462
10066
  #
9463
- # * s3:DeleteObject
10067
+ # * `s3:DeleteObject`
9464
10068
  #
9465
- # * s3:DeleteObjectVersion
10069
+ # * `s3:DeleteObjectVersion`
9466
10070
  #
9467
- # * s3:PutLifecycleConfiguration
10071
+ # * `s3:PutLifecycleConfiguration`
9468
10072
  #
9469
10073
  # For more information about permissions, see [Managing Access
9470
10074
  # Permissions to Your Amazon S3 Resources][5].
@@ -9491,13 +10095,29 @@ module Aws::S3
9491
10095
  # @option params [required, String] :bucket
9492
10096
  # The name of the bucket for which to set the configuration.
9493
10097
  #
10098
+ # @option params [String] :checksum_algorithm
10099
+ # Indicates the algorithm used to create the checksum for the object
10100
+ # when using the SDK. This header will not provide any additional
10101
+ # functionality if not using the SDK. When sending this header, there
10102
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
10103
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
10104
+ # `400 Bad Request`. For more information, see [Checking object
10105
+ # integrity][1] in the *Amazon S3 User Guide*.
10106
+ #
10107
+ # If you provide an individual checksum, Amazon S3 ignores any provided
10108
+ # `ChecksumAlgorithm` parameter.
10109
+ #
10110
+ #
10111
+ #
10112
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
10113
+ #
9494
10114
  # @option params [Types::BucketLifecycleConfiguration] :lifecycle_configuration
9495
10115
  # Container for lifecycle rules. You can add as many as 1,000 rules.
9496
10116
  #
9497
10117
  # @option params [String] :expected_bucket_owner
9498
10118
  # The account ID of the expected bucket owner. If the bucket is owned by
9499
- # a different account, the request will fail with an HTTP `403 (Access
9500
- # Denied)` error.
10119
+ # a different account, the request fails with the HTTP status code `403
10120
+ # Forbidden` (access denied).
9501
10121
  #
9502
10122
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9503
10123
  #
@@ -9534,6 +10154,7 @@ module Aws::S3
9534
10154
  #
9535
10155
  # resp = client.put_bucket_lifecycle_configuration({
9536
10156
  # bucket: "BucketName", # required
10157
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
9537
10158
  # lifecycle_configuration: {
9538
10159
  # rules: [ # required
9539
10160
  # {
@@ -9689,10 +10310,26 @@ module Aws::S3
9689
10310
  # (CLI) or Amazon Web Services SDKs, this field is calculated
9690
10311
  # automatically.
9691
10312
  #
10313
+ # @option params [String] :checksum_algorithm
10314
+ # Indicates the algorithm used to create the checksum for the object
10315
+ # when using the SDK. This header will not provide any additional
10316
+ # functionality if not using the SDK. When sending this header, there
10317
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
10318
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
10319
+ # `400 Bad Request`. For more information, see [Checking object
10320
+ # integrity][1] in the *Amazon S3 User Guide*.
10321
+ #
10322
+ # If you provide an individual checksum, Amazon S3 ignores any provided
10323
+ # `ChecksumAlgorithm` parameter.
10324
+ #
10325
+ #
10326
+ #
10327
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
10328
+ #
9692
10329
  # @option params [String] :expected_bucket_owner
9693
10330
  # The account ID of the expected bucket owner. If the bucket is owned by
9694
- # a different account, the request will fail with an HTTP `403 (Access
9695
- # Denied)` error.
10331
+ # a different account, the request fails with the HTTP status code `403
10332
+ # Forbidden` (access denied).
9696
10333
  #
9697
10334
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9698
10335
  #
@@ -9744,6 +10381,7 @@ module Aws::S3
9744
10381
  # },
9745
10382
  # },
9746
10383
  # content_md5: "ContentMD5",
10384
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
9747
10385
  # expected_bucket_owner: "AccountId",
9748
10386
  # })
9749
10387
  #
@@ -9811,8 +10449,8 @@ module Aws::S3
9811
10449
  #
9812
10450
  # @option params [String] :expected_bucket_owner
9813
10451
  # The account ID of the expected bucket owner. If the bucket is owned by
9814
- # a different account, the request will fail with an HTTP `403 (Access
9815
- # Denied)` error.
10452
+ # a different account, the request fails with the HTTP status code `403
10453
+ # Forbidden` (access denied).
9816
10454
  #
9817
10455
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9818
10456
  #
@@ -9871,13 +10509,29 @@ module Aws::S3
9871
10509
  # (CLI) or Amazon Web Services SDKs, this field is calculated
9872
10510
  # automatically.
9873
10511
  #
10512
+ # @option params [String] :checksum_algorithm
10513
+ # Indicates the algorithm used to create the checksum for the object
10514
+ # when using the SDK. This header will not provide any additional
10515
+ # functionality if not using the SDK. When sending this header, there
10516
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
10517
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
10518
+ # `400 Bad Request`. For more information, see [Checking object
10519
+ # integrity][1] in the *Amazon S3 User Guide*.
10520
+ #
10521
+ # If you provide an individual checksum, Amazon S3 ignores any provided
10522
+ # `ChecksumAlgorithm` parameter.
10523
+ #
10524
+ #
10525
+ #
10526
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
10527
+ #
9874
10528
  # @option params [required, Types::NotificationConfigurationDeprecated] :notification_configuration
9875
10529
  # The container for the configuration.
9876
10530
  #
9877
10531
  # @option params [String] :expected_bucket_owner
9878
10532
  # The account ID of the expected bucket owner. If the bucket is owned by
9879
- # a different account, the request will fail with an HTTP `403 (Access
9880
- # Denied)` error.
10533
+ # a different account, the request fails with the HTTP status code `403
10534
+ # Forbidden` (access denied).
9881
10535
  #
9882
10536
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9883
10537
  #
@@ -9886,6 +10540,7 @@ module Aws::S3
9886
10540
  # resp = client.put_bucket_notification({
9887
10541
  # bucket: "BucketName", # required
9888
10542
  # content_md5: "ContentMD5",
10543
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
9889
10544
  # notification_configuration: { # required
9890
10545
  # topic_configuration: {
9891
10546
  # id: "NotificationId",
@@ -9952,6 +10607,10 @@ module Aws::S3
9952
10607
  # You can disable notifications by adding the empty
9953
10608
  # NotificationConfiguration element.
9954
10609
  #
10610
+ # For more information about the number of event notification
10611
+ # configurations that you can create per bucket, see [Amazon S3 service
10612
+ # quotas][2] in *Amazon Web Services General Reference*.
10613
+ #
9955
10614
  # By default, only the bucket owner can configure notifications on a
9956
10615
  # bucket. However, bucket owners can use a bucket policy to grant
9957
10616
  # permission to other users to set this configuration with
@@ -9977,14 +10636,15 @@ module Aws::S3
9977
10636
  # The following action is related to
9978
10637
  # `PutBucketNotificationConfiguration`\:
9979
10638
  #
9980
- # * [GetBucketNotificationConfiguration][2]
10639
+ # * [GetBucketNotificationConfiguration][3]
9981
10640
  #
9982
10641
  # ^
9983
10642
  #
9984
10643
  #
9985
10644
  #
9986
10645
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
9987
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html
10646
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/s3.html#limits_s3
10647
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html
9988
10648
  #
9989
10649
  # @option params [required, String] :bucket
9990
10650
  # The name of the bucket.
@@ -9996,8 +10656,8 @@ module Aws::S3
9996
10656
  #
9997
10657
  # @option params [String] :expected_bucket_owner
9998
10658
  # The account ID of the expected bucket owner. If the bucket is owned by
9999
- # a different account, the request will fail with an HTTP `403 (Access
10000
- # Denied)` error.
10659
+ # a different account, the request fails with the HTTP status code `403
10660
+ # Forbidden` (access denied).
10001
10661
  #
10002
10662
  # @option params [Boolean] :skip_destination_validation
10003
10663
  # Skips validation of Amazon SQS, Amazon SNS, and Lambda destinations.
@@ -10128,8 +10788,8 @@ module Aws::S3
10128
10788
  #
10129
10789
  # @option params [String] :expected_bucket_owner
10130
10790
  # The account ID of the expected bucket owner. If the bucket is owned by
10131
- # a different account, the request will fail with an HTTP `403 (Access
10132
- # Denied)` error.
10791
+ # a different account, the request fails with the HTTP status code `403
10792
+ # Forbidden` (access denied).
10133
10793
  #
10134
10794
  # @option params [required, Types::OwnershipControls] :ownership_controls
10135
10795
  # The `OwnershipControls` (BucketOwnerEnforced, BucketOwnerPreferred, or
@@ -10201,6 +10861,22 @@ module Aws::S3
10201
10861
  # (CLI) or Amazon Web Services SDKs, this field is calculated
10202
10862
  # automatically.
10203
10863
  #
10864
+ # @option params [String] :checksum_algorithm
10865
+ # Indicates the algorithm used to create the checksum for the object
10866
+ # when using the SDK. This header will not provide any additional
10867
+ # functionality if not using the SDK. When sending this header, there
10868
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
10869
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
10870
+ # `400 Bad Request`. For more information, see [Checking object
10871
+ # integrity][1] in the *Amazon S3 User Guide*.
10872
+ #
10873
+ # If you provide an individual checksum, Amazon S3 ignores any provided
10874
+ # `ChecksumAlgorithm` parameter.
10875
+ #
10876
+ #
10877
+ #
10878
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
10879
+ #
10204
10880
  # @option params [Boolean] :confirm_remove_self_bucket_access
10205
10881
  # Set this parameter to true to confirm that you want to remove your
10206
10882
  # permissions to change this bucket policy in the future.
@@ -10210,8 +10886,8 @@ module Aws::S3
10210
10886
  #
10211
10887
  # @option params [String] :expected_bucket_owner
10212
10888
  # The account ID of the expected bucket owner. If the bucket is owned by
10213
- # a different account, the request will fail with an HTTP `403 (Access
10214
- # Denied)` error.
10889
+ # a different account, the request fails with the HTTP status code `403
10890
+ # Forbidden` (access denied).
10215
10891
  #
10216
10892
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10217
10893
  #
@@ -10230,6 +10906,7 @@ module Aws::S3
10230
10906
  # resp = client.put_bucket_policy({
10231
10907
  # bucket: "BucketName", # required
10232
10908
  # content_md5: "ContentMD5",
10909
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
10233
10910
  # confirm_remove_self_bucket_access: false,
10234
10911
  # policy: "Policy", # required
10235
10912
  # expected_bucket_owner: "AccountId",
@@ -10340,6 +11017,22 @@ module Aws::S3
10340
11017
  #
10341
11018
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
10342
11019
  #
11020
+ # @option params [String] :checksum_algorithm
11021
+ # Indicates the algorithm used to create the checksum for the object
11022
+ # when using the SDK. This header will not provide any additional
11023
+ # functionality if not using the SDK. When sending this header, there
11024
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
11025
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
11026
+ # `400 Bad Request`. For more information, see [Checking object
11027
+ # integrity][1] in the *Amazon S3 User Guide*.
11028
+ #
11029
+ # If you provide an individual checksum, Amazon S3 ignores any provided
11030
+ # `ChecksumAlgorithm` parameter.
11031
+ #
11032
+ #
11033
+ #
11034
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11035
+ #
10343
11036
  # @option params [required, Types::ReplicationConfiguration] :replication_configuration
10344
11037
  # A container for replication rules. You can add up to 1,000 rules. The
10345
11038
  # maximum size of a replication configuration is 2 MB.
@@ -10349,8 +11042,8 @@ module Aws::S3
10349
11042
  #
10350
11043
  # @option params [String] :expected_bucket_owner
10351
11044
  # The account ID of the expected bucket owner. If the bucket is owned by
10352
- # a different account, the request will fail with an HTTP `403 (Access
10353
- # Denied)` error.
11045
+ # a different account, the request fails with the HTTP status code `403
11046
+ # Forbidden` (access denied).
10354
11047
  #
10355
11048
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10356
11049
  #
@@ -10381,6 +11074,7 @@ module Aws::S3
10381
11074
  # resp = client.put_bucket_replication({
10382
11075
  # bucket: "BucketName", # required
10383
11076
  # content_md5: "ContentMD5",
11077
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
10384
11078
  # replication_configuration: { # required
10385
11079
  # role: "Role", # required
10386
11080
  # rules: [ # required
@@ -10492,13 +11186,29 @@ module Aws::S3
10492
11186
  #
10493
11187
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
10494
11188
  #
11189
+ # @option params [String] :checksum_algorithm
11190
+ # Indicates the algorithm used to create the checksum for the object
11191
+ # when using the SDK. This header will not provide any additional
11192
+ # functionality if not using the SDK. When sending this header, there
11193
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
11194
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
11195
+ # `400 Bad Request`. For more information, see [Checking object
11196
+ # integrity][1] in the *Amazon S3 User Guide*.
11197
+ #
11198
+ # If you provide an individual checksum, Amazon S3 ignores any provided
11199
+ # `ChecksumAlgorithm` parameter.
11200
+ #
11201
+ #
11202
+ #
11203
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11204
+ #
10495
11205
  # @option params [required, Types::RequestPaymentConfiguration] :request_payment_configuration
10496
11206
  # Container for Payer.
10497
11207
  #
10498
11208
  # @option params [String] :expected_bucket_owner
10499
11209
  # The account ID of the expected bucket owner. If the bucket is owned by
10500
- # a different account, the request will fail with an HTTP `403 (Access
10501
- # Denied)` error.
11210
+ # a different account, the request fails with the HTTP status code `403
11211
+ # Forbidden` (access denied).
10502
11212
  #
10503
11213
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10504
11214
  #
@@ -10519,6 +11229,7 @@ module Aws::S3
10519
11229
  # resp = client.put_bucket_request_payment({
10520
11230
  # bucket: "BucketName", # required
10521
11231
  # content_md5: "ContentMD5",
11232
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
10522
11233
  # request_payment_configuration: { # required
10523
11234
  # payer: "Requester", # required, accepts Requester, BucketOwner
10524
11235
  # },
@@ -10625,13 +11336,29 @@ module Aws::S3
10625
11336
  #
10626
11337
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
10627
11338
  #
11339
+ # @option params [String] :checksum_algorithm
11340
+ # Indicates the algorithm used to create the checksum for the object
11341
+ # when using the SDK. This header will not provide any additional
11342
+ # functionality if not using the SDK. When sending this header, there
11343
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
11344
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
11345
+ # `400 Bad Request`. For more information, see [Checking object
11346
+ # integrity][1] in the *Amazon S3 User Guide*.
11347
+ #
11348
+ # If you provide an individual checksum, Amazon S3 ignores any provided
11349
+ # `ChecksumAlgorithm` parameter.
11350
+ #
11351
+ #
11352
+ #
11353
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11354
+ #
10628
11355
  # @option params [required, Types::Tagging] :tagging
10629
11356
  # Container for the `TagSet` and `Tag` elements.
10630
11357
  #
10631
11358
  # @option params [String] :expected_bucket_owner
10632
11359
  # The account ID of the expected bucket owner. If the bucket is owned by
10633
- # a different account, the request will fail with an HTTP `403 (Access
10634
- # Denied)` error.
11360
+ # a different account, the request fails with the HTTP status code `403
11361
+ # Forbidden` (access denied).
10635
11362
  #
10636
11363
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10637
11364
  #
@@ -10661,6 +11388,7 @@ module Aws::S3
10661
11388
  # resp = client.put_bucket_tagging({
10662
11389
  # bucket: "BucketName", # required
10663
11390
  # content_md5: "ContentMD5",
11391
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
10664
11392
  # tagging: { # required
10665
11393
  # tag_set: [ # required
10666
11394
  # {
@@ -10681,8 +11409,7 @@ module Aws::S3
10681
11409
  req.send_request(options)
10682
11410
  end
10683
11411
 
10684
- # Sets the versioning state of an existing bucket. To set the versioning
10685
- # state, you must be the bucket owner.
11412
+ # Sets the versioning state of an existing bucket.
10686
11413
  #
10687
11414
  # You can set the versioning state with one of the following values:
10688
11415
  #
@@ -10696,8 +11423,9 @@ module Aws::S3
10696
11423
  # versioning state; a [GetBucketVersioning][1] request does not return a
10697
11424
  # versioning state value.
10698
11425
  #
10699
- # If the bucket owner enables MFA Delete in the bucket versioning
10700
- # configuration, the bucket owner must include the `x-amz-mfa request`
11426
+ # In order to enable MFA Delete, you must be the bucket owner. If you
11427
+ # are the bucket owner and want to enable MFA Delete in the bucket
11428
+ # versioning configuration, you must include the `x-amz-mfa request`
10701
11429
  # header and the `Status` and the `MfaDelete` request elements in a
10702
11430
  # request to set the versioning state of the bucket.
10703
11431
  #
@@ -10742,6 +11470,22 @@ module Aws::S3
10742
11470
  #
10743
11471
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
10744
11472
  #
11473
+ # @option params [String] :checksum_algorithm
11474
+ # Indicates the algorithm used to create the checksum for the object
11475
+ # when using the SDK. This header will not provide any additional
11476
+ # functionality if not using the SDK. When sending this header, there
11477
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
11478
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
11479
+ # `400 Bad Request`. For more information, see [Checking object
11480
+ # integrity][1] in the *Amazon S3 User Guide*.
11481
+ #
11482
+ # If you provide an individual checksum, Amazon S3 ignores any provided
11483
+ # `ChecksumAlgorithm` parameter.
11484
+ #
11485
+ #
11486
+ #
11487
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11488
+ #
10745
11489
  # @option params [String] :mfa
10746
11490
  # The concatenation of the authentication device's serial number, a
10747
11491
  # space, and the value that is displayed on your authentication device.
@@ -10751,8 +11495,8 @@ module Aws::S3
10751
11495
  #
10752
11496
  # @option params [String] :expected_bucket_owner
10753
11497
  # The account ID of the expected bucket owner. If the bucket is owned by
10754
- # a different account, the request will fail with an HTTP `403 (Access
10755
- # Denied)` error.
11498
+ # a different account, the request fails with the HTTP status code `403
11499
+ # Forbidden` (access denied).
10756
11500
  #
10757
11501
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10758
11502
  #
@@ -10774,6 +11518,7 @@ module Aws::S3
10774
11518
  # resp = client.put_bucket_versioning({
10775
11519
  # bucket: "BucketName", # required
10776
11520
  # content_md5: "ContentMD5",
11521
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
10777
11522
  # mfa: "MFA",
10778
11523
  # versioning_configuration: { # required
10779
11524
  # mfa_delete: "Enabled", # accepts Enabled, Disabled
@@ -10880,13 +11625,29 @@ module Aws::S3
10880
11625
  #
10881
11626
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
10882
11627
  #
11628
+ # @option params [String] :checksum_algorithm
11629
+ # Indicates the algorithm used to create the checksum for the object
11630
+ # when using the SDK. This header will not provide any additional
11631
+ # functionality if not using the SDK. When sending this header, there
11632
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
11633
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
11634
+ # `400 Bad Request`. For more information, see [Checking object
11635
+ # integrity][1] in the *Amazon S3 User Guide*.
11636
+ #
11637
+ # If you provide an individual checksum, Amazon S3 ignores any provided
11638
+ # `ChecksumAlgorithm` parameter.
11639
+ #
11640
+ #
11641
+ #
11642
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11643
+ #
10883
11644
  # @option params [required, Types::WebsiteConfiguration] :website_configuration
10884
11645
  # Container for the request.
10885
11646
  #
10886
11647
  # @option params [String] :expected_bucket_owner
10887
11648
  # The account ID of the expected bucket owner. If the bucket is owned by
10888
- # a different account, the request will fail with an HTTP `403 (Access
10889
- # Denied)` error.
11649
+ # a different account, the request fails with the HTTP status code `403
11650
+ # Forbidden` (access denied).
10890
11651
  #
10891
11652
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10892
11653
  #
@@ -10913,6 +11674,7 @@ module Aws::S3
10913
11674
  # resp = client.put_bucket_website({
10914
11675
  # bucket: "BucketName", # required
10915
11676
  # content_md5: "ContentMD5",
11677
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
10916
11678
  # website_configuration: { # required
10917
11679
  # error_document: {
10918
11680
  # key: "ObjectKey", # required
@@ -11095,12 +11857,12 @@ module Aws::S3
11095
11857
  #
11096
11858
  # When using this action with Amazon S3 on Outposts, you must direct
11097
11859
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
11098
- # takes the form
11099
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
11100
- # When using this action using S3 on Outposts through the Amazon Web
11860
+ # takes the form `
11861
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
11862
+ # When using this action with S3 on Outposts through the Amazon Web
11101
11863
  # Services SDKs, you provide the Outposts bucket ARN in place of the
11102
11864
  # bucket name. For more information about S3 on Outposts ARNs, see
11103
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
11865
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
11104
11866
  #
11105
11867
  #
11106
11868
  #
@@ -11169,6 +11931,66 @@ module Aws::S3
11169
11931
  #
11170
11932
  # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
11171
11933
  #
11934
+ # @option params [String] :checksum_algorithm
11935
+ # Indicates the algorithm used to create the checksum for the object
11936
+ # when using the SDK. This header will not provide any additional
11937
+ # functionality if not using the SDK. When sending this header, there
11938
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
11939
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
11940
+ # `400 Bad Request`. For more information, see [Checking object
11941
+ # integrity][1] in the *Amazon S3 User Guide*.
11942
+ #
11943
+ # If you provide an individual checksum, Amazon S3 ignores any provided
11944
+ # `ChecksumAlgorithm` parameter.
11945
+ #
11946
+ #
11947
+ #
11948
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11949
+ #
11950
+ # @option params [String] :checksum_crc32
11951
+ # This header can be used as a data integrity check to verify that the
11952
+ # data received is the same data that was originally sent. This header
11953
+ # specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
11954
+ # more information, see [Checking object integrity][1] in the *Amazon S3
11955
+ # User Guide*.
11956
+ #
11957
+ #
11958
+ #
11959
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11960
+ #
11961
+ # @option params [String] :checksum_crc32c
11962
+ # This header can be used as a data integrity check to verify that the
11963
+ # data received is the same data that was originally sent. This header
11964
+ # specifies the base64-encoded, 32-bit CRC32C checksum of the object.
11965
+ # For more information, see [Checking object integrity][1] in the
11966
+ # *Amazon S3 User Guide*.
11967
+ #
11968
+ #
11969
+ #
11970
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11971
+ #
11972
+ # @option params [String] :checksum_sha1
11973
+ # This header can be used as a data integrity check to verify that the
11974
+ # data received is the same data that was originally sent. This header
11975
+ # specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
11976
+ # more information, see [Checking object integrity][1] in the *Amazon S3
11977
+ # User Guide*.
11978
+ #
11979
+ #
11980
+ #
11981
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11982
+ #
11983
+ # @option params [String] :checksum_sha256
11984
+ # This header can be used as a data integrity check to verify that the
11985
+ # data received is the same data that was originally sent. This header
11986
+ # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
11987
+ # For more information, see [Checking object integrity][1] in the
11988
+ # *Amazon S3 User Guide*.
11989
+ #
11990
+ #
11991
+ #
11992
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11993
+ #
11172
11994
  # @option params [Time,DateTime,Date,Integer,String] :expires
11173
11995
  # The date and time at which the object is no longer cacheable. For more
11174
11996
  # information, see
@@ -11291,8 +12113,8 @@ module Aws::S3
11291
12113
  # @option params [String] :request_payer
11292
12114
  # Confirms that the requester knows that they will be charged for the
11293
12115
  # request. Bucket owners need not specify this parameter in their
11294
- # requests. For information about downloading objects from requester
11295
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
12116
+ # requests. For information about downloading objects from Requester
12117
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
11296
12118
  # in the *Amazon S3 User Guide*.
11297
12119
  #
11298
12120
  #
@@ -11320,13 +12142,17 @@ module Aws::S3
11320
12142
  #
11321
12143
  # @option params [String] :expected_bucket_owner
11322
12144
  # The account ID of the expected bucket owner. If the bucket is owned by
11323
- # a different account, the request will fail with an HTTP `403 (Access
11324
- # Denied)` error.
12145
+ # a different account, the request fails with the HTTP status code `403
12146
+ # Forbidden` (access denied).
11325
12147
  #
11326
12148
  # @return [Types::PutObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11327
12149
  #
11328
12150
  # * {Types::PutObjectOutput#expiration #expiration} => String
11329
12151
  # * {Types::PutObjectOutput#etag #etag} => String
12152
+ # * {Types::PutObjectOutput#checksum_crc32 #checksum_crc32} => String
12153
+ # * {Types::PutObjectOutput#checksum_crc32c #checksum_crc32c} => String
12154
+ # * {Types::PutObjectOutput#checksum_sha1 #checksum_sha1} => String
12155
+ # * {Types::PutObjectOutput#checksum_sha256 #checksum_sha256} => String
11330
12156
  # * {Types::PutObjectOutput#server_side_encryption #server_side_encryption} => String
11331
12157
  # * {Types::PutObjectOutput#version_id #version_id} => String
11332
12158
  # * {Types::PutObjectOutput#sse_customer_algorithm #sse_customer_algorithm} => String
@@ -11337,59 +12163,58 @@ module Aws::S3
11337
12163
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
11338
12164
  #
11339
12165
  #
11340
- # @example Example: To upload an object (specify optional headers)
12166
+ # @example Example: To create an object.
11341
12167
  #
11342
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
11343
- # # storage class and use server-side encryption.
12168
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
11344
12169
  #
11345
12170
  # resp = client.put_object({
11346
- # body: "HappyFace.jpg",
12171
+ # body: "filetoupload",
11347
12172
  # bucket: "examplebucket",
11348
- # key: "HappyFace.jpg",
11349
- # server_side_encryption: "AES256",
11350
- # storage_class: "STANDARD_IA",
12173
+ # key: "objectkey",
11351
12174
  # })
11352
12175
  #
11353
12176
  # resp.to_h outputs the following:
11354
12177
  # {
11355
12178
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11356
- # server_side_encryption: "AES256",
11357
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
12179
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
11358
12180
  # }
11359
12181
  #
11360
- # @example Example: To upload an object and specify canned ACL.
12182
+ # @example Example: To upload an object
11361
12183
  #
11362
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
11363
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
12184
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
12185
+ # # syntax. S3 returns VersionId of the newly created object.
11364
12186
  #
11365
12187
  # resp = client.put_object({
11366
- # acl: "authenticated-read",
11367
- # body: "filetoupload",
12188
+ # body: "HappyFace.jpg",
11368
12189
  # bucket: "examplebucket",
11369
- # key: "exampleobject",
12190
+ # key: "HappyFace.jpg",
11370
12191
  # })
11371
12192
  #
11372
12193
  # resp.to_h outputs the following:
11373
12194
  # {
11374
12195
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11375
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
12196
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
11376
12197
  # }
11377
12198
  #
11378
- # @example Example: To upload an object
12199
+ # @example Example: To upload object and specify user-defined metadata
11379
12200
  #
11380
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
11381
- # # syntax. S3 returns VersionId of the newly created object.
12201
+ # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
12202
+ # # enabled, S3 returns version ID in response.
11382
12203
  #
11383
12204
  # resp = client.put_object({
11384
- # body: "HappyFace.jpg",
12205
+ # body: "filetoupload",
11385
12206
  # bucket: "examplebucket",
11386
- # key: "HappyFace.jpg",
12207
+ # key: "exampleobject",
12208
+ # metadata: {
12209
+ # "metadata1" => "value1",
12210
+ # "metadata2" => "value2",
12211
+ # },
11387
12212
  # })
11388
12213
  #
11389
12214
  # resp.to_h outputs the following:
11390
12215
  # {
11391
12216
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11392
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
12217
+ # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
11393
12218
  # }
11394
12219
  #
11395
12220
  # @example Example: To upload an object and specify optional tags
@@ -11410,25 +12235,24 @@ module Aws::S3
11410
12235
  # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
11411
12236
  # }
11412
12237
  #
11413
- # @example Example: To upload object and specify user-defined metadata
12238
+ # @example Example: To upload an object (specify optional headers)
11414
12239
  #
11415
- # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
11416
- # # enabled, S3 returns version ID in response.
12240
+ # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
12241
+ # # storage class and use server-side encryption.
11417
12242
  #
11418
12243
  # resp = client.put_object({
11419
- # body: "filetoupload",
12244
+ # body: "HappyFace.jpg",
11420
12245
  # bucket: "examplebucket",
11421
- # key: "exampleobject",
11422
- # metadata: {
11423
- # "metadata1" => "value1",
11424
- # "metadata2" => "value2",
11425
- # },
12246
+ # key: "HappyFace.jpg",
12247
+ # server_side_encryption: "AES256",
12248
+ # storage_class: "STANDARD_IA",
11426
12249
  # })
11427
12250
  #
11428
12251
  # resp.to_h outputs the following:
11429
12252
  # {
11430
12253
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11431
- # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
12254
+ # server_side_encryption: "AES256",
12255
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
11432
12256
  # }
11433
12257
  #
11434
12258
  # @example Example: To upload an object and specify server-side encryption and object tags
@@ -11451,20 +12275,22 @@ module Aws::S3
11451
12275
  # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
11452
12276
  # }
11453
12277
  #
11454
- # @example Example: To create an object.
12278
+ # @example Example: To upload an object and specify canned ACL.
11455
12279
  #
11456
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
12280
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
12281
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
11457
12282
  #
11458
12283
  # resp = client.put_object({
12284
+ # acl: "authenticated-read",
11459
12285
  # body: "filetoupload",
11460
12286
  # bucket: "examplebucket",
11461
- # key: "objectkey",
12287
+ # key: "exampleobject",
11462
12288
  # })
11463
12289
  #
11464
12290
  # resp.to_h outputs the following:
11465
12291
  # {
11466
12292
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11467
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
12293
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
11468
12294
  # }
11469
12295
  #
11470
12296
  # @example Streaming a file from disk
@@ -11486,6 +12312,11 @@ module Aws::S3
11486
12312
  # content_length: 1,
11487
12313
  # content_md5: "ContentMD5",
11488
12314
  # content_type: "ContentType",
12315
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
12316
+ # checksum_crc32: "ChecksumCRC32",
12317
+ # checksum_crc32c: "ChecksumCRC32C",
12318
+ # checksum_sha1: "ChecksumSHA1",
12319
+ # checksum_sha256: "ChecksumSHA256",
11489
12320
  # expires: Time.now,
11490
12321
  # grant_full_control: "GrantFullControl",
11491
12322
  # grant_read: "GrantRead",
@@ -11516,6 +12347,10 @@ module Aws::S3
11516
12347
  #
11517
12348
  # resp.expiration #=> String
11518
12349
  # resp.etag #=> String
12350
+ # resp.checksum_crc32 #=> String
12351
+ # resp.checksum_crc32c #=> String
12352
+ # resp.checksum_sha1 #=> String
12353
+ # resp.checksum_sha256 #=> String
11519
12354
  # resp.server_side_encryption #=> String, one of "AES256", "aws:kms"
11520
12355
  # resp.version_id #=> String
11521
12356
  # resp.sse_customer_algorithm #=> String
@@ -11739,6 +12574,22 @@ module Aws::S3
11739
12574
  #
11740
12575
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
11741
12576
  #
12577
+ # @option params [String] :checksum_algorithm
12578
+ # Indicates the algorithm used to create the checksum for the object
12579
+ # when using the SDK. This header will not provide any additional
12580
+ # functionality if not using the SDK. When sending this header, there
12581
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
12582
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
12583
+ # `400 Bad Request`. For more information, see [Checking object
12584
+ # integrity][1] in the *Amazon S3 User Guide*.
12585
+ #
12586
+ # If you provide an individual checksum, Amazon S3 ignores any provided
12587
+ # `ChecksumAlgorithm` parameter.
12588
+ #
12589
+ #
12590
+ #
12591
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12592
+ #
11742
12593
  # @option params [String] :grant_full_control
11743
12594
  # Allows grantee the read, write, read ACP, and write ACP permissions on
11744
12595
  # the bucket.
@@ -11779,12 +12630,12 @@ module Aws::S3
11779
12630
  #
11780
12631
  # When using this action with Amazon S3 on Outposts, you must direct
11781
12632
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
11782
- # takes the form
11783
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
11784
- # When using this action using S3 on Outposts through the Amazon Web
12633
+ # takes the form `
12634
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
12635
+ # When using this action with S3 on Outposts through the Amazon Web
11785
12636
  # Services SDKs, you provide the Outposts bucket ARN in place of the
11786
12637
  # bucket name. For more information about S3 on Outposts ARNs, see
11787
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
12638
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
11788
12639
  #
11789
12640
  #
11790
12641
  #
@@ -11794,8 +12645,8 @@ module Aws::S3
11794
12645
  # @option params [String] :request_payer
11795
12646
  # Confirms that the requester knows that they will be charged for the
11796
12647
  # request. Bucket owners need not specify this parameter in their
11797
- # requests. For information about downloading objects from requester
11798
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
12648
+ # requests. For information about downloading objects from Requester
12649
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
11799
12650
  # in the *Amazon S3 User Guide*.
11800
12651
  #
11801
12652
  #
@@ -11807,8 +12658,8 @@ module Aws::S3
11807
12658
  #
11808
12659
  # @option params [String] :expected_bucket_owner
11809
12660
  # The account ID of the expected bucket owner. If the bucket is owned by
11810
- # a different account, the request will fail with an HTTP `403 (Access
11811
- # Denied)` error.
12661
+ # a different account, the request fails with the HTTP status code `403
12662
+ # Forbidden` (access denied).
11812
12663
  #
11813
12664
  # @return [Types::PutObjectAclOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11814
12665
  #
@@ -11857,6 +12708,7 @@ module Aws::S3
11857
12708
  # },
11858
12709
  # bucket: "BucketName", # required
11859
12710
  # content_md5: "ContentMD5",
12711
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
11860
12712
  # grant_full_control: "GrantFullControl",
11861
12713
  # grant_read: "GrantRead",
11862
12714
  # grant_read_acp: "GrantReadACP",
@@ -11881,7 +12733,7 @@ module Aws::S3
11881
12733
  req.send_request(options)
11882
12734
  end
11883
12735
 
11884
- # Applies a Legal Hold configuration to the specified object. For more
12736
+ # Applies a legal hold configuration to the specified object. For more
11885
12737
  # information, see [Locking Objects][1].
11886
12738
  #
11887
12739
  # This action is not supported by Amazon S3 on Outposts.
@@ -11891,8 +12743,8 @@ module Aws::S3
11891
12743
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
11892
12744
  #
11893
12745
  # @option params [required, String] :bucket
11894
- # The bucket name containing the object that you want to place a Legal
11895
- # Hold on.
12746
+ # The bucket name containing the object that you want to place a legal
12747
+ # hold on.
11896
12748
  #
11897
12749
  # When using this action with an access point, you must direct requests
11898
12750
  # to the access point hostname. The access point hostname takes the form
@@ -11907,17 +12759,17 @@ module Aws::S3
11907
12759
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
11908
12760
  #
11909
12761
  # @option params [required, String] :key
11910
- # The key name for the object that you want to place a Legal Hold on.
12762
+ # The key name for the object that you want to place a legal hold on.
11911
12763
  #
11912
12764
  # @option params [Types::ObjectLockLegalHold] :legal_hold
11913
- # Container element for the Legal Hold configuration you want to apply
12765
+ # Container element for the legal hold configuration you want to apply
11914
12766
  # to the specified object.
11915
12767
  #
11916
12768
  # @option params [String] :request_payer
11917
12769
  # Confirms that the requester knows that they will be charged for the
11918
12770
  # request. Bucket owners need not specify this parameter in their
11919
- # requests. For information about downloading objects from requester
11920
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
12771
+ # requests. For information about downloading objects from Requester
12772
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
11921
12773
  # in the *Amazon S3 User Guide*.
11922
12774
  #
11923
12775
  #
@@ -11925,7 +12777,7 @@ module Aws::S3
11925
12777
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
11926
12778
  #
11927
12779
  # @option params [String] :version_id
11928
- # The version ID of the object that you want to place a Legal Hold on.
12780
+ # The version ID of the object that you want to place a legal hold on.
11929
12781
  #
11930
12782
  # @option params [String] :content_md5
11931
12783
  # The MD5 hash for the request body.
@@ -11934,10 +12786,26 @@ module Aws::S3
11934
12786
  # (CLI) or Amazon Web Services SDKs, this field is calculated
11935
12787
  # automatically.
11936
12788
  #
12789
+ # @option params [String] :checksum_algorithm
12790
+ # Indicates the algorithm used to create the checksum for the object
12791
+ # when using the SDK. This header will not provide any additional
12792
+ # functionality if not using the SDK. When sending this header, there
12793
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
12794
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
12795
+ # `400 Bad Request`. For more information, see [Checking object
12796
+ # integrity][1] in the *Amazon S3 User Guide*.
12797
+ #
12798
+ # If you provide an individual checksum, Amazon S3 ignores any provided
12799
+ # `ChecksumAlgorithm` parameter.
12800
+ #
12801
+ #
12802
+ #
12803
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12804
+ #
11937
12805
  # @option params [String] :expected_bucket_owner
11938
12806
  # The account ID of the expected bucket owner. If the bucket is owned by
11939
- # a different account, the request will fail with an HTTP `403 (Access
11940
- # Denied)` error.
12807
+ # a different account, the request fails with the HTTP status code `403
12808
+ # Forbidden` (access denied).
11941
12809
  #
11942
12810
  # @return [Types::PutObjectLegalHoldOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11943
12811
  #
@@ -11954,6 +12822,7 @@ module Aws::S3
11954
12822
  # request_payer: "requester", # accepts requester
11955
12823
  # version_id: "ObjectVersionId",
11956
12824
  # content_md5: "ContentMD5",
12825
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
11957
12826
  # expected_bucket_owner: "AccountId",
11958
12827
  # })
11959
12828
  #
@@ -12002,8 +12871,8 @@ module Aws::S3
12002
12871
  # @option params [String] :request_payer
12003
12872
  # Confirms that the requester knows that they will be charged for the
12004
12873
  # request. Bucket owners need not specify this parameter in their
12005
- # requests. For information about downloading objects from requester
12006
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
12874
+ # requests. For information about downloading objects from Requester
12875
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
12007
12876
  # in the *Amazon S3 User Guide*.
12008
12877
  #
12009
12878
  #
@@ -12020,10 +12889,26 @@ module Aws::S3
12020
12889
  # (CLI) or Amazon Web Services SDKs, this field is calculated
12021
12890
  # automatically.
12022
12891
  #
12892
+ # @option params [String] :checksum_algorithm
12893
+ # Indicates the algorithm used to create the checksum for the object
12894
+ # when using the SDK. This header will not provide any additional
12895
+ # functionality if not using the SDK. When sending this header, there
12896
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
12897
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
12898
+ # `400 Bad Request`. For more information, see [Checking object
12899
+ # integrity][1] in the *Amazon S3 User Guide*.
12900
+ #
12901
+ # If you provide an individual checksum, Amazon S3 ignores any provided
12902
+ # `ChecksumAlgorithm` parameter.
12903
+ #
12904
+ #
12905
+ #
12906
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12907
+ #
12023
12908
  # @option params [String] :expected_bucket_owner
12024
12909
  # The account ID of the expected bucket owner. If the bucket is owned by
12025
- # a different account, the request will fail with an HTTP `403 (Access
12026
- # Denied)` error.
12910
+ # a different account, the request fails with the HTTP status code `403
12911
+ # Forbidden` (access denied).
12027
12912
  #
12028
12913
  # @return [Types::PutObjectLockConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
12029
12914
  #
@@ -12046,6 +12931,7 @@ module Aws::S3
12046
12931
  # request_payer: "requester", # accepts requester
12047
12932
  # token: "ObjectLockToken",
12048
12933
  # content_md5: "ContentMD5",
12934
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
12049
12935
  # expected_bucket_owner: "AccountId",
12050
12936
  # })
12051
12937
  #
@@ -12070,13 +12956,6 @@ module Aws::S3
12070
12956
  #
12071
12957
  # This action is not supported by Amazon S3 on Outposts.
12072
12958
  #
12073
- # **Permissions**
12074
- #
12075
- # When the Object Lock retention mode is set to compliance, you need
12076
- # `s3:PutObjectRetention` and `s3:BypassGovernanceRetention`
12077
- # permissions. For other requests to `PutObjectRetention`, only
12078
- # `s3:PutObjectRetention` permissions are required.
12079
- #
12080
12959
  #
12081
12960
  #
12082
12961
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
@@ -12107,8 +12986,8 @@ module Aws::S3
12107
12986
  # @option params [String] :request_payer
12108
12987
  # Confirms that the requester knows that they will be charged for the
12109
12988
  # request. Bucket owners need not specify this parameter in their
12110
- # requests. For information about downloading objects from requester
12111
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
12989
+ # requests. For information about downloading objects from Requester
12990
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
12112
12991
  # in the *Amazon S3 User Guide*.
12113
12992
  #
12114
12993
  #
@@ -12130,10 +13009,26 @@ module Aws::S3
12130
13009
  # (CLI) or Amazon Web Services SDKs, this field is calculated
12131
13010
  # automatically.
12132
13011
  #
13012
+ # @option params [String] :checksum_algorithm
13013
+ # Indicates the algorithm used to create the checksum for the object
13014
+ # when using the SDK. This header will not provide any additional
13015
+ # functionality if not using the SDK. When sending this header, there
13016
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
13017
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
13018
+ # `400 Bad Request`. For more information, see [Checking object
13019
+ # integrity][1] in the *Amazon S3 User Guide*.
13020
+ #
13021
+ # If you provide an individual checksum, Amazon S3 ignores any provided
13022
+ # `ChecksumAlgorithm` parameter.
13023
+ #
13024
+ #
13025
+ #
13026
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
13027
+ #
12133
13028
  # @option params [String] :expected_bucket_owner
12134
13029
  # The account ID of the expected bucket owner. If the bucket is owned by
12135
- # a different account, the request will fail with an HTTP `403 (Access
12136
- # Denied)` error.
13030
+ # a different account, the request fails with the HTTP status code `403
13031
+ # Forbidden` (access denied).
12137
13032
  #
12138
13033
  # @return [Types::PutObjectRetentionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
12139
13034
  #
@@ -12152,6 +13047,7 @@ module Aws::S3
12152
13047
  # version_id: "ObjectVersionId",
12153
13048
  # bypass_governance_retention: false,
12154
13049
  # content_md5: "ContentMD5",
13050
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
12155
13051
  # expected_bucket_owner: "AccountId",
12156
13052
  # })
12157
13053
  #
@@ -12238,12 +13134,12 @@ module Aws::S3
12238
13134
  #
12239
13135
  # When using this action with Amazon S3 on Outposts, you must direct
12240
13136
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
12241
- # takes the form
12242
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
12243
- # When using this action using S3 on Outposts through the Amazon Web
13137
+ # takes the form `
13138
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
13139
+ # When using this action with S3 on Outposts through the Amazon Web
12244
13140
  # Services SDKs, you provide the Outposts bucket ARN in place of the
12245
13141
  # bucket name. For more information about S3 on Outposts ARNs, see
12246
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
13142
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
12247
13143
  #
12248
13144
  #
12249
13145
  #
@@ -12263,19 +13159,35 @@ module Aws::S3
12263
13159
  # (CLI) or Amazon Web Services SDKs, this field is calculated
12264
13160
  # automatically.
12265
13161
  #
13162
+ # @option params [String] :checksum_algorithm
13163
+ # Indicates the algorithm used to create the checksum for the object
13164
+ # when using the SDK. This header will not provide any additional
13165
+ # functionality if not using the SDK. When sending this header, there
13166
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
13167
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
13168
+ # `400 Bad Request`. For more information, see [Checking object
13169
+ # integrity][1] in the *Amazon S3 User Guide*.
13170
+ #
13171
+ # If you provide an individual checksum, Amazon S3 ignores any provided
13172
+ # `ChecksumAlgorithm` parameter.
13173
+ #
13174
+ #
13175
+ #
13176
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
13177
+ #
12266
13178
  # @option params [required, Types::Tagging] :tagging
12267
13179
  # Container for the `TagSet` and `Tag` elements
12268
13180
  #
12269
13181
  # @option params [String] :expected_bucket_owner
12270
13182
  # The account ID of the expected bucket owner. If the bucket is owned by
12271
- # a different account, the request will fail with an HTTP `403 (Access
12272
- # Denied)` error.
13183
+ # a different account, the request fails with the HTTP status code `403
13184
+ # Forbidden` (access denied).
12273
13185
  #
12274
13186
  # @option params [String] :request_payer
12275
13187
  # Confirms that the requester knows that they will be charged for the
12276
13188
  # request. Bucket owners need not specify this parameter in their
12277
- # requests. For information about downloading objects from requester
12278
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
13189
+ # requests. For information about downloading objects from Requester
13190
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
12279
13191
  # in the *Amazon S3 User Guide*.
12280
13192
  #
12281
13193
  #
@@ -12320,6 +13232,7 @@ module Aws::S3
12320
13232
  # key: "ObjectKey", # required
12321
13233
  # version_id: "ObjectVersionId",
12322
13234
  # content_md5: "ContentMD5",
13235
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
12323
13236
  # tagging: { # required
12324
13237
  # tag_set: [ # required
12325
13238
  # {
@@ -12391,6 +13304,22 @@ module Aws::S3
12391
13304
  # (CLI) or Amazon Web Services SDKs, this field is calculated
12392
13305
  # automatically.
12393
13306
  #
13307
+ # @option params [String] :checksum_algorithm
13308
+ # Indicates the algorithm used to create the checksum for the object
13309
+ # when using the SDK. This header will not provide any additional
13310
+ # functionality if not using the SDK. When sending this header, there
13311
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
13312
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
13313
+ # `400 Bad Request`. For more information, see [Checking object
13314
+ # integrity][1] in the *Amazon S3 User Guide*.
13315
+ #
13316
+ # If you provide an individual checksum, Amazon S3 ignores any provided
13317
+ # `ChecksumAlgorithm` parameter.
13318
+ #
13319
+ #
13320
+ #
13321
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
13322
+ #
12394
13323
  # @option params [required, Types::PublicAccessBlockConfiguration] :public_access_block_configuration
12395
13324
  # The `PublicAccessBlock` configuration that you want to apply to this
12396
13325
  # Amazon S3 bucket. You can enable the configuration options in any
@@ -12404,8 +13333,8 @@ module Aws::S3
12404
13333
  #
12405
13334
  # @option params [String] :expected_bucket_owner
12406
13335
  # The account ID of the expected bucket owner. If the bucket is owned by
12407
- # a different account, the request will fail with an HTTP `403 (Access
12408
- # Denied)` error.
13336
+ # a different account, the request fails with the HTTP status code `403
13337
+ # Forbidden` (access denied).
12409
13338
  #
12410
13339
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
12411
13340
  #
@@ -12414,6 +13343,7 @@ module Aws::S3
12414
13343
  # resp = client.put_public_access_block({
12415
13344
  # bucket: "BucketName", # required
12416
13345
  # content_md5: "ContentMD5",
13346
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
12417
13347
  # public_access_block_configuration: { # required
12418
13348
  # block_public_acls: false,
12419
13349
  # ignore_public_acls: false,
@@ -12550,36 +13480,35 @@ module Aws::S3
12550
13480
  # specify one of the following data access tier options in the `Tier`
12551
13481
  # element of the request body:
12552
13482
  #
12553
- # * <b> <code>Expedited</code> </b> - Expedited retrievals allow you to
12554
- # quickly access your data stored in the S3 Glacier storage class or
12555
- # S3 Intelligent-Tiering Archive tier when occasional urgent requests
12556
- # for a subset of archives are required. For all but the largest
12557
- # archived objects (250 MB+), data accessed using Expedited retrievals
12558
- # is typically made available within 1–5 minutes. Provisioned capacity
13483
+ # * `Expedited` - Expedited retrievals allow you to quickly access your
13484
+ # data stored in the S3 Glacier storage class or S3
13485
+ # Intelligent-Tiering Archive tier when occasional urgent requests for
13486
+ # a subset of archives are required. For all but the largest archived
13487
+ # objects (250 MB+), data accessed using Expedited retrievals is
13488
+ # typically made available within 1–5 minutes. Provisioned capacity
12559
13489
  # ensures that retrieval capacity for Expedited retrievals is
12560
13490
  # available when you need it. Expedited retrievals and provisioned
12561
13491
  # capacity are not available for objects stored in the S3 Glacier Deep
12562
13492
  # Archive storage class or S3 Intelligent-Tiering Deep Archive tier.
12563
13493
  #
12564
- # * <b> <code>Standard</code> </b> - Standard retrievals allow you to
12565
- # access any of your archived objects within several hours. This is
12566
- # the default option for retrieval requests that do not specify the
12567
- # retrieval option. Standard retrievals typically finish within 3–5
13494
+ # * `Standard` - Standard retrievals allow you to access any of your
13495
+ # archived objects within several hours. This is the default option
13496
+ # for retrieval requests that do not specify the retrieval option.
13497
+ # Standard retrievals typically finish within 3–5 hours for objects
13498
+ # stored in the S3 Glacier storage class or S3 Intelligent-Tiering
13499
+ # Archive tier. They typically finish within 12 hours for objects
13500
+ # stored in the S3 Glacier Deep Archive storage class or S3
13501
+ # Intelligent-Tiering Deep Archive tier. Standard retrievals are free
13502
+ # for objects stored in S3 Intelligent-Tiering.
13503
+ #
13504
+ # * `Bulk` - Bulk retrievals are the lowest-cost retrieval option in S3
13505
+ # Glacier, enabling you to retrieve large amounts, even petabytes, of
13506
+ # data inexpensively. Bulk retrievals typically finish within 5–12
12568
13507
  # hours for objects stored in the S3 Glacier storage class or S3
12569
- # Intelligent-Tiering Archive tier. They typically finish within 12
13508
+ # Intelligent-Tiering Archive tier. They typically finish within 48
12570
13509
  # hours for objects stored in the S3 Glacier Deep Archive storage
12571
- # class or S3 Intelligent-Tiering Deep Archive tier. Standard
12572
- # retrievals are free for objects stored in S3 Intelligent-Tiering.
12573
- #
12574
- # * <b> <code>Bulk</code> </b> - Bulk retrievals are the lowest-cost
12575
- # retrieval option in S3 Glacier, enabling you to retrieve large
12576
- # amounts, even petabytes, of data inexpensively. Bulk retrievals
12577
- # typically finish within 5–12 hours for objects stored in the S3
12578
- # Glacier storage class or S3 Intelligent-Tiering Archive tier. They
12579
- # typically finish within 48 hours for objects stored in the S3
12580
- # Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep
12581
- # Archive tier. Bulk retrievals are free for objects stored in S3
12582
- # Intelligent-Tiering.
13510
+ # class or S3 Intelligent-Tiering Deep Archive tier. Bulk retrievals
13511
+ # are free for objects stored in S3 Intelligent-Tiering.
12583
13512
  #
12584
13513
  # For more information about archive retrieval options and provisioned
12585
13514
  # capacity for `Expedited` data access, see [Restoring Archived
@@ -12684,12 +13613,12 @@ module Aws::S3
12684
13613
  #
12685
13614
  # When using this action with Amazon S3 on Outposts, you must direct
12686
13615
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
12687
- # takes the form
12688
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
12689
- # When using this action using S3 on Outposts through the Amazon Web
13616
+ # takes the form `
13617
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
13618
+ # When using this action with S3 on Outposts through the Amazon Web
12690
13619
  # Services SDKs, you provide the Outposts bucket ARN in place of the
12691
13620
  # bucket name. For more information about S3 on Outposts ARNs, see
12692
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
13621
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
12693
13622
  #
12694
13623
  #
12695
13624
  #
@@ -12708,18 +13637,34 @@ module Aws::S3
12708
13637
  # @option params [String] :request_payer
12709
13638
  # Confirms that the requester knows that they will be charged for the
12710
13639
  # request. Bucket owners need not specify this parameter in their
12711
- # requests. For information about downloading objects from requester
12712
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
13640
+ # requests. For information about downloading objects from Requester
13641
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
12713
13642
  # in the *Amazon S3 User Guide*.
12714
13643
  #
12715
13644
  #
12716
13645
  #
12717
13646
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
12718
13647
  #
13648
+ # @option params [String] :checksum_algorithm
13649
+ # Indicates the algorithm used to create the checksum for the object
13650
+ # when using the SDK. This header will not provide any additional
13651
+ # functionality if not using the SDK. When sending this header, there
13652
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
13653
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
13654
+ # `400 Bad Request`. For more information, see [Checking object
13655
+ # integrity][1] in the *Amazon S3 User Guide*.
13656
+ #
13657
+ # If you provide an individual checksum, Amazon S3 ignores any provided
13658
+ # `ChecksumAlgorithm` parameter.
13659
+ #
13660
+ #
13661
+ #
13662
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
13663
+ #
12719
13664
  # @option params [String] :expected_bucket_owner
12720
13665
  # The account ID of the expected bucket owner. If the bucket is owned by
12721
- # a different account, the request will fail with an HTTP `403 (Access
12722
- # Denied)` error.
13666
+ # a different account, the request fails with the HTTP status code `403
13667
+ # Forbidden` (access denied).
12723
13668
  #
12724
13669
  # @return [Types::RestoreObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
12725
13670
  #
@@ -12834,6 +13779,7 @@ module Aws::S3
12834
13779
  # },
12835
13780
  # },
12836
13781
  # request_payer: "requester", # accepts requester
13782
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
12837
13783
  # expected_bucket_owner: "AccountId",
12838
13784
  # })
12839
13785
  #
@@ -12862,10 +13808,11 @@ module Aws::S3
12862
13808
  # This action is not supported by Amazon S3 on Outposts.
12863
13809
  #
12864
13810
  # For more information about Amazon S3 Select, see [Selecting Content
12865
- # from Objects][1] in the *Amazon S3 User Guide*.
13811
+ # from Objects][1] and [SELECT Command][2] in the *Amazon S3 User
13812
+ # Guide*.
12866
13813
  #
12867
13814
  # For more information about using SQL with Amazon S3 Select, see [ SQL
12868
- # Reference for Amazon S3 Select and S3 Glacier Select][2] in the
13815
+ # Reference for Amazon S3 Select and S3 Glacier Select][3] in the
12869
13816
  # *Amazon S3 User Guide*.
12870
13817
  #
12871
13818
  #
@@ -12874,7 +13821,7 @@ module Aws::S3
12874
13821
  #
12875
13822
  # You must have `s3:GetObject` permission for this operation. Amazon S3
12876
13823
  # Select does not support anonymous access. For more information about
12877
- # permissions, see [Specifying Permissions in a Policy][3] in the
13824
+ # permissions, see [Specifying Permissions in a Policy][4] in the
12878
13825
  # *Amazon S3 User Guide*.
12879
13826
  #
12880
13827
  #
@@ -12901,70 +13848,71 @@ module Aws::S3
12901
13848
  #
12902
13849
  # For objects that are encrypted with customer-provided encryption
12903
13850
  # keys (SSE-C), you must use HTTPS, and you must use the headers that
12904
- # are documented in the [GetObject][4]. For more information about
13851
+ # are documented in the [GetObject][5]. For more information about
12905
13852
  # SSE-C, see [Server-Side Encryption (Using Customer-Provided
12906
- # Encryption Keys)][5] in the *Amazon S3 User Guide*.
13853
+ # Encryption Keys)][6] in the *Amazon S3 User Guide*.
12907
13854
  #
12908
13855
  # For objects that are encrypted with Amazon S3 managed encryption
12909
13856
  # keys (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS),
12910
13857
  # server-side encryption is handled transparently, so you don't need
12911
13858
  # to specify anything. For more information about server-side
12912
13859
  # encryption, including SSE-S3 and SSE-KMS, see [Protecting Data Using
12913
- # Server-Side Encryption][6] in the *Amazon S3 User Guide*.
13860
+ # Server-Side Encryption][7] in the *Amazon S3 User Guide*.
12914
13861
  #
12915
13862
  # **Working with the Response Body**
12916
13863
  #
12917
13864
  # Given the response size is unknown, Amazon S3 Select streams the
12918
13865
  # response as a series of messages and includes a `Transfer-Encoding`
12919
13866
  # header with `chunked` as its value in the response. For more
12920
- # information, see [Appendix: SelectObjectContent Response][7].
13867
+ # information, see [Appendix: SelectObjectContent Response][8].
12921
13868
  #
12922
13869
  #
12923
13870
  #
12924
13871
  # **GetObject Support**
12925
13872
  #
12926
13873
  # The `SelectObjectContent` action does not support the following
12927
- # `GetObject` functionality. For more information, see [GetObject][4].
13874
+ # `GetObject` functionality. For more information, see [GetObject][5].
12928
13875
  #
12929
13876
  # * `Range`\: Although you can specify a scan range for an Amazon S3
12930
- # Select request (see [SelectObjectContentRequest - ScanRange][8] in
13877
+ # Select request (see [SelectObjectContentRequest - ScanRange][9] in
12931
13878
  # the request parameters), you cannot specify the range of bytes of an
12932
13879
  # object to return.
12933
13880
  #
12934
13881
  # * GLACIER, DEEP\_ARCHIVE and REDUCED\_REDUNDANCY storage classes: You
12935
13882
  # cannot specify the GLACIER, DEEP\_ARCHIVE, or `REDUCED_REDUNDANCY`
12936
13883
  # storage classes. For more information, about storage classes see
12937
- # [Storage Classes][9] in the *Amazon S3 User Guide*.
13884
+ # [Storage Classes][10] in the *Amazon S3 User Guide*.
12938
13885
  #
12939
13886
  #
12940
13887
  #
12941
13888
  # **Special Errors**
12942
13889
  #
12943
13890
  # For a list of special errors for this operation, see [List of SELECT
12944
- # Object Content Error Codes][10]
13891
+ # Object Content Error Codes][11]
12945
13892
  #
12946
13893
  # **Related Resources**
12947
13894
  #
12948
- # * [GetObject][4]
13895
+ # * [GetObject][5]
12949
13896
  #
12950
- # * [GetBucketLifecycleConfiguration][11]
13897
+ # * [GetBucketLifecycleConfiguration][12]
12951
13898
  #
12952
- # * [PutBucketLifecycleConfiguration][12]
13899
+ # * [PutBucketLifecycleConfiguration][13]
12953
13900
  #
12954
13901
  #
12955
13902
  #
12956
13903
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html
12957
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html
12958
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
12959
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
12960
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
12961
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
12962
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
12963
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
12964
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro
12965
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
12966
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
12967
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
13904
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-glacier-select-sql-reference-select.html
13905
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html
13906
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
13907
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
13908
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
13909
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
13910
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
13911
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
13912
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro
13913
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
13914
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
13915
+ # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
12968
13916
  #
12969
13917
  # @option params [required, String] :bucket
12970
13918
  # The S3 bucket.
@@ -12973,25 +13921,30 @@ module Aws::S3
12973
13921
  # The object key.
12974
13922
  #
12975
13923
  # @option params [String] :sse_customer_algorithm
12976
- # The SSE Algorithm used to encrypt the object. For more information,
12977
- # see [Server-Side Encryption (Using Customer-Provided Encryption
12978
- # Keys][1].
13924
+ # The server-side encryption (SSE) algorithm used to encrypt the object.
13925
+ # This parameter is needed only when the object was created using a
13926
+ # checksum algorithm. For more information, see [Protecting data using
13927
+ # SSE-C keys][1] in the *Amazon S3 User Guide*.
12979
13928
  #
12980
13929
  #
12981
13930
  #
12982
13931
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
12983
13932
  #
12984
13933
  # @option params [String] :sse_customer_key
12985
- # The SSE Customer Key. For more information, see [Server-Side
12986
- # Encryption (Using Customer-Provided Encryption Keys][1].
13934
+ # The server-side encryption (SSE) customer managed key. This parameter
13935
+ # is needed only when the object was created using a checksum algorithm.
13936
+ # For more information, see [Protecting data using SSE-C keys][1] in the
13937
+ # *Amazon S3 User Guide*.
12987
13938
  #
12988
13939
  #
12989
13940
  #
12990
13941
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
12991
13942
  #
12992
13943
  # @option params [String] :sse_customer_key_md5
12993
- # The SSE Customer Key MD5. For more information, see [Server-Side
12994
- # Encryption (Using Customer-Provided Encryption Keys][1].
13944
+ # The MD5 server-side encryption (SSE) customer managed key. This
13945
+ # parameter is needed only when the object was created using a checksum
13946
+ # algorithm. For more information, see [Protecting data using SSE-C
13947
+ # keys][1] in the *Amazon S3 User Guide*.
12995
13948
  #
12996
13949
  #
12997
13950
  #
@@ -13034,8 +13987,8 @@ module Aws::S3
13034
13987
  #
13035
13988
  # @option params [String] :expected_bucket_owner
13036
13989
  # The account ID of the expected bucket owner. If the bucket is owned by
13037
- # a different account, the request will fail with an HTTP `403 (Access
13038
- # Denied)` error.
13990
+ # a different account, the request fails with the HTTP status code `403
13991
+ # Forbidden` (access denied).
13039
13992
  #
13040
13993
  # @return [Types::SelectObjectContentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
13041
13994
  #
@@ -13279,9 +14232,11 @@ module Aws::S3
13279
14232
  # number uniquely identifies a part and also defines its position within
13280
14233
  # the object being created. If you upload a new part using the same part
13281
14234
  # number that was used with a previous part, the previously uploaded
13282
- # part is overwritten. Each part must be at least 5 MB in size, except
13283
- # the last part. There is no size limit on the last part of your
13284
- # multipart upload.
14235
+ # part is overwritten.
14236
+ #
14237
+ # For information about maximum and minimum part sizes and other
14238
+ # multipart upload specifications, see [Multipart upload limits][3] in
14239
+ # the *Amazon S3 User Guide*.
13285
14240
  #
13286
14241
  # To ensure that data is not corrupted when traversing the network,
13287
14242
  # specify the `Content-MD5` header in the upload part request. Amazon S3
@@ -13292,7 +14247,7 @@ module Aws::S3
13292
14247
  # Web Services S3 uses the `x-amz-content-sha256` header as a checksum
13293
14248
  # instead of `Content-MD5`. For more information see [Authenticating
13294
14249
  # Requests: Using the Authorization Header (Amazon Web Services
13295
- # Signature Version 4)][3].
14250
+ # Signature Version 4)][4].
13296
14251
  #
13297
14252
  # **Note:** After you initiate multipart upload and upload one or more
13298
14253
  # parts, you must either complete or abort multipart upload in order to
@@ -13301,10 +14256,10 @@ module Aws::S3
13301
14256
  # parts storage and stops charging you for the parts storage.
13302
14257
  #
13303
14258
  # For more information on multipart uploads, go to [Multipart Upload
13304
- # Overview][4] in the <i>Amazon S3 User Guide </i>.
14259
+ # Overview][5] in the <i>Amazon S3 User Guide </i>.
13305
14260
  #
13306
14261
  # For information on the permissions required to use the multipart
13307
- # upload API, go to [Multipart Upload and Permissions][5] in the *Amazon
14262
+ # upload API, go to [Multipart Upload and Permissions][6] in the *Amazon
13308
14263
  # S3 User Guide*.
13309
14264
  #
13310
14265
  # You can optionally request server-side encryption where Amazon S3
@@ -13315,7 +14270,7 @@ module Aws::S3
13315
14270
  # encryption key, the request headers you provide in the request must
13316
14271
  # match the headers you used in the request to initiate the upload by
13317
14272
  # using [CreateMultipartUpload][2]. For more information, go to [Using
13318
- # Server-Side Encryption][6] in the *Amazon S3 User Guide*.
14273
+ # Server-Side Encryption][7] in the *Amazon S3 User Guide*.
13319
14274
  #
13320
14275
  # Server-side encryption is supported by the S3 Multipart Upload
13321
14276
  # actions. Unless you are using a customer-provided encryption key, you
@@ -13351,26 +14306,27 @@ module Aws::S3
13351
14306
  #
13352
14307
  # * [CreateMultipartUpload][2]
13353
14308
  #
13354
- # * [CompleteMultipartUpload][7]
14309
+ # * [CompleteMultipartUpload][8]
13355
14310
  #
13356
- # * [AbortMultipartUpload][8]
14311
+ # * [AbortMultipartUpload][9]
13357
14312
  #
13358
- # * [ListParts][9]
14313
+ # * [ListParts][10]
13359
14314
  #
13360
- # * [ListMultipartUploads][10]
14315
+ # * [ListMultipartUploads][11]
13361
14316
  #
13362
14317
  #
13363
14318
  #
13364
14319
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
13365
14320
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
13366
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-auth-using-authorization-header.html
13367
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html
13368
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
13369
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
13370
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
13371
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
13372
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
13373
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
14321
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/qfacts.html
14322
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-auth-using-authorization-header.html
14323
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html
14324
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
14325
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
14326
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
14327
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
14328
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
14329
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
13374
14330
  #
13375
14331
  # @option params [String, StringIO, File] :body
13376
14332
  # Object data.
@@ -13388,12 +14344,12 @@ module Aws::S3
13388
14344
  #
13389
14345
  # When using this action with Amazon S3 on Outposts, you must direct
13390
14346
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
13391
- # takes the form
13392
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
13393
- # When using this action using S3 on Outposts through the Amazon Web
14347
+ # takes the form `
14348
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
14349
+ # When using this action with S3 on Outposts through the Amazon Web
13394
14350
  # Services SDKs, you provide the Outposts bucket ARN in place of the
13395
14351
  # bucket name. For more information about S3 on Outposts ARNs, see
13396
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
14352
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
13397
14353
  #
13398
14354
  #
13399
14355
  #
@@ -13409,6 +14365,69 @@ module Aws::S3
13409
14365
  # is auto-populated when using the command from the CLI. This parameter
13410
14366
  # is required if object lock parameters are specified.
13411
14367
  #
14368
+ # @option params [String] :checksum_algorithm
14369
+ # Indicates the algorithm used to create the checksum for the object
14370
+ # when using the SDK. This header will not provide any additional
14371
+ # functionality if not using the SDK. When sending this header, there
14372
+ # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
14373
+ # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
14374
+ # `400 Bad Request`. For more information, see [Checking object
14375
+ # integrity][1] in the *Amazon S3 User Guide*.
14376
+ #
14377
+ # If you provide an individual checksum, Amazon S3 ignores any provided
14378
+ # `ChecksumAlgorithm` parameter.
14379
+ #
14380
+ # This checksum algorithm must be the same for all parts and it match
14381
+ # the checksum value supplied in the `CreateMultipartUpload` request.
14382
+ #
14383
+ #
14384
+ #
14385
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
14386
+ #
14387
+ # @option params [String] :checksum_crc32
14388
+ # This header can be used as a data integrity check to verify that the
14389
+ # data received is the same data that was originally sent. This header
14390
+ # specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
14391
+ # more information, see [Checking object integrity][1] in the *Amazon S3
14392
+ # User Guide*.
14393
+ #
14394
+ #
14395
+ #
14396
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
14397
+ #
14398
+ # @option params [String] :checksum_crc32c
14399
+ # This header can be used as a data integrity check to verify that the
14400
+ # data received is the same data that was originally sent. This header
14401
+ # specifies the base64-encoded, 32-bit CRC32C checksum of the object.
14402
+ # For more information, see [Checking object integrity][1] in the
14403
+ # *Amazon S3 User Guide*.
14404
+ #
14405
+ #
14406
+ #
14407
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
14408
+ #
14409
+ # @option params [String] :checksum_sha1
14410
+ # This header can be used as a data integrity check to verify that the
14411
+ # data received is the same data that was originally sent. This header
14412
+ # specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
14413
+ # more information, see [Checking object integrity][1] in the *Amazon S3
14414
+ # User Guide*.
14415
+ #
14416
+ #
14417
+ #
14418
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
14419
+ #
14420
+ # @option params [String] :checksum_sha256
14421
+ # This header can be used as a data integrity check to verify that the
14422
+ # data received is the same data that was originally sent. This header
14423
+ # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
14424
+ # For more information, see [Checking object integrity][1] in the
14425
+ # *Amazon S3 User Guide*.
14426
+ #
14427
+ #
14428
+ #
14429
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
14430
+ #
13412
14431
  # @option params [required, String] :key
13413
14432
  # Object key for which the multipart upload was initiated.
13414
14433
  #
@@ -13441,8 +14460,8 @@ module Aws::S3
13441
14460
  # @option params [String] :request_payer
13442
14461
  # Confirms that the requester knows that they will be charged for the
13443
14462
  # request. Bucket owners need not specify this parameter in their
13444
- # requests. For information about downloading objects from requester
13445
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
14463
+ # requests. For information about downloading objects from Requester
14464
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
13446
14465
  # in the *Amazon S3 User Guide*.
13447
14466
  #
13448
14467
  #
@@ -13451,13 +14470,17 @@ module Aws::S3
13451
14470
  #
13452
14471
  # @option params [String] :expected_bucket_owner
13453
14472
  # The account ID of the expected bucket owner. If the bucket is owned by
13454
- # a different account, the request will fail with an HTTP `403 (Access
13455
- # Denied)` error.
14473
+ # a different account, the request fails with the HTTP status code `403
14474
+ # Forbidden` (access denied).
13456
14475
  #
13457
14476
  # @return [Types::UploadPartOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
13458
14477
  #
13459
14478
  # * {Types::UploadPartOutput#server_side_encryption #server_side_encryption} => String
13460
14479
  # * {Types::UploadPartOutput#etag #etag} => String
14480
+ # * {Types::UploadPartOutput#checksum_crc32 #checksum_crc32} => String
14481
+ # * {Types::UploadPartOutput#checksum_crc32c #checksum_crc32c} => String
14482
+ # * {Types::UploadPartOutput#checksum_sha1 #checksum_sha1} => String
14483
+ # * {Types::UploadPartOutput#checksum_sha256 #checksum_sha256} => String
13461
14484
  # * {Types::UploadPartOutput#sse_customer_algorithm #sse_customer_algorithm} => String
13462
14485
  # * {Types::UploadPartOutput#sse_customer_key_md5 #sse_customer_key_md5} => String
13463
14486
  # * {Types::UploadPartOutput#ssekms_key_id #ssekms_key_id} => String
@@ -13490,6 +14513,11 @@ module Aws::S3
13490
14513
  # bucket: "BucketName", # required
13491
14514
  # content_length: 1,
13492
14515
  # content_md5: "ContentMD5",
14516
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
14517
+ # checksum_crc32: "ChecksumCRC32",
14518
+ # checksum_crc32c: "ChecksumCRC32C",
14519
+ # checksum_sha1: "ChecksumSHA1",
14520
+ # checksum_sha256: "ChecksumSHA256",
13493
14521
  # key: "ObjectKey", # required
13494
14522
  # part_number: 1, # required
13495
14523
  # upload_id: "MultipartUploadId", # required
@@ -13504,6 +14532,10 @@ module Aws::S3
13504
14532
  #
13505
14533
  # resp.server_side_encryption #=> String, one of "AES256", "aws:kms"
13506
14534
  # resp.etag #=> String
14535
+ # resp.checksum_crc32 #=> String
14536
+ # resp.checksum_crc32c #=> String
14537
+ # resp.checksum_sha1 #=> String
14538
+ # resp.checksum_sha256 #=> String
13507
14539
  # resp.sse_customer_algorithm #=> String
13508
14540
  # resp.sse_customer_key_md5 #=> String
13509
14541
  # resp.ssekms_key_id #=> String
@@ -13524,9 +14556,9 @@ module Aws::S3
13524
14556
  # `x-amz-copy-source` in your request and a byte range by adding the
13525
14557
  # request header `x-amz-copy-source-range` in your request.
13526
14558
  #
13527
- # The minimum allowable part size for a multipart upload is 5 MB. For
13528
- # more information about multipart upload limits, go to [Quick Facts][1]
13529
- # in the *Amazon S3 User Guide*.
14559
+ # For information about maximum and minimum part sizes and other
14560
+ # multipart upload specifications, see [Multipart upload limits][1] in
14561
+ # the *Amazon S3 User Guide*.
13530
14562
  #
13531
14563
  # <note markdown="1"> Instead of using an existing object as part data, you might use the
13532
14564
  # [UploadPart][2] action and provide data in your request.
@@ -13549,12 +14581,12 @@ module Aws::S3
13549
14581
  # S3 User Guide*.
13550
14582
  #
13551
14583
  # * For information about copying objects using a single atomic action
13552
- # vs. the multipart upload, see [Operations on Objects][5] in the
14584
+ # vs. a multipart upload, see [Operations on Objects][5] in the
13553
14585
  # *Amazon S3 User Guide*.
13554
14586
  #
13555
14587
  # * For information about using server-side encryption with
13556
- # customer-provided encryption keys with the UploadPartCopy operation,
13557
- # see [CopyObject][6] and [UploadPart][2].
14588
+ # customer-provided encryption keys with the `UploadPartCopy`
14589
+ # operation, see [CopyObject][6] and [UploadPart][2].
13558
14590
  #
13559
14591
  # Note the following additional considerations about the request headers
13560
14592
  # `x-amz-copy-source-if-match`, `x-amz-copy-source-if-none-match`,
@@ -13637,7 +14669,7 @@ module Aws::S3
13637
14669
  #
13638
14670
  #
13639
14671
  #
13640
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/qfacts.html
14672
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/qfacts.html
13641
14673
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
13642
14674
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
13643
14675
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
@@ -13662,12 +14694,12 @@ module Aws::S3
13662
14694
  #
13663
14695
  # When using this action with Amazon S3 on Outposts, you must direct
13664
14696
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
13665
- # takes the form
13666
- # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
13667
- # When using this action using S3 on Outposts through the Amazon Web
14697
+ # takes the form `
14698
+ # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
14699
+ # When using this action with S3 on Outposts through the Amazon Web
13668
14700
  # Services SDKs, you provide the Outposts bucket ARN in place of the
13669
14701
  # bucket name. For more information about S3 on Outposts ARNs, see
13670
- # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
14702
+ # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
13671
14703
  #
13672
14704
  #
13673
14705
  #
@@ -13683,8 +14715,8 @@ module Aws::S3
13683
14715
  # of the source bucket and key of the source object, separated by a
13684
14716
  # slash (/). For example, to copy the object `reports/january.pdf`
13685
14717
  # from the bucket `awsexamplebucket`, use
13686
- # `awsexamplebucket/reports/january.pdf`. The value must be URL
13687
- # encoded.
14718
+ # `awsexamplebucket/reports/january.pdf`. The value must be
14719
+ # URL-encoded.
13688
14720
  #
13689
14721
  # * For objects accessed through access points, specify the Amazon
13690
14722
  # Resource Name (ARN) of the object as accessed through the access
@@ -13709,7 +14741,7 @@ module Aws::S3
13709
14741
  # outpost `my-outpost` owned by account `123456789012` in Region
13710
14742
  # `us-west-2`, use the URL encoding of
13711
14743
  # `arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf`.
13712
- # The value must be URL encoded.
14744
+ # The value must be URL-encoded.
13713
14745
  #
13714
14746
  # To copy a specific version of an object, append
13715
14747
  # `?versionId=<version-id>` to the value (for example,
@@ -13787,8 +14819,8 @@ module Aws::S3
13787
14819
  # @option params [String] :request_payer
13788
14820
  # Confirms that the requester knows that they will be charged for the
13789
14821
  # request. Bucket owners need not specify this parameter in their
13790
- # requests. For information about downloading objects from requester
13791
- # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
14822
+ # requests. For information about downloading objects from Requester
14823
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
13792
14824
  # in the *Amazon S3 User Guide*.
13793
14825
  #
13794
14826
  #
@@ -13797,13 +14829,13 @@ module Aws::S3
13797
14829
  #
13798
14830
  # @option params [String] :expected_bucket_owner
13799
14831
  # The account ID of the expected destination bucket owner. If the
13800
- # destination bucket is owned by a different account, the request will
13801
- # fail with an HTTP `403 (Access Denied)` error.
14832
+ # destination bucket is owned by a different account, the request fails
14833
+ # with the HTTP status code `403 Forbidden` (access denied).
13802
14834
  #
13803
14835
  # @option params [String] :expected_source_bucket_owner
13804
14836
  # The account ID of the expected source bucket owner. If the source
13805
- # bucket is owned by a different account, the request will fail with an
13806
- # HTTP `403 (Access Denied)` error.
14837
+ # bucket is owned by a different account, the request fails with the
14838
+ # HTTP status code `403 Forbidden` (access denied).
13807
14839
  #
13808
14840
  # @return [Types::UploadPartCopyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
13809
14841
  #
@@ -13888,6 +14920,10 @@ module Aws::S3
13888
14920
  # resp.copy_source_version_id #=> String
13889
14921
  # resp.copy_part_result.etag #=> String
13890
14922
  # resp.copy_part_result.last_modified #=> Time
14923
+ # resp.copy_part_result.checksum_crc32 #=> String
14924
+ # resp.copy_part_result.checksum_crc32c #=> String
14925
+ # resp.copy_part_result.checksum_sha1 #=> String
14926
+ # resp.copy_part_result.checksum_sha256 #=> String
13891
14927
  # resp.server_side_encryption #=> String, one of "AES256", "aws:kms"
13892
14928
  # resp.sse_customer_algorithm #=> String
13893
14929
  # resp.sse_customer_key_md5 #=> String
@@ -13977,41 +15013,41 @@ module Aws::S3
13977
15013
  #
13978
15014
  # **Status Codes**
13979
15015
  #
13980
- # * *200 - OK*
15016
+ # * `200 - OK`
13981
15017
  #
13982
- # * *206 - Partial Content*
15018
+ # * `206 - Partial Content`
13983
15019
  #
13984
- # * *304 - Not Modified*
15020
+ # * `304 - Not Modified`
13985
15021
  #
13986
- # * *400 - Bad Request*
15022
+ # * `400 - Bad Request`
13987
15023
  #
13988
- # * *401 - Unauthorized*
15024
+ # * `401 - Unauthorized`
13989
15025
  #
13990
- # * *403 - Forbidden*
15026
+ # * `403 - Forbidden`
13991
15027
  #
13992
- # * *404 - Not Found*
15028
+ # * `404 - Not Found`
13993
15029
  #
13994
- # * *405 - Method Not Allowed*
15030
+ # * `405 - Method Not Allowed`
13995
15031
  #
13996
- # * *409 - Conflict*
15032
+ # * `409 - Conflict`
13997
15033
  #
13998
- # * *411 - Length Required*
15034
+ # * `411 - Length Required`
13999
15035
  #
14000
- # * *412 - Precondition Failed*
15036
+ # * `412 - Precondition Failed`
14001
15037
  #
14002
- # * *416 - Range Not Satisfiable*
15038
+ # * `416 - Range Not Satisfiable`
14003
15039
  #
14004
- # * *500 - Internal Server Error*
15040
+ # * `500 - Internal Server Error`
14005
15041
  #
14006
- # * *503 - Service Unavailable*
15042
+ # * `503 - Service Unavailable`
14007
15043
  #
14008
15044
  # @option params [String] :error_code
14009
15045
  # A string that uniquely identifies an error condition. Returned in the
14010
15046
  # &lt;Code&gt; tag of the error XML response for a corresponding
14011
15047
  # `GetObject` call. Cannot be used with a successful `StatusCode` header
14012
15048
  # or when the transformed object is provided in the body. All error
14013
- # codes from S3 are sentence-cased. Regex value is
14014
- # "^\[A-Z\]\[a-zA-Z\]+$".
15049
+ # codes from S3 are sentence-cased. The regular expression (regex) value
15050
+ # is `"^[A-Z][a-zA-Z]+$"`.
14015
15051
  #
14016
15052
  # @option params [String] :error_message
14017
15053
  # Contains a generic description of the error condition. Returned in the
@@ -14045,6 +15081,80 @@ module Aws::S3
14045
15081
  # @option params [String] :content_type
14046
15082
  # A standard MIME type describing the format of the object data.
14047
15083
  #
15084
+ # @option params [String] :checksum_crc32
15085
+ # This header can be used as a data integrity check to verify that the
15086
+ # data received is the same data that was originally sent. This
15087
+ # specifies the base64-encoded, 32-bit CRC32 checksum of the object
15088
+ # returned by the Object Lambda function. This may not match the
15089
+ # checksum for the object stored in Amazon S3. Amazon S3 will perform
15090
+ # validation of the checksum values only when the original `GetObject`
15091
+ # request required checksum validation. For more information about
15092
+ # checksums, see [Checking object integrity][1] in the *Amazon S3 User
15093
+ # Guide*.
15094
+ #
15095
+ # Only one checksum header can be specified at a time. If you supply
15096
+ # multiple checksum headers, this request will fail.
15097
+ #
15098
+ #
15099
+ #
15100
+ #
15101
+ #
15102
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
15103
+ #
15104
+ # @option params [String] :checksum_crc32c
15105
+ # This header can be used as a data integrity check to verify that the
15106
+ # data received is the same data that was originally sent. This
15107
+ # specifies the base64-encoded, 32-bit CRC32C checksum of the object
15108
+ # returned by the Object Lambda function. This may not match the
15109
+ # checksum for the object stored in Amazon S3. Amazon S3 will perform
15110
+ # validation of the checksum values only when the original `GetObject`
15111
+ # request required checksum validation. For more information about
15112
+ # checksums, see [Checking object integrity][1] in the *Amazon S3 User
15113
+ # Guide*.
15114
+ #
15115
+ # Only one checksum header can be specified at a time. If you supply
15116
+ # multiple checksum headers, this request will fail.
15117
+ #
15118
+ #
15119
+ #
15120
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
15121
+ #
15122
+ # @option params [String] :checksum_sha1
15123
+ # This header can be used as a data integrity check to verify that the
15124
+ # data received is the same data that was originally sent. This
15125
+ # specifies the base64-encoded, 160-bit SHA-1 digest of the object
15126
+ # returned by the Object Lambda function. This may not match the
15127
+ # checksum for the object stored in Amazon S3. Amazon S3 will perform
15128
+ # validation of the checksum values only when the original `GetObject`
15129
+ # request required checksum validation. For more information about
15130
+ # checksums, see [Checking object integrity][1] in the *Amazon S3 User
15131
+ # Guide*.
15132
+ #
15133
+ # Only one checksum header can be specified at a time. If you supply
15134
+ # multiple checksum headers, this request will fail.
15135
+ #
15136
+ #
15137
+ #
15138
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
15139
+ #
15140
+ # @option params [String] :checksum_sha256
15141
+ # This header can be used as a data integrity check to verify that the
15142
+ # data received is the same data that was originally sent. This
15143
+ # specifies the base64-encoded, 256-bit SHA-256 digest of the object
15144
+ # returned by the Object Lambda function. This may not match the
15145
+ # checksum for the object stored in Amazon S3. Amazon S3 will perform
15146
+ # validation of the checksum values only when the original `GetObject`
15147
+ # request required checksum validation. For more information about
15148
+ # checksums, see [Checking object integrity][1] in the *Amazon S3 User
15149
+ # Guide*.
15150
+ #
15151
+ # Only one checksum header can be specified at a time. If you supply
15152
+ # multiple checksum headers, this request will fail.
15153
+ #
15154
+ #
15155
+ #
15156
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
15157
+ #
14048
15158
  # @option params [Boolean] :delete_marker
14049
15159
  # Specifies whether an object stored in Amazon S3 is (`true`) or is not
14050
15160
  # (`false`) a delete marker.
@@ -14057,10 +15167,10 @@ module Aws::S3
14057
15167
  # The date and time at which the object is no longer cacheable.
14058
15168
  #
14059
15169
  # @option params [String] :expiration
14060
- # If object stored in Amazon S3 expiration is configured (see PUT Bucket
14061
- # lifecycle) it includes expiry-date and rule-id key-value pairs
14062
- # providing object expiration information. The value of the rule-id is
14063
- # URL encoded.
15170
+ # If the object expiration is configured (see PUT Bucket lifecycle), the
15171
+ # response includes this header. It includes the `expiry-date` and
15172
+ # `rule-id` key-value pairs that provide the object expiration
15173
+ # information. The value of the `rule-id` is URL-encoded.
14064
15174
  #
14065
15175
  # @option params [Time,DateTime,Date,Integer,String] :last_modified
14066
15176
  # The date and time that the object was last modified.
@@ -14136,7 +15246,15 @@ module Aws::S3
14136
15246
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html
14137
15247
  #
14138
15248
  # @option params [String] :storage_class
14139
- # The class of storage used to store object in Amazon S3.
15249
+ # Provides storage class information of the object. Amazon S3 returns
15250
+ # this header for all objects except for S3 Standard storage class
15251
+ # objects.
15252
+ #
15253
+ # For more information, see [Storage Classes][1].
15254
+ #
15255
+ #
15256
+ #
15257
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
14140
15258
  #
14141
15259
  # @option params [Integer] :tag_count
14142
15260
  # The number of tags, if any, on the object.
@@ -14167,6 +15285,10 @@ module Aws::S3
14167
15285
  # content_length: 1,
14168
15286
  # content_range: "ContentRange",
14169
15287
  # content_type: "ContentType",
15288
+ # checksum_crc32: "ChecksumCRC32",
15289
+ # checksum_crc32c: "ChecksumCRC32C",
15290
+ # checksum_sha1: "ChecksumSHA1",
15291
+ # checksum_sha256: "ChecksumSHA256",
14170
15292
  # delete_marker: false,
14171
15293
  # etag: "ETag",
14172
15294
  # expires: Time.now,
@@ -14215,7 +15337,7 @@ module Aws::S3
14215
15337
  params: params,
14216
15338
  config: config)
14217
15339
  context[:gem_name] = 'aws-sdk-s3'
14218
- context[:gem_version] = '1.109.0'
15340
+ context[:gem_version] = '1.114.0'
14219
15341
  Seahorse::Client::Request.new(handlers, context)
14220
15342
  end
14221
15343