aws-sdk-s3 1.109.0 → 1.114.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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