aws-sdk-s3 1.177.0 → 1.183.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 (54) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +32 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/bucket.rb +43 -31
  5. data/lib/aws-sdk-s3/bucket_acl.rb +6 -5
  6. data/lib/aws-sdk-s3/bucket_cors.rb +6 -5
  7. data/lib/aws-sdk-s3/bucket_lifecycle.rb +2 -2
  8. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +3 -3
  9. data/lib/aws-sdk-s3/bucket_logging.rb +2 -2
  10. data/lib/aws-sdk-s3/bucket_policy.rb +6 -5
  11. data/lib/aws-sdk-s3/bucket_request_payment.rb +3 -3
  12. data/lib/aws-sdk-s3/bucket_tagging.rb +3 -3
  13. data/lib/aws-sdk-s3/bucket_versioning.rb +9 -9
  14. data/lib/aws-sdk-s3/bucket_website.rb +3 -3
  15. data/lib/aws-sdk-s3/client.rb +938 -734
  16. data/lib/aws-sdk-s3/client_api.rb +35 -2
  17. data/lib/aws-sdk-s3/endpoint_provider.rb +369 -281
  18. data/lib/aws-sdk-s3/file_downloader.rb +4 -21
  19. data/lib/aws-sdk-s3/multipart_file_uploader.rb +31 -13
  20. data/lib/aws-sdk-s3/multipart_upload.rb +50 -6
  21. data/lib/aws-sdk-s3/multipart_upload_part.rb +50 -34
  22. data/lib/aws-sdk-s3/object.rb +159 -113
  23. data/lib/aws-sdk-s3/object_acl.rb +4 -4
  24. data/lib/aws-sdk-s3/object_summary.rb +107 -83
  25. data/lib/aws-sdk-s3/object_version.rb +18 -14
  26. data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +31 -0
  27. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +11 -20
  28. data/lib/aws-sdk-s3/plugins/md5s.rb +10 -71
  29. data/lib/aws-sdk-s3/presigner.rb +4 -5
  30. data/lib/aws-sdk-s3/resource.rb +1 -1
  31. data/lib/aws-sdk-s3/types.rb +1248 -811
  32. data/lib/aws-sdk-s3.rb +1 -1
  33. data/sig/bucket.rbs +4 -3
  34. data/sig/bucket_acl.rbs +1 -1
  35. data/sig/bucket_cors.rbs +1 -1
  36. data/sig/bucket_lifecycle.rbs +1 -1
  37. data/sig/bucket_lifecycle_configuration.rbs +1 -1
  38. data/sig/bucket_logging.rbs +1 -1
  39. data/sig/bucket_policy.rbs +1 -1
  40. data/sig/bucket_request_payment.rbs +1 -1
  41. data/sig/bucket_tagging.rbs +1 -1
  42. data/sig/bucket_versioning.rbs +3 -3
  43. data/sig/bucket_website.rbs +1 -1
  44. data/sig/client.rbs +53 -31
  45. data/sig/multipart_upload.rbs +8 -1
  46. data/sig/multipart_upload_part.rbs +5 -1
  47. data/sig/object.rbs +16 -5
  48. data/sig/object_acl.rbs +1 -1
  49. data/sig/object_summary.rbs +11 -6
  50. data/sig/object_version.rbs +5 -2
  51. data/sig/resource.rbs +3 -1
  52. data/sig/types.rbs +64 -34
  53. metadata +5 -5
  54. data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +0 -31
@@ -59,34 +59,36 @@ module Aws::S3
59
59
  # requests are not supported. Directory bucket names must be unique in
60
60
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
61
61
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
62
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
62
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
63
63
  # naming restrictions, see [Directory bucket naming rules][1] in the
64
64
  # *Amazon S3 User Guide*.
65
65
  #
66
- # **Access points** - When you use this action with an access point,
67
- # you must provide the alias of the access point in place of the
68
- # bucket name or specify the access point ARN. When using the access
69
- # point ARN, you must direct requests to the access point hostname.
70
- # The access point hostname takes the form
66
+ # **Access points** - When you use this action with an access point
67
+ # for general purpose buckets, you must provide the alias of the
68
+ # access point in place of the bucket name or specify the access point
69
+ # ARN. When you use this action with an access point for directory
70
+ # buckets, you must provide the access point name in place of the
71
+ # bucket name. When using the access point ARN, you must direct
72
+ # requests to the access point hostname. The access point hostname
73
+ # takes the form
71
74
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
72
75
  # When using this action with an access point through the Amazon Web
73
76
  # Services SDKs, you provide the access point ARN in place of the
74
77
  # bucket name. For more information about access point ARNs, see
75
78
  # [Using access points][2] in the *Amazon S3 User Guide*.
76
79
  #
77
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
78
- # directory buckets.
80
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
79
81
  #
80
82
  # </note>
81
83
  #
82
- # **S3 on Outposts** - When you use this action with Amazon S3 on
83
- # Outposts, you must direct requests to the S3 on Outposts hostname.
84
- # The S3 on Outposts hostname takes the form `
84
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
85
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
86
+ # Outposts hostname takes the form `
85
87
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
86
- # When you use this action with S3 on Outposts through the Amazon Web
87
- # Services SDKs, you provide the Outposts access point ARN in place of
88
- # the bucket name. For more information about S3 on Outposts ARNs, see
89
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
88
+ # When you use this action with S3 on Outposts, the destination bucket
89
+ # must be the Outposts access point ARN or the access point alias. For
90
+ # more information about S3 on Outposts, see [What is S3 on
91
+ # Outposts?][3] in the *Amazon S3 User Guide*.
90
92
  #
91
93
  #
92
94
  #
@@ -655,14 +657,14 @@ module Aws::S3
655
657
  # Contains all the possible checksum or digest values for an object.
656
658
  #
657
659
  # @!attribute [rw] checksum_crc32
658
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
659
- # only be present if it was uploaded with the object. When you use an
660
- # API operation on an object that was uploaded using multipart
661
- # uploads, this value may not be a direct checksum value of the full
662
- # object. Instead, it's a calculation based on the checksum values of
663
- # each individual part. For more information about how checksums are
664
- # calculated with multipart uploads, see [ Checking object
665
- # integrity][1] in the *Amazon S3 User Guide*.
660
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
661
+ # checksum is only be present if the checksum was uploaded with the
662
+ # object. When you use an API operation on an object that was uploaded
663
+ # using multipart uploads, this value may not be a direct checksum
664
+ # value of the full object. Instead, it's a calculation based on the
665
+ # checksum values of each individual part. For more information about
666
+ # how checksums are calculated with multipart uploads, see [ Checking
667
+ # object integrity][1] in the *Amazon S3 User Guide*.
666
668
  #
667
669
  #
668
670
  #
@@ -670,24 +672,37 @@ module Aws::S3
670
672
  # @return [String]
671
673
  #
672
674
  # @!attribute [rw] checksum_crc32c
673
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
674
- # only be present if it was uploaded with the object. When you use an
675
- # API operation on an object that was uploaded using multipart
676
- # uploads, this value may not be a direct checksum value of the full
677
- # object. Instead, it's a calculation based on the checksum values of
678
- # each individual part. For more information about how checksums are
679
- # calculated with multipart uploads, see [ Checking object
680
- # integrity][1] in the *Amazon S3 User Guide*.
675
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
676
+ # checksum is only present if the checksum was uploaded with the
677
+ # object. When you use an API operation on an object that was uploaded
678
+ # using multipart uploads, this value may not be a direct checksum
679
+ # value of the full object. Instead, it's a calculation based on the
680
+ # checksum values of each individual part. For more information about
681
+ # how checksums are calculated with multipart uploads, see [ Checking
682
+ # object integrity][1] in the *Amazon S3 User Guide*.
681
683
  #
682
684
  #
683
685
  #
684
686
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
685
687
  # @return [String]
686
688
  #
689
+ # @!attribute [rw] checksum_crc64nvme
690
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. This
691
+ # checksum is present if the object was uploaded with the `CRC64NVME`
692
+ # checksum algorithm, or if the object was uploaded without a checksum
693
+ # (and Amazon S3 added the default checksum, `CRC64NVME`, to the
694
+ # uploaded object). For more information, see [Checking object
695
+ # integrity][1] in the *Amazon S3 User Guide*.
696
+ #
697
+ #
698
+ #
699
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
700
+ # @return [String]
701
+ #
687
702
  # @!attribute [rw] checksum_sha1
688
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
689
- # only be present if it was uploaded with the object. When you use the
690
- # API operation on an object that was uploaded using multipart
703
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
704
+ # only be present if the object was uploaded with the object. When you
705
+ # use the API operation on an object that was uploaded using multipart
691
706
  # uploads, this value may not be a direct checksum value of the full
692
707
  # object. Instead, it's a calculation based on the checksum values of
693
708
  # each individual part. For more information about how checksums are
@@ -700,9 +715,9 @@ module Aws::S3
700
715
  # @return [String]
701
716
  #
702
717
  # @!attribute [rw] checksum_sha256
703
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
704
- # only be present if it was uploaded with the object. When you use an
705
- # API operation on an object that was uploaded using multipart
718
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
719
+ # only be present if the object was uploaded with the object. When you
720
+ # use an API operation on an object that was uploaded using multipart
706
721
  # uploads, this value may not be a direct checksum value of the full
707
722
  # object. Instead, it's a calculation based on the checksum values of
708
723
  # each individual part. For more information about how checksums are
@@ -714,13 +729,25 @@ module Aws::S3
714
729
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
715
730
  # @return [String]
716
731
  #
732
+ # @!attribute [rw] checksum_type
733
+ # The checksum type that is used to calculate the object’s checksum
734
+ # value. For more information, see [Checking object integrity][1] in
735
+ # the *Amazon S3 User Guide*.
736
+ #
737
+ #
738
+ #
739
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
740
+ # @return [String]
741
+ #
717
742
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Checksum AWS API Documentation
718
743
  #
719
744
  class Checksum < Struct.new(
720
745
  :checksum_crc32,
721
746
  :checksum_crc32c,
747
+ :checksum_crc64nvme,
722
748
  :checksum_sha1,
723
- :checksum_sha256)
749
+ :checksum_sha256,
750
+ :checksum_type)
724
751
  SENSITIVE = []
725
752
  include Aws::Structure
726
753
  end
@@ -824,14 +851,14 @@ module Aws::S3
824
851
  # @return [String]
825
852
  #
826
853
  # @!attribute [rw] checksum_crc32
827
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
828
- # only be present if it was uploaded with the object. When you use an
829
- # API operation on an object that was uploaded using multipart
830
- # uploads, this value may not be a direct checksum value of the full
831
- # object. Instead, it's a calculation based on the checksum values of
832
- # each individual part. For more information about how checksums are
833
- # calculated with multipart uploads, see [ Checking object
834
- # integrity][1] in the *Amazon S3 User Guide*.
854
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
855
+ # checksum is only be present if the checksum was uploaded with the
856
+ # object. When you use an API operation on an object that was uploaded
857
+ # using multipart uploads, this value may not be a direct checksum
858
+ # value of the full object. Instead, it's a calculation based on the
859
+ # checksum values of each individual part. For more information about
860
+ # how checksums are calculated with multipart uploads, see [ Checking
861
+ # object integrity][1] in the *Amazon S3 User Guide*.
835
862
  #
836
863
  #
837
864
  #
@@ -839,24 +866,37 @@ module Aws::S3
839
866
  # @return [String]
840
867
  #
841
868
  # @!attribute [rw] checksum_crc32c
842
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
843
- # only be present if it was uploaded with the object. When you use an
844
- # API operation on an object that was uploaded using multipart
845
- # uploads, this value may not be a direct checksum value of the full
846
- # object. Instead, it's a calculation based on the checksum values of
847
- # each individual part. For more information about how checksums are
848
- # calculated with multipart uploads, see [ Checking object
849
- # integrity][1] in the *Amazon S3 User Guide*.
869
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
870
+ # checksum is only present if the checksum was uploaded with the
871
+ # object. When you use an API operation on an object that was uploaded
872
+ # using multipart uploads, this value may not be a direct checksum
873
+ # value of the full object. Instead, it's a calculation based on the
874
+ # checksum values of each individual part. For more information about
875
+ # how checksums are calculated with multipart uploads, see [ Checking
876
+ # object integrity][1] in the *Amazon S3 User Guide*.
850
877
  #
851
878
  #
852
879
  #
853
880
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
854
881
  # @return [String]
855
882
  #
883
+ # @!attribute [rw] checksum_crc64nvme
884
+ # This header can be used as a data integrity check to verify that the
885
+ # data received is the same data that was originally sent. This header
886
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
887
+ # object. The `CRC64NVME` checksum is always a full object checksum.
888
+ # For more information, see [Checking object integrity in the Amazon
889
+ # S3 User Guide][1].
890
+ #
891
+ #
892
+ #
893
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
894
+ # @return [String]
895
+ #
856
896
  # @!attribute [rw] checksum_sha1
857
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
858
- # only be present if it was uploaded with the object. When you use the
859
- # API operation on an object that was uploaded using multipart
897
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
898
+ # only be present if the object was uploaded with the object. When you
899
+ # use the API operation on an object that was uploaded using multipart
860
900
  # uploads, this value may not be a direct checksum value of the full
861
901
  # object. Instead, it's a calculation based on the checksum values of
862
902
  # each individual part. For more information about how checksums are
@@ -869,9 +909,9 @@ module Aws::S3
869
909
  # @return [String]
870
910
  #
871
911
  # @!attribute [rw] checksum_sha256
872
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
873
- # only be present if it was uploaded with the object. When you use an
874
- # API operation on an object that was uploaded using multipart
912
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
913
+ # only be present if the object was uploaded with the object. When you
914
+ # use an API operation on an object that was uploaded using multipart
875
915
  # uploads, this value may not be a direct checksum value of the full
876
916
  # object. Instead, it's a calculation based on the checksum values of
877
917
  # each individual part. For more information about how checksums are
@@ -883,6 +923,20 @@ module Aws::S3
883
923
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
884
924
  # @return [String]
885
925
  #
926
+ # @!attribute [rw] checksum_type
927
+ # The checksum type, which determines how part-level checksums are
928
+ # combined to create an object-level checksum for multipart objects.
929
+ # You can use this header as a data integrity check to verify that the
930
+ # checksum type that is received is the same checksum type that was
931
+ # specified during the `CreateMultipartUpload` request. For more
932
+ # information, see [Checking object integrity in the Amazon S3 User
933
+ # Guide][1].
934
+ #
935
+ #
936
+ #
937
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
938
+ # @return [String]
939
+ #
886
940
  # @!attribute [rw] server_side_encryption
887
941
  # The server-side encryption algorithm used when storing this object
888
942
  # in Amazon S3 (for example, `AES256`, `aws:kms`).
@@ -927,8 +981,10 @@ module Aws::S3
927
981
  :etag,
928
982
  :checksum_crc32,
929
983
  :checksum_crc32c,
984
+ :checksum_crc64nvme,
930
985
  :checksum_sha1,
931
986
  :checksum_sha256,
987
+ :checksum_type,
932
988
  :server_side_encryption,
933
989
  :version_id,
934
990
  :ssekms_key_id,
@@ -947,34 +1003,36 @@ module Aws::S3
947
1003
  # requests are not supported. Directory bucket names must be unique in
948
1004
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
949
1005
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
950
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
1006
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
951
1007
  # naming restrictions, see [Directory bucket naming rules][1] in the
952
1008
  # *Amazon S3 User Guide*.
953
1009
  #
954
- # **Access points** - When you use this action with an access point,
955
- # you must provide the alias of the access point in place of the
956
- # bucket name or specify the access point ARN. When using the access
957
- # point ARN, you must direct requests to the access point hostname.
958
- # The access point hostname takes the form
1010
+ # **Access points** - When you use this action with an access point
1011
+ # for general purpose buckets, you must provide the alias of the
1012
+ # access point in place of the bucket name or specify the access point
1013
+ # ARN. When you use this action with an access point for directory
1014
+ # buckets, you must provide the access point name in place of the
1015
+ # bucket name. When using the access point ARN, you must direct
1016
+ # requests to the access point hostname. The access point hostname
1017
+ # takes the form
959
1018
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
960
1019
  # When using this action with an access point through the Amazon Web
961
1020
  # Services SDKs, you provide the access point ARN in place of the
962
1021
  # bucket name. For more information about access point ARNs, see
963
1022
  # [Using access points][2] in the *Amazon S3 User Guide*.
964
1023
  #
965
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
966
- # directory buckets.
1024
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
967
1025
  #
968
1026
  # </note>
969
1027
  #
970
- # **S3 on Outposts** - When you use this action with Amazon S3 on
971
- # Outposts, you must direct requests to the S3 on Outposts hostname.
972
- # The S3 on Outposts hostname takes the form `
1028
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
1029
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
1030
+ # Outposts hostname takes the form `
973
1031
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
974
- # When you use this action with S3 on Outposts through the Amazon Web
975
- # Services SDKs, you provide the Outposts access point ARN in place of
976
- # the bucket name. For more information about S3 on Outposts ARNs, see
977
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
1032
+ # When you use this action with S3 on Outposts, the destination bucket
1033
+ # must be the Outposts access point ARN or the access point alias. For
1034
+ # more information about S3 on Outposts, see [What is S3 on
1035
+ # Outposts?][3] in the *Amazon S3 User Guide*.
978
1036
  #
979
1037
  #
980
1038
  #
@@ -998,7 +1056,7 @@ module Aws::S3
998
1056
  # @!attribute [rw] checksum_crc32
999
1057
  # This header can be used as a data integrity check to verify that the
1000
1058
  # data received is the same data that was originally sent. This header
1001
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
1059
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
1002
1060
  # For more information, see [Checking object integrity][1] in the
1003
1061
  # *Amazon S3 User Guide*.
1004
1062
  #
@@ -1010,9 +1068,22 @@ module Aws::S3
1010
1068
  # @!attribute [rw] checksum_crc32c
1011
1069
  # This header can be used as a data integrity check to verify that the
1012
1070
  # data received is the same data that was originally sent. This header
1013
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
1014
- # For more information, see [Checking object integrity][1] in the
1015
- # *Amazon S3 User Guide*.
1071
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the
1072
+ # object. For more information, see [Checking object integrity][1] in
1073
+ # the *Amazon S3 User Guide*.
1074
+ #
1075
+ #
1076
+ #
1077
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1078
+ # @return [String]
1079
+ #
1080
+ # @!attribute [rw] checksum_crc64nvme
1081
+ # This header can be used as a data integrity check to verify that the
1082
+ # data received is the same data that was originally sent. This header
1083
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
1084
+ # object. The `CRC64NVME` checksum is always a full object checksum.
1085
+ # For more information, see [Checking object integrity in the Amazon
1086
+ # S3 User Guide][1].
1016
1087
  #
1017
1088
  #
1018
1089
  #
@@ -1022,7 +1093,7 @@ module Aws::S3
1022
1093
  # @!attribute [rw] checksum_sha1
1023
1094
  # This header can be used as a data integrity check to verify that the
1024
1095
  # data received is the same data that was originally sent. This header
1025
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object.
1096
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object.
1026
1097
  # For more information, see [Checking object integrity][1] in the
1027
1098
  # *Amazon S3 User Guide*.
1028
1099
  #
@@ -1034,7 +1105,7 @@ module Aws::S3
1034
1105
  # @!attribute [rw] checksum_sha256
1035
1106
  # This header can be used as a data integrity check to verify that the
1036
1107
  # data received is the same data that was originally sent. This header
1037
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
1108
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
1038
1109
  # For more information, see [Checking object integrity][1] in the
1039
1110
  # *Amazon S3 User Guide*.
1040
1111
  #
@@ -1043,6 +1114,25 @@ module Aws::S3
1043
1114
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1044
1115
  # @return [String]
1045
1116
  #
1117
+ # @!attribute [rw] checksum_type
1118
+ # This header specifies the checksum type of the object, which
1119
+ # determines how part-level checksums are combined to create an
1120
+ # object-level checksum for multipart objects. You can use this header
1121
+ # as a data integrity check to verify that the checksum type that is
1122
+ # received is the same checksum that was specified. If the checksum
1123
+ # type doesn’t match the checksum type that was specified for the
1124
+ # object during the `CreateMultipartUpload` request, it’ll result in a
1125
+ # `BadDigest` error. For more information, see Checking object
1126
+ # integrity in the Amazon S3 User Guide.
1127
+ # @return [String]
1128
+ #
1129
+ # @!attribute [rw] mpu_object_size
1130
+ # The expected total object size of the multipart upload request. If
1131
+ # there’s a mismatch between the specified object size value and the
1132
+ # actual object size value, it results in an `HTTP 400 InvalidRequest`
1133
+ # error.
1134
+ # @return [Integer]
1135
+ #
1046
1136
  # @!attribute [rw] request_payer
1047
1137
  # Confirms that the requester knows that they will be charged for the
1048
1138
  # request. Bucket owners need not specify this parameter in their
@@ -1166,8 +1256,11 @@ module Aws::S3
1166
1256
  :upload_id,
1167
1257
  :checksum_crc32,
1168
1258
  :checksum_crc32c,
1259
+ :checksum_crc64nvme,
1169
1260
  :checksum_sha1,
1170
1261
  :checksum_sha256,
1262
+ :checksum_type,
1263
+ :mpu_object_size,
1171
1264
  :request_payer,
1172
1265
  :expected_bucket_owner,
1173
1266
  :if_match,
@@ -1203,63 +1296,59 @@ module Aws::S3
1203
1296
  # @return [String]
1204
1297
  #
1205
1298
  # @!attribute [rw] checksum_crc32
1206
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
1207
- # only be present if it was uploaded with the object. When you use an
1208
- # API operation on an object that was uploaded using multipart
1209
- # uploads, this value may not be a direct checksum value of the full
1210
- # object. Instead, it's a calculation based on the checksum values of
1211
- # each individual part. For more information about how checksums are
1212
- # calculated with multipart uploads, see [ Checking object
1213
- # integrity][1] in the *Amazon S3 User Guide*.
1299
+ # The Base64 encoded, 32-bit `CRC32` checksum of the part. This
1300
+ # checksum is present if the multipart upload request was created with
1301
+ # the `CRC32` checksum algorithm. For more information, see [Checking
1302
+ # object integrity][1] in the *Amazon S3 User Guide*.
1214
1303
  #
1215
1304
  #
1216
1305
  #
1217
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
1306
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1218
1307
  # @return [String]
1219
1308
  #
1220
1309
  # @!attribute [rw] checksum_crc32c
1221
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
1222
- # only be present if it was uploaded with the object. When you use an
1223
- # API operation on an object that was uploaded using multipart
1224
- # uploads, this value may not be a direct checksum value of the full
1225
- # object. Instead, it's a calculation based on the checksum values of
1226
- # each individual part. For more information about how checksums are
1227
- # calculated with multipart uploads, see [ Checking object
1228
- # integrity][1] in the *Amazon S3 User Guide*.
1310
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the part. This
1311
+ # checksum is present if the multipart upload request was created with
1312
+ # the `CRC32C` checksum algorithm. For more information, see [Checking
1313
+ # object integrity][1] in the *Amazon S3 User Guide*.
1229
1314
  #
1230
1315
  #
1231
1316
  #
1232
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
1317
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1318
+ # @return [String]
1319
+ #
1320
+ # @!attribute [rw] checksum_crc64nvme
1321
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the part. This
1322
+ # checksum is present if the multipart upload request was created with
1323
+ # the `CRC64NVME` checksum algorithm to the uploaded object). For more
1324
+ # information, see [Checking object integrity][1] in the *Amazon S3
1325
+ # User Guide*.
1326
+ #
1327
+ #
1328
+ #
1329
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1233
1330
  # @return [String]
1234
1331
  #
1235
1332
  # @!attribute [rw] checksum_sha1
1236
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
1237
- # only be present if it was uploaded with the object. When you use the
1238
- # API operation on an object that was uploaded using multipart
1239
- # uploads, this value may not be a direct checksum value of the full
1240
- # object. Instead, it's a calculation based on the checksum values of
1241
- # each individual part. For more information about how checksums are
1242
- # calculated with multipart uploads, see [ Checking object
1243
- # integrity][1] in the *Amazon S3 User Guide*.
1333
+ # The Base64 encoded, 160-bit `SHA1` checksum of the part. This
1334
+ # checksum is present if the multipart upload request was created with
1335
+ # the `SHA1` checksum algorithm. For more information, see [Checking
1336
+ # object integrity][1] in the *Amazon S3 User Guide*.
1244
1337
  #
1245
1338
  #
1246
1339
  #
1247
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
1340
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1248
1341
  # @return [String]
1249
1342
  #
1250
1343
  # @!attribute [rw] checksum_sha256
1251
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
1252
- # only be present if it was uploaded with the object. When you use an
1253
- # API operation on an object that was uploaded using multipart
1254
- # uploads, this value may not be a direct checksum value of the full
1255
- # object. Instead, it's a calculation based on the checksum values of
1256
- # each individual part. For more information about how checksums are
1257
- # calculated with multipart uploads, see [ Checking object
1258
- # integrity][1] in the *Amazon S3 User Guide*.
1344
+ # The Base64 encoded, 256-bit `SHA256` checksum of the part. This
1345
+ # checksum is present if the multipart upload request was created with
1346
+ # the `SHA256` checksum algorithm. For more information, see [Checking
1347
+ # object integrity][1] in the *Amazon S3 User Guide*.
1259
1348
  #
1260
1349
  #
1261
1350
  #
1262
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
1351
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1263
1352
  # @return [String]
1264
1353
  #
1265
1354
  # @!attribute [rw] part_number
@@ -1287,6 +1376,7 @@ module Aws::S3
1287
1376
  :etag,
1288
1377
  :checksum_crc32,
1289
1378
  :checksum_crc32c,
1379
+ :checksum_crc64nvme,
1290
1380
  :checksum_sha1,
1291
1381
  :checksum_sha256,
1292
1382
  :part_number)
@@ -1410,8 +1500,8 @@ module Aws::S3
1410
1500
  #
1411
1501
  # @!attribute [rw] ssekms_encryption_context
1412
1502
  # If present, indicates the Amazon Web Services KMS Encryption Context
1413
- # to use for object encryption. The value of this header is a
1414
- # base64-encoded UTF-8 string holding JSON with the encryption context
1503
+ # to use for object encryption. The value of this header is a Base64
1504
+ # encoded UTF-8 string holding JSON with the encryption context
1415
1505
  # key-value pairs.
1416
1506
  # @return [String]
1417
1507
  #
@@ -1491,7 +1581,7 @@ module Aws::S3
1491
1581
  # requests are not supported. Directory bucket names must be unique in
1492
1582
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
1493
1583
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
1494
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
1584
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
1495
1585
  # naming restrictions, see [Directory bucket naming rules][1] in the
1496
1586
  # *Amazon S3 User Guide*.
1497
1587
  #
@@ -1503,30 +1593,37 @@ module Aws::S3
1503
1593
  #
1504
1594
  # </note>
1505
1595
  #
1506
- # **Access points** - When you use this action with an access point,
1507
- # you must provide the alias of the access point in place of the
1508
- # bucket name or specify the access point ARN. When using the access
1509
- # point ARN, you must direct requests to the access point hostname.
1510
- # The access point hostname takes the form
1596
+ # **Access points** - When you use this action with an access point
1597
+ # for general purpose buckets, you must provide the alias of the
1598
+ # access point in place of the bucket name or specify the access point
1599
+ # ARN. When you use this action with an access point for directory
1600
+ # buckets, you must provide the access point name in place of the
1601
+ # bucket name. When using the access point ARN, you must direct
1602
+ # requests to the access point hostname. The access point hostname
1603
+ # takes the form
1511
1604
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
1512
1605
  # When using this action with an access point through the Amazon Web
1513
1606
  # Services SDKs, you provide the access point ARN in place of the
1514
1607
  # bucket name. For more information about access point ARNs, see
1515
1608
  # [Using access points][2] in the *Amazon S3 User Guide*.
1516
1609
  #
1517
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
1518
- # directory buckets.
1610
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
1519
1611
  #
1520
1612
  # </note>
1521
1613
  #
1522
- # **S3 on Outposts** - When you use this action with Amazon S3 on
1523
- # Outposts, you must direct requests to the S3 on Outposts hostname.
1524
- # The S3 on Outposts hostname takes the form `
1614
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
1615
+ # you must use the Outpost bucket access point ARN or the access point
1616
+ # alias for the destination bucket. You can only copy objects within
1617
+ # the same Outpost bucket. It's not supported to copy objects across
1618
+ # different Amazon Web Services Outposts, between buckets on the same
1619
+ # Outposts, or between Outposts buckets and any other bucket types.
1620
+ # For more information about S3 on Outposts, see [What is S3 on
1621
+ # Outposts?][3] in the *S3 on Outposts guide*. When you use this
1622
+ # action with S3 on Outposts through the REST API, you must direct
1623
+ # requests to the S3 on Outposts hostname, in the format `
1525
1624
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
1526
- # When you use this action with S3 on Outposts through the Amazon Web
1527
- # Services SDKs, you provide the Outposts access point ARN in place of
1528
- # the bucket name. For more information about S3 on Outposts ARNs, see
1529
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
1625
+ # The hostname isn't required when you use the Amazon Web Services
1626
+ # CLI or SDKs.
1530
1627
  #
1531
1628
  #
1532
1629
  #
@@ -1939,11 +2036,12 @@ module Aws::S3
1939
2036
  # availability. Depending on performance needs, you can specify a
1940
2037
  # different Storage Class.
1941
2038
  #
1942
- # <note markdown="1"> * <b>Directory buckets </b> - For directory buckets, only the S3
1943
- # Express One Zone storage class is supported to store newly created
1944
- # objects. Unsupported storage class values won't write a
1945
- # destination object and will respond with the HTTP status code `400
1946
- # Bad Request`.
2039
+ # <note markdown="1"> * <b>Directory buckets </b> - Directory buckets only support
2040
+ # `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
2041
+ # Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent
2042
+ # Access storage class) in Dedicated Local Zones. Unsupported
2043
+ # storage class values won't write a destination object and will
2044
+ # respond with the HTTP status code `400 Bad Request`.
1947
2045
  #
1948
2046
  # * <b>Amazon S3 on Outposts </b> - S3 on Outposts only uses the
1949
2047
  # `OUTPOSTS` Storage Class.
@@ -2043,21 +2141,17 @@ module Aws::S3
2043
2141
  # Signature Version in Request Authentication][1] in the *Amazon S3
2044
2142
  # User Guide*.
2045
2143
  #
2046
- # **Directory buckets** - If you specify
2047
- # `x-amz-server-side-encryption` with `aws:kms`, the `
2048
- # x-amz-server-side-encryption-aws-kms-key-id` header is implicitly
2049
- # assigned the ID of the KMS symmetric encryption customer managed key
2050
- # that's configured for your directory bucket's default encryption
2051
- # setting. If you want to specify the `
2052
- # x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you
2053
- # can only specify it with the ID (Key ID or Key ARN) of the KMS
2054
- # customer managed key that's configured for your directory bucket's
2055
- # default encryption setting. Otherwise, you get an HTTP `400 Bad
2056
- # Request` error. Only use the key ID or key ARN. The key alias format
2057
- # of the KMS key isn't supported. Your SSE-KMS configuration can only
2058
- # support 1 [customer managed key][2] per directory bucket for the
2059
- # lifetime of the bucket. The [Amazon Web Services managed key][3]
2060
- # (`aws/s3`) isn't supported.
2144
+ # **Directory buckets** - To encrypt data using SSE-KMS, it's
2145
+ # recommended to specify the `x-amz-server-side-encryption` header to
2146
+ # `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
2147
+ # header implicitly uses the bucket's default KMS customer managed
2148
+ # key ID. If you want to explicitly set the `
2149
+ # x-amz-server-side-encryption-aws-kms-key-id` header, it must match
2150
+ # the bucket's default customer managed key (using key ID or ARN, not
2151
+ # alias). Your SSE-KMS configuration can only support 1 [customer
2152
+ # managed key][2] per directory bucket's lifetime. The [Amazon Web
2153
+ # Services managed key][3] (`aws/s3`) isn't supported. Incorrect key
2154
+ # specification results in an HTTP `400 Bad Request` error.
2061
2155
  #
2062
2156
  #
2063
2157
  #
@@ -2331,11 +2425,21 @@ module Aws::S3
2331
2425
  # Creation date of the object.
2332
2426
  # @return [Time]
2333
2427
  #
2428
+ # @!attribute [rw] checksum_type
2429
+ # The checksum type that is used to calculate the object’s checksum
2430
+ # value. For more information, see [Checking object integrity][1] in
2431
+ # the *Amazon S3 User Guide*.
2432
+ #
2433
+ #
2434
+ #
2435
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2436
+ # @return [String]
2437
+ #
2334
2438
  # @!attribute [rw] checksum_crc32
2335
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
2336
- # only be present if it was uploaded with the object. For more
2337
- # information, see [ Checking object integrity][1] in the *Amazon S3
2338
- # User Guide*.
2439
+ # The Base64 encoded, 32-bit `CRC32` checksum of the object. This
2440
+ # checksum is only present if the object was uploaded with the object.
2441
+ # For more information, see [ Checking object integrity][1] in the
2442
+ # *Amazon S3 User Guide*.
2339
2443
  #
2340
2444
  #
2341
2445
  #
@@ -2343,10 +2447,23 @@ module Aws::S3
2343
2447
  # @return [String]
2344
2448
  #
2345
2449
  # @!attribute [rw] checksum_crc32c
2346
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
2347
- # only be present if it was uploaded with the object. For more
2348
- # information, see [ Checking object integrity][1] in the *Amazon S3
2349
- # User Guide*.
2450
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
2451
+ # will only be present if the object was uploaded with the object. For
2452
+ # more information, see [ Checking object integrity][1] in the *Amazon
2453
+ # S3 User Guide*.
2454
+ #
2455
+ #
2456
+ #
2457
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2458
+ # @return [String]
2459
+ #
2460
+ # @!attribute [rw] checksum_crc64nvme
2461
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. This
2462
+ # checksum is present if the object being copied was uploaded with the
2463
+ # `CRC64NVME` checksum algorithm, or if the object was uploaded
2464
+ # without a checksum (and Amazon S3 added the default checksum,
2465
+ # `CRC64NVME`, to the uploaded object). For more information, see
2466
+ # [Checking object integrity][1] in the *Amazon S3 User Guide*.
2350
2467
  #
2351
2468
  #
2352
2469
  #
@@ -2354,8 +2471,8 @@ module Aws::S3
2354
2471
  # @return [String]
2355
2472
  #
2356
2473
  # @!attribute [rw] checksum_sha1
2357
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
2358
- # only be present if it was uploaded with the object. For more
2474
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
2475
+ # only be present if the object was uploaded with the object. For more
2359
2476
  # information, see [ Checking object integrity][1] in the *Amazon S3
2360
2477
  # User Guide*.
2361
2478
  #
@@ -2365,8 +2482,8 @@ module Aws::S3
2365
2482
  # @return [String]
2366
2483
  #
2367
2484
  # @!attribute [rw] checksum_sha256
2368
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
2369
- # only be present if it was uploaded with the object. For more
2485
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
2486
+ # only be present if the object was uploaded with the object. For more
2370
2487
  # information, see [ Checking object integrity][1] in the *Amazon S3
2371
2488
  # User Guide*.
2372
2489
  #
@@ -2380,8 +2497,10 @@ module Aws::S3
2380
2497
  class CopyObjectResult < Struct.new(
2381
2498
  :etag,
2382
2499
  :last_modified,
2500
+ :checksum_type,
2383
2501
  :checksum_crc32,
2384
2502
  :checksum_crc32c,
2503
+ :checksum_crc64nvme,
2385
2504
  :checksum_sha1,
2386
2505
  :checksum_sha256)
2387
2506
  SENSITIVE = []
@@ -2399,63 +2518,63 @@ module Aws::S3
2399
2518
  # @return [Time]
2400
2519
  #
2401
2520
  # @!attribute [rw] checksum_crc32
2402
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
2403
- # only be present if it was uploaded with the object. When you use an
2404
- # API operation on an object that was uploaded using multipart
2405
- # uploads, this value may not be a direct checksum value of the full
2406
- # object. Instead, it's a calculation based on the checksum values of
2407
- # each individual part. For more information about how checksums are
2408
- # calculated with multipart uploads, see [ Checking object
2409
- # integrity][1] in the *Amazon S3 User Guide*.
2521
+ # This header can be used as a data integrity check to verify that the
2522
+ # data received is the same data that was originally sent. This header
2523
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the part.
2524
+ # For more information, see [Checking object integrity][1] in the
2525
+ # *Amazon S3 User Guide*.
2410
2526
  #
2411
2527
  #
2412
2528
  #
2413
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
2529
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2414
2530
  # @return [String]
2415
2531
  #
2416
2532
  # @!attribute [rw] checksum_crc32c
2417
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
2418
- # only be present if it was uploaded with the object. When you use an
2419
- # API operation on an object that was uploaded using multipart
2420
- # uploads, this value may not be a direct checksum value of the full
2421
- # object. Instead, it's a calculation based on the checksum values of
2422
- # each individual part. For more information about how checksums are
2423
- # calculated with multipart uploads, see [ Checking object
2424
- # integrity][1] in the *Amazon S3 User Guide*.
2533
+ # This header can be used as a data integrity check to verify that the
2534
+ # data received is the same data that was originally sent. This header
2535
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the part.
2536
+ # For more information, see [Checking object integrity][1] in the
2537
+ # *Amazon S3 User Guide*.
2425
2538
  #
2426
2539
  #
2427
2540
  #
2428
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
2541
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2542
+ # @return [String]
2543
+ #
2544
+ # @!attribute [rw] checksum_crc64nvme
2545
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the part. This
2546
+ # checksum is present if the multipart upload request was created with
2547
+ # the `CRC64NVME` checksum algorithm to the uploaded object). For more
2548
+ # information, see [Checking object integrity][1] in the *Amazon S3
2549
+ # User Guide*.
2550
+ #
2551
+ #
2552
+ #
2553
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2429
2554
  # @return [String]
2430
2555
  #
2431
2556
  # @!attribute [rw] checksum_sha1
2432
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
2433
- # only be present if it was uploaded with the object. When you use the
2434
- # API operation on an object that was uploaded using multipart
2435
- # uploads, this value may not be a direct checksum value of the full
2436
- # object. Instead, it's a calculation based on the checksum values of
2437
- # each individual part. For more information about how checksums are
2438
- # calculated with multipart uploads, see [ Checking object
2439
- # integrity][1] in the *Amazon S3 User Guide*.
2557
+ # This header can be used as a data integrity check to verify that the
2558
+ # data received is the same data that was originally sent. This header
2559
+ # specifies the Base64 encoded, 160-bit `SHA1` checksum of the part.
2560
+ # For more information, see [Checking object integrity][1] in the
2561
+ # *Amazon S3 User Guide*.
2440
2562
  #
2441
2563
  #
2442
2564
  #
2443
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
2565
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2444
2566
  # @return [String]
2445
2567
  #
2446
2568
  # @!attribute [rw] checksum_sha256
2447
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
2448
- # only be present if it was uploaded with the object. When you use an
2449
- # API operation on an object that was uploaded using multipart
2450
- # uploads, this value may not be a direct checksum value of the full
2451
- # object. Instead, it's a calculation based on the checksum values of
2452
- # each individual part. For more information about how checksums are
2453
- # calculated with multipart uploads, see [ Checking object
2454
- # integrity][1] in the *Amazon S3 User Guide*.
2569
+ # This header can be used as a data integrity check to verify that the
2570
+ # data received is the same data that was originally sent. This header
2571
+ # specifies the Base64 encoded, 256-bit `SHA256` checksum of the part.
2572
+ # For more information, see [Checking object integrity][1] in the
2573
+ # *Amazon S3 User Guide*.
2455
2574
  #
2456
2575
  #
2457
2576
  #
2458
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
2577
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2459
2578
  # @return [String]
2460
2579
  #
2461
2580
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyPartResult AWS API Documentation
@@ -2465,6 +2584,7 @@ module Aws::S3
2465
2584
  :last_modified,
2466
2585
  :checksum_crc32,
2467
2586
  :checksum_crc32c,
2587
+ :checksum_crc64nvme,
2468
2588
  :checksum_sha1,
2469
2589
  :checksum_sha256)
2470
2590
  SENSITIVE = []
@@ -2481,7 +2601,8 @@ module Aws::S3
2481
2601
  # (Ireland) Region.
2482
2602
  #
2483
2603
  # If you don't specify a Region, the bucket is created in the US East
2484
- # (N. Virginia) Region (us-east-1) by default.
2604
+ # (N. Virginia) Region (us-east-1) by default. Configurations using
2605
+ # the value `EU` will create a bucket in `eu-west-1`.
2485
2606
  #
2486
2607
  # For a list of the valid values for all of the Amazon Web Services
2487
2608
  # Regions, see [Regions and Endpoints][1].
@@ -2804,8 +2925,8 @@ module Aws::S3
2804
2925
  #
2805
2926
  # @!attribute [rw] ssekms_encryption_context
2806
2927
  # If present, indicates the Amazon Web Services KMS Encryption Context
2807
- # to use for object encryption. The value of this header is a
2808
- # Base64-encoded string of a UTF-8 encoded JSON, which contains the
2928
+ # to use for object encryption. The value of this header is a Base64
2929
+ # encoded string of a UTF-8 encoded JSON, which contains the
2809
2930
  # encryption context as key-value pairs.
2810
2931
  # @return [String]
2811
2932
  #
@@ -2828,6 +2949,16 @@ module Aws::S3
2828
2949
  # The algorithm that was used to create a checksum of the object.
2829
2950
  # @return [String]
2830
2951
  #
2952
+ # @!attribute [rw] checksum_type
2953
+ # Indicates the checksum type that you want Amazon S3 to use to
2954
+ # calculate the object’s checksum value. For more information, see
2955
+ # [Checking object integrity in the Amazon S3 User Guide][1].
2956
+ #
2957
+ #
2958
+ #
2959
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2960
+ # @return [String]
2961
+ #
2831
2962
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUploadOutput AWS API Documentation
2832
2963
  #
2833
2964
  class CreateMultipartUploadOutput < Struct.new(
@@ -2843,7 +2974,8 @@ module Aws::S3
2843
2974
  :ssekms_encryption_context,
2844
2975
  :bucket_key_enabled,
2845
2976
  :request_charged,
2846
- :checksum_algorithm)
2977
+ :checksum_algorithm,
2978
+ :checksum_type)
2847
2979
  SENSITIVE = [:ssekms_key_id, :ssekms_encryption_context]
2848
2980
  include Aws::Structure
2849
2981
  end
@@ -2885,34 +3017,36 @@ module Aws::S3
2885
3017
  # requests are not supported. Directory bucket names must be unique in
2886
3018
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
2887
3019
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
2888
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
3020
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
2889
3021
  # naming restrictions, see [Directory bucket naming rules][1] in the
2890
3022
  # *Amazon S3 User Guide*.
2891
3023
  #
2892
- # **Access points** - When you use this action with an access point,
2893
- # you must provide the alias of the access point in place of the
2894
- # bucket name or specify the access point ARN. When using the access
2895
- # point ARN, you must direct requests to the access point hostname.
2896
- # The access point hostname takes the form
3024
+ # **Access points** - When you use this action with an access point
3025
+ # for general purpose buckets, you must provide the alias of the
3026
+ # access point in place of the bucket name or specify the access point
3027
+ # ARN. When you use this action with an access point for directory
3028
+ # buckets, you must provide the access point name in place of the
3029
+ # bucket name. When using the access point ARN, you must direct
3030
+ # requests to the access point hostname. The access point hostname
3031
+ # takes the form
2897
3032
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
2898
3033
  # When using this action with an access point through the Amazon Web
2899
3034
  # Services SDKs, you provide the access point ARN in place of the
2900
3035
  # bucket name. For more information about access point ARNs, see
2901
3036
  # [Using access points][2] in the *Amazon S3 User Guide*.
2902
3037
  #
2903
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
2904
- # directory buckets.
3038
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
2905
3039
  #
2906
3040
  # </note>
2907
3041
  #
2908
- # **S3 on Outposts** - When you use this action with Amazon S3 on
2909
- # Outposts, you must direct requests to the S3 on Outposts hostname.
2910
- # The S3 on Outposts hostname takes the form `
3042
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
3043
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
3044
+ # Outposts hostname takes the form `
2911
3045
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
2912
- # When you use this action with S3 on Outposts through the Amazon Web
2913
- # Services SDKs, you provide the Outposts access point ARN in place of
2914
- # the bucket name. For more information about S3 on Outposts ARNs, see
2915
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
3046
+ # When you use this action with S3 on Outposts, the destination bucket
3047
+ # must be the Outposts access point ARN or the access point alias. For
3048
+ # more information about S3 on Outposts, see [What is S3 on
3049
+ # Outposts?][3] in the *Amazon S3 User Guide*.
2916
3050
  #
2917
3051
  #
2918
3052
  #
@@ -3280,8 +3414,10 @@ module Aws::S3
3280
3414
  # specify a different Storage Class. For more information, see
3281
3415
  # [Storage Classes][1] in the *Amazon S3 User Guide*.
3282
3416
  #
3283
- # <note markdown="1"> * For directory buckets, only the S3 Express One Zone storage class
3284
- # is supported to store newly created objects.
3417
+ # <note markdown="1"> * Directory buckets only support `EXPRESS_ONEZONE` (the S3 Express
3418
+ # One Zone storage class) in Availability Zones and `ONEZONE_IA`
3419
+ # (the S3 One Zone-Infrequent Access storage class) in Dedicated
3420
+ # Local Zones.
3285
3421
  #
3286
3422
  # * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.
3287
3423
  #
@@ -3350,21 +3486,17 @@ module Aws::S3
3350
3486
  # `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
3351
3487
  # Amazon Web Services managed key (`aws/s3`) to protect the data.
3352
3488
  #
3353
- # **Directory buckets** - If you specify
3354
- # `x-amz-server-side-encryption` with `aws:kms`, the `
3355
- # x-amz-server-side-encryption-aws-kms-key-id` header is implicitly
3356
- # assigned the ID of the KMS symmetric encryption customer managed key
3357
- # that's configured for your directory bucket's default encryption
3358
- # setting. If you want to specify the `
3359
- # x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you
3360
- # can only specify it with the ID (Key ID or Key ARN) of the KMS
3361
- # customer managed key that's configured for your directory bucket's
3362
- # default encryption setting. Otherwise, you get an HTTP `400 Bad
3363
- # Request` error. Only use the key ID or key ARN. The key alias format
3364
- # of the KMS key isn't supported. Your SSE-KMS configuration can only
3365
- # support 1 [customer managed key][1] per directory bucket for the
3366
- # lifetime of the bucket. The [Amazon Web Services managed key][2]
3367
- # (`aws/s3`) isn't supported.
3489
+ # **Directory buckets** - To encrypt data using SSE-KMS, it's
3490
+ # recommended to specify the `x-amz-server-side-encryption` header to
3491
+ # `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
3492
+ # header implicitly uses the bucket's default KMS customer managed
3493
+ # key ID. If you want to explicitly set the `
3494
+ # x-amz-server-side-encryption-aws-kms-key-id` header, it must match
3495
+ # the bucket's default customer managed key (using key ID or ARN, not
3496
+ # alias). Your SSE-KMS configuration can only support 1 [customer
3497
+ # managed key][1] per directory bucket's lifetime. The [Amazon Web
3498
+ # Services managed key][2] (`aws/s3`) isn't supported. Incorrect key
3499
+ # specification results in an HTTP `400 Bad Request` error.
3368
3500
  #
3369
3501
  #
3370
3502
  #
@@ -3374,7 +3506,7 @@ module Aws::S3
3374
3506
  #
3375
3507
  # @!attribute [rw] ssekms_encryption_context
3376
3508
  # Specifies the Amazon Web Services KMS Encryption Context to use for
3377
- # object encryption. The value of this header is a Base64-encoded
3509
+ # object encryption. The value of this header is a Base64 encoded
3378
3510
  # string of a UTF-8 encoded JSON, which contains the encryption
3379
3511
  # context as key-value pairs.
3380
3512
  #
@@ -3482,6 +3614,16 @@ module Aws::S3
3482
3614
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
3483
3615
  # @return [String]
3484
3616
  #
3617
+ # @!attribute [rw] checksum_type
3618
+ # Indicates the checksum type that you want Amazon S3 to use to
3619
+ # calculate the object’s checksum value. For more information, see
3620
+ # [Checking object integrity in the Amazon S3 User Guide][1].
3621
+ #
3622
+ #
3623
+ #
3624
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
3625
+ # @return [String]
3626
+ #
3485
3627
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUploadRequest AWS API Documentation
3486
3628
  #
3487
3629
  class CreateMultipartUploadRequest < Struct.new(
@@ -3514,7 +3656,8 @@ module Aws::S3
3514
3656
  :object_lock_retain_until_date,
3515
3657
  :object_lock_legal_hold_status,
3516
3658
  :expected_bucket_owner,
3517
- :checksum_algorithm)
3659
+ :checksum_algorithm,
3660
+ :checksum_type)
3518
3661
  SENSITIVE = [:sse_customer_key, :ssekms_key_id, :ssekms_encryption_context]
3519
3662
  include Aws::Structure
3520
3663
  end
@@ -3532,8 +3675,8 @@ module Aws::S3
3532
3675
  #
3533
3676
  # @!attribute [rw] ssekms_encryption_context
3534
3677
  # If present, indicates the Amazon Web Services KMS Encryption Context
3535
- # to use for object encryption. The value of this header is a
3536
- # Base64-encoded string of a UTF-8 encoded JSON, which contains the
3678
+ # to use for object encryption. The value of this header is a Base64
3679
+ # encoded string of a UTF-8 encoded JSON, which contains the
3537
3680
  # encryption context as key-value pairs. This value is stored as
3538
3681
  # object metadata and automatically gets passed on to Amazon Web
3539
3682
  # Services KMS for future `GetObject` operations on this object.
@@ -3588,7 +3731,7 @@ module Aws::S3
3588
3731
  #
3589
3732
  #
3590
3733
  #
3591
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
3734
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html
3592
3735
  # @return [String]
3593
3736
  #
3594
3737
  # @!attribute [rw] ssekms_key_id
@@ -3602,8 +3745,8 @@ module Aws::S3
3602
3745
  # must use the full Key ARN not the Key ID.
3603
3746
  #
3604
3747
  # Your SSE-KMS configuration can only support 1 [customer managed
3605
- # key][1] per directory bucket for the lifetime of the bucket. The
3606
- # [Amazon Web Services managed key][2] (`aws/s3`) isn't supported.
3748
+ # key][1] per directory bucket's lifetime. The [Amazon Web Services
3749
+ # managed key][2] (`aws/s3`) isn't supported.
3607
3750
  #
3608
3751
  #
3609
3752
  #
@@ -3614,7 +3757,7 @@ module Aws::S3
3614
3757
  # @!attribute [rw] ssekms_encryption_context
3615
3758
  # Specifies the Amazon Web Services KMS Encryption Context as an
3616
3759
  # additional encryption context to use for object encryption. The
3617
- # value of this header is a Base64-encoded string of a UTF-8 encoded
3760
+ # value of this header is a Base64 encoded string of a UTF-8 encoded
3618
3761
  # JSON, which contains the encryption context as key-value pairs. This
3619
3762
  # value is stored as object metadata and automatically gets passed on
3620
3763
  # to Amazon Web Services KMS for future `GetObject` operations on this
@@ -4106,7 +4249,7 @@ module Aws::S3
4106
4249
  # Information about the delete marker.
4107
4250
  #
4108
4251
  # @!attribute [rw] owner
4109
- # The account that created the delete marker.&gt;
4252
+ # The account that created the delete marker.
4110
4253
  # @return [Types::Owner]
4111
4254
  #
4112
4255
  # @!attribute [rw] key
@@ -4182,10 +4325,16 @@ module Aws::S3
4182
4325
  # deleted was (true) or was not (false) a delete marker before
4183
4326
  # deletion. In a simple DELETE, this header indicates whether (true)
4184
4327
  # or not (false) the current version of the object is a delete marker.
4328
+ # To learn more about delete markers, see [Working with delete
4329
+ # markers][1].
4185
4330
  #
4186
4331
  # <note markdown="1"> This functionality is not supported for directory buckets.
4187
4332
  #
4188
4333
  # </note>
4334
+ #
4335
+ #
4336
+ #
4337
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
4189
4338
  # @return [Boolean]
4190
4339
  #
4191
4340
  # @!attribute [rw] version_id
@@ -4225,34 +4374,36 @@ module Aws::S3
4225
4374
  # requests are not supported. Directory bucket names must be unique in
4226
4375
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
4227
4376
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
4228
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
4377
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
4229
4378
  # naming restrictions, see [Directory bucket naming rules][1] in the
4230
4379
  # *Amazon S3 User Guide*.
4231
4380
  #
4232
- # **Access points** - When you use this action with an access point,
4233
- # you must provide the alias of the access point in place of the
4234
- # bucket name or specify the access point ARN. When using the access
4235
- # point ARN, you must direct requests to the access point hostname.
4236
- # The access point hostname takes the form
4381
+ # **Access points** - When you use this action with an access point
4382
+ # for general purpose buckets, you must provide the alias of the
4383
+ # access point in place of the bucket name or specify the access point
4384
+ # ARN. When you use this action with an access point for directory
4385
+ # buckets, you must provide the access point name in place of the
4386
+ # bucket name. When using the access point ARN, you must direct
4387
+ # requests to the access point hostname. The access point hostname
4388
+ # takes the form
4237
4389
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
4238
4390
  # When using this action with an access point through the Amazon Web
4239
4391
  # Services SDKs, you provide the access point ARN in place of the
4240
4392
  # bucket name. For more information about access point ARNs, see
4241
4393
  # [Using access points][2] in the *Amazon S3 User Guide*.
4242
4394
  #
4243
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
4244
- # directory buckets.
4395
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
4245
4396
  #
4246
4397
  # </note>
4247
4398
  #
4248
- # **S3 on Outposts** - When you use this action with Amazon S3 on
4249
- # Outposts, you must direct requests to the S3 on Outposts hostname.
4250
- # The S3 on Outposts hostname takes the form `
4399
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
4400
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
4401
+ # Outposts hostname takes the form `
4251
4402
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
4252
- # When you use this action with S3 on Outposts through the Amazon Web
4253
- # Services SDKs, you provide the Outposts access point ARN in place of
4254
- # the bucket name. For more information about S3 on Outposts ARNs, see
4255
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
4403
+ # When you use this action with S3 on Outposts, the destination bucket
4404
+ # must be the Outposts access point ARN or the access point alias. For
4405
+ # more information about S3 on Outposts, see [What is S3 on
4406
+ # Outposts?][3] in the *Amazon S3 User Guide*.
4256
4407
  #
4257
4408
  #
4258
4409
  #
@@ -4335,7 +4486,7 @@ module Aws::S3
4335
4486
  #
4336
4487
  #
4337
4488
  #
4338
- # [1]: https://docs.aws.amazon.com/https:/tools.ietf.org/html/rfc7232
4489
+ # [1]: https://tools.ietf.org/html/rfc7232
4339
4490
  # @return [String]
4340
4491
  #
4341
4492
  # @!attribute [rw] if_match_last_modified_time
@@ -4399,25 +4550,28 @@ module Aws::S3
4399
4550
  # The bucket name containing the objects from which to remove the
4400
4551
  # tags.
4401
4552
  #
4402
- # **Access points** - When you use this action with an access point,
4403
- # you must provide the alias of the access point in place of the
4404
- # bucket name or specify the access point ARN. When using the access
4405
- # point ARN, you must direct requests to the access point hostname.
4406
- # The access point hostname takes the form
4553
+ # **Access points** - When you use this action with an access point
4554
+ # for general purpose buckets, you must provide the alias of the
4555
+ # access point in place of the bucket name or specify the access point
4556
+ # ARN. When you use this action with an access point for directory
4557
+ # buckets, you must provide the access point name in place of the
4558
+ # bucket name. When using the access point ARN, you must direct
4559
+ # requests to the access point hostname. The access point hostname
4560
+ # takes the form
4407
4561
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
4408
4562
  # When using this action with an access point through the Amazon Web
4409
4563
  # Services SDKs, you provide the access point ARN in place of the
4410
4564
  # bucket name. For more information about access point ARNs, see
4411
4565
  # [Using access points][1] in the *Amazon S3 User Guide*.
4412
4566
  #
4413
- # **S3 on Outposts** - When you use this action with Amazon S3 on
4414
- # Outposts, you must direct requests to the S3 on Outposts hostname.
4415
- # The S3 on Outposts hostname takes the form `
4567
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
4568
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
4569
+ # Outposts hostname takes the form `
4416
4570
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
4417
- # When you use this action with S3 on Outposts through the Amazon Web
4418
- # Services SDKs, you provide the Outposts access point ARN in place of
4419
- # the bucket name. For more information about S3 on Outposts ARNs, see
4420
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
4571
+ # When you use this action with S3 on Outposts, the destination bucket
4572
+ # must be the Outposts access point ARN or the access point alias. For
4573
+ # more information about S3 on Outposts, see [What is S3 on
4574
+ # Outposts?][2] in the *Amazon S3 User Guide*.
4421
4575
  #
4422
4576
  #
4423
4577
  #
@@ -4490,34 +4644,36 @@ module Aws::S3
4490
4644
  # requests are not supported. Directory bucket names must be unique in
4491
4645
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
4492
4646
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
4493
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
4647
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
4494
4648
  # naming restrictions, see [Directory bucket naming rules][1] in the
4495
4649
  # *Amazon S3 User Guide*.
4496
4650
  #
4497
- # **Access points** - When you use this action with an access point,
4498
- # you must provide the alias of the access point in place of the
4499
- # bucket name or specify the access point ARN. When using the access
4500
- # point ARN, you must direct requests to the access point hostname.
4501
- # The access point hostname takes the form
4651
+ # **Access points** - When you use this action with an access point
4652
+ # for general purpose buckets, you must provide the alias of the
4653
+ # access point in place of the bucket name or specify the access point
4654
+ # ARN. When you use this action with an access point for directory
4655
+ # buckets, you must provide the access point name in place of the
4656
+ # bucket name. When using the access point ARN, you must direct
4657
+ # requests to the access point hostname. The access point hostname
4658
+ # takes the form
4502
4659
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
4503
4660
  # When using this action with an access point through the Amazon Web
4504
4661
  # Services SDKs, you provide the access point ARN in place of the
4505
4662
  # bucket name. For more information about access point ARNs, see
4506
4663
  # [Using access points][2] in the *Amazon S3 User Guide*.
4507
4664
  #
4508
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
4509
- # directory buckets.
4665
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
4510
4666
  #
4511
4667
  # </note>
4512
4668
  #
4513
- # **S3 on Outposts** - When you use this action with Amazon S3 on
4514
- # Outposts, you must direct requests to the S3 on Outposts hostname.
4515
- # The S3 on Outposts hostname takes the form `
4669
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
4670
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
4671
+ # Outposts hostname takes the form `
4516
4672
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
4517
- # When you use this action with S3 on Outposts through the Amazon Web
4518
- # Services SDKs, you provide the Outposts access point ARN in place of
4519
- # the bucket name. For more information about S3 on Outposts ARNs, see
4520
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
4673
+ # When you use this action with S3 on Outposts, the destination bucket
4674
+ # must be the Outposts access point ARN or the access point alias. For
4675
+ # more information about S3 on Outposts, see [What is S3 on
4676
+ # Outposts?][3] in the *Amazon S3 User Guide*.
4521
4677
  #
4522
4678
  #
4523
4679
  #
@@ -4605,6 +4761,8 @@ module Aws::S3
4605
4761
  #
4606
4762
  # * `CRC32C`
4607
4763
  #
4764
+ # * `CRC64NVME`
4765
+ #
4608
4766
  # * `SHA1`
4609
4767
  #
4610
4768
  # * `SHA256`
@@ -4614,10 +4772,8 @@ module Aws::S3
4614
4772
  #
4615
4773
  # If the individual checksum value you provide through
4616
4774
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm
4617
- # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores
4618
- # any provided `ChecksumAlgorithm` parameter and uses the checksum
4619
- # algorithm that matches the provided value in
4620
- # `x-amz-checksum-algorithm `.
4775
+ # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
4776
+ # request with a `BadDigest` error.
4621
4777
  #
4622
4778
  # If you provide an individual checksum, Amazon S3 ignores any
4623
4779
  # provided `ChecksumAlgorithm` parameter.
@@ -4681,10 +4837,16 @@ module Aws::S3
4681
4837
  # deleted was (true) or was not (false) a delete marker before
4682
4838
  # deletion. In a simple DELETE, this header indicates whether (true)
4683
4839
  # or not (false) the current version of the object is a delete marker.
4840
+ # To learn more about delete markers, see [Working with delete
4841
+ # markers][1].
4684
4842
  #
4685
4843
  # <note markdown="1"> This functionality is not supported for directory buckets.
4686
4844
  #
4687
4845
  # </note>
4846
+ #
4847
+ #
4848
+ #
4849
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
4688
4850
  # @return [Boolean]
4689
4851
  #
4690
4852
  # @!attribute [rw] delete_marker_version_id
@@ -6143,7 +6305,7 @@ module Aws::S3
6143
6305
  # Indicates which default minimum object size behavior is applied to
6144
6306
  # the lifecycle configuration.
6145
6307
  #
6146
- # <note markdown="1"> This parameter applies to general purpose buckets only. It is not
6308
+ # <note markdown="1"> This parameter applies to general purpose buckets only. It isn't
6147
6309
  # supported for directory bucket lifecycle configurations.
6148
6310
  #
6149
6311
  # </note>
@@ -6231,8 +6393,10 @@ module Aws::S3
6231
6393
  # @!attribute [rw] location_constraint
6232
6394
  # Specifies the Region where the bucket resides. For a list of all the
6233
6395
  # Amazon S3 supported location constraints by Region, see [Regions and
6234
- # Endpoints][1]. Buckets in Region `us-east-1` have a
6235
- # LocationConstraint of `null`.
6396
+ # Endpoints][1].
6397
+ #
6398
+ # Buckets in Region `us-east-1` have a LocationConstraint of `null`.
6399
+ # Buckets with a LocationConstraint of `EU` reside in `eu-west-1`.
6236
6400
  #
6237
6401
  #
6238
6402
  #
@@ -6532,8 +6696,7 @@ module Aws::S3
6532
6696
  # `InvalidAccessPointAliasError` is returned. For more information
6533
6697
  # about `InvalidAccessPointAliasError`, see [List of Error Codes][2].
6534
6698
  #
6535
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
6536
- # directory buckets.
6699
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
6537
6700
  #
6538
6701
  # </note>
6539
6702
  #
@@ -6818,11 +6981,14 @@ module Aws::S3
6818
6981
  # The bucket name that contains the object for which to get the ACL
6819
6982
  # information.
6820
6983
  #
6821
- # **Access points** - When you use this action with an access point,
6822
- # you must provide the alias of the access point in place of the
6823
- # bucket name or specify the access point ARN. When using the access
6824
- # point ARN, you must direct requests to the access point hostname.
6825
- # The access point hostname takes the form
6984
+ # **Access points** - When you use this action with an access point
6985
+ # for general purpose buckets, you must provide the alias of the
6986
+ # access point in place of the bucket name or specify the access point
6987
+ # ARN. When you use this action with an access point for directory
6988
+ # buckets, you must provide the access point name in place of the
6989
+ # bucket name. When using the access point ARN, you must direct
6990
+ # requests to the access point hostname. The access point hostname
6991
+ # takes the form
6826
6992
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
6827
6993
  # When using this action with an access point through the Amazon Web
6828
6994
  # Services SDKs, you provide the access point ARN in place of the
@@ -6886,11 +7052,16 @@ module Aws::S3
6886
7052
  # @!attribute [rw] delete_marker
6887
7053
  # Specifies whether the object retrieved was (`true`) or was not
6888
7054
  # (`false`) a delete marker. If `false`, this response header does not
6889
- # appear in the response.
7055
+ # appear in the response. To learn more about delete markers, see
7056
+ # [Working with delete markers][1].
6890
7057
  #
6891
7058
  # <note markdown="1"> This functionality is not supported for directory buckets.
6892
7059
  #
6893
7060
  # </note>
7061
+ #
7062
+ #
7063
+ #
7064
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
6894
7065
  # @return [Boolean]
6895
7066
  #
6896
7067
  # @!attribute [rw] last_modified
@@ -6934,8 +7105,10 @@ module Aws::S3
6934
7105
  #
6935
7106
  # For more information, see [Storage Classes][1].
6936
7107
  #
6937
- # <note markdown="1"> **Directory buckets** - Only the S3 Express One Zone storage class
6938
- # is supported by directory buckets to store objects.
7108
+ # <note markdown="1"> **Directory buckets** - Directory buckets only support
7109
+ # `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
7110
+ # Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent
7111
+ # Access storage class) in Dedicated Local Zones.
6939
7112
  #
6940
7113
  # </note>
6941
7114
  #
@@ -7030,34 +7203,36 @@ module Aws::S3
7030
7203
  # requests are not supported. Directory bucket names must be unique in
7031
7204
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
7032
7205
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
7033
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
7206
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
7034
7207
  # naming restrictions, see [Directory bucket naming rules][1] in the
7035
7208
  # *Amazon S3 User Guide*.
7036
7209
  #
7037
- # **Access points** - When you use this action with an access point,
7038
- # you must provide the alias of the access point in place of the
7039
- # bucket name or specify the access point ARN. When using the access
7040
- # point ARN, you must direct requests to the access point hostname.
7041
- # The access point hostname takes the form
7210
+ # **Access points** - When you use this action with an access point
7211
+ # for general purpose buckets, you must provide the alias of the
7212
+ # access point in place of the bucket name or specify the access point
7213
+ # ARN. When you use this action with an access point for directory
7214
+ # buckets, you must provide the access point name in place of the
7215
+ # bucket name. When using the access point ARN, you must direct
7216
+ # requests to the access point hostname. The access point hostname
7217
+ # takes the form
7042
7218
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7043
7219
  # When using this action with an access point through the Amazon Web
7044
7220
  # Services SDKs, you provide the access point ARN in place of the
7045
7221
  # bucket name. For more information about access point ARNs, see
7046
7222
  # [Using access points][2] in the *Amazon S3 User Guide*.
7047
7223
  #
7048
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
7049
- # directory buckets.
7224
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
7050
7225
  #
7051
7226
  # </note>
7052
7227
  #
7053
- # **S3 on Outposts** - When you use this action with Amazon S3 on
7054
- # Outposts, you must direct requests to the S3 on Outposts hostname.
7055
- # The S3 on Outposts hostname takes the form `
7228
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
7229
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
7230
+ # Outposts hostname takes the form `
7056
7231
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
7057
- # When you use this action with S3 on Outposts through the Amazon Web
7058
- # Services SDKs, you provide the Outposts access point ARN in place of
7059
- # the bucket name. For more information about S3 on Outposts ARNs, see
7060
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
7232
+ # When you use this action with S3 on Outposts, the destination bucket
7233
+ # must be the Outposts access point ARN or the access point alias. For
7234
+ # more information about S3 on Outposts, see [What is S3 on
7235
+ # Outposts?][3] in the *Amazon S3 User Guide*.
7061
7236
  #
7062
7237
  #
7063
7238
  #
@@ -7185,11 +7360,14 @@ module Aws::S3
7185
7360
  # The bucket name containing the object whose legal hold status you
7186
7361
  # want to retrieve.
7187
7362
  #
7188
- # **Access points** - When you use this action with an access point,
7189
- # you must provide the alias of the access point in place of the
7190
- # bucket name or specify the access point ARN. When using the access
7191
- # point ARN, you must direct requests to the access point hostname.
7192
- # The access point hostname takes the form
7363
+ # **Access points** - When you use this action with an access point
7364
+ # for general purpose buckets, you must provide the alias of the
7365
+ # access point in place of the bucket name or specify the access point
7366
+ # ARN. When you use this action with an access point for directory
7367
+ # buckets, you must provide the access point name in place of the
7368
+ # bucket name. When using the access point ARN, you must direct
7369
+ # requests to the access point hostname. The access point hostname
7370
+ # takes the form
7193
7371
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7194
7372
  # When using this action with an access point through the Amazon Web
7195
7373
  # Services SDKs, you provide the access point ARN in place of the
@@ -7263,11 +7441,14 @@ module Aws::S3
7263
7441
  # @!attribute [rw] bucket
7264
7442
  # The bucket whose Object Lock configuration you want to retrieve.
7265
7443
  #
7266
- # **Access points** - When you use this action with an access point,
7267
- # you must provide the alias of the access point in place of the
7268
- # bucket name or specify the access point ARN. When using the access
7269
- # point ARN, you must direct requests to the access point hostname.
7270
- # The access point hostname takes the form
7444
+ # **Access points** - When you use this action with an access point
7445
+ # for general purpose buckets, you must provide the alias of the
7446
+ # access point in place of the bucket name or specify the access point
7447
+ # ARN. When you use this action with an access point for directory
7448
+ # buckets, you must provide the access point name in place of the
7449
+ # bucket name. When using the access point ARN, you must direct
7450
+ # requests to the access point hostname. The access point hostname
7451
+ # takes the form
7271
7452
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7272
7453
  # When using this action with an access point through the Amazon Web
7273
7454
  # Services SDKs, you provide the access point ARN in place of the
@@ -7341,9 +7522,10 @@ module Aws::S3
7341
7522
  # Provides information about object restoration action and expiration
7342
7523
  # time of the restored object copy.
7343
7524
  #
7344
- # <note markdown="1"> This functionality is not supported for directory buckets. Only the
7345
- # S3 Express One Zone storage class is supported by directory buckets
7346
- # to store objects.
7525
+ # <note markdown="1"> This functionality is not supported for directory buckets. Directory
7526
+ # buckets only support `EXPRESS_ONEZONE` (the S3 Express One Zone
7527
+ # storage class) in Availability Zones and `ONEZONE_IA` (the S3 One
7528
+ # Zone-Infrequent Access storage class) in Dedicated Local Zones.
7347
7529
  #
7348
7530
  # </note>
7349
7531
  # @return [String]
@@ -7367,10 +7549,10 @@ module Aws::S3
7367
7549
  # @return [String]
7368
7550
  #
7369
7551
  # @!attribute [rw] checksum_crc32
7370
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
7371
- # only be present if it was uploaded with the object. For more
7372
- # information, see [ Checking object integrity][1] in the *Amazon S3
7373
- # User Guide*.
7552
+ # The Base64 encoded, 32-bit `CRC32` checksum of the object. This
7553
+ # checksum is only present if the object was uploaded with the object.
7554
+ # For more information, see [ Checking object integrity][1] in the
7555
+ # *Amazon S3 User Guide*.
7374
7556
  #
7375
7557
  #
7376
7558
  #
@@ -7378,10 +7560,20 @@ module Aws::S3
7378
7560
  # @return [String]
7379
7561
  #
7380
7562
  # @!attribute [rw] checksum_crc32c
7381
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
7382
- # only be present if it was uploaded with the object. For more
7383
- # information, see [ Checking object integrity][1] in the *Amazon S3
7384
- # User Guide*.
7563
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
7564
+ # will only be present if the object was uploaded with the object. For
7565
+ # more information, see [ Checking object integrity][1] in the *Amazon
7566
+ # S3 User Guide*.
7567
+ #
7568
+ #
7569
+ #
7570
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
7571
+ # @return [String]
7572
+ #
7573
+ # @!attribute [rw] checksum_crc64nvme
7574
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. For
7575
+ # more information, see [Checking object integrity in the Amazon S3
7576
+ # User Guide][1].
7385
7577
  #
7386
7578
  #
7387
7579
  #
@@ -7389,8 +7581,8 @@ module Aws::S3
7389
7581
  # @return [String]
7390
7582
  #
7391
7583
  # @!attribute [rw] checksum_sha1
7392
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
7393
- # only be present if it was uploaded with the object. For more
7584
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
7585
+ # only be present if the object was uploaded with the object. For more
7394
7586
  # information, see [ Checking object integrity][1] in the *Amazon S3
7395
7587
  # User Guide*.
7396
7588
  #
@@ -7400,8 +7592,8 @@ module Aws::S3
7400
7592
  # @return [String]
7401
7593
  #
7402
7594
  # @!attribute [rw] checksum_sha256
7403
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
7404
- # only be present if it was uploaded with the object. For more
7595
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
7596
+ # only be present if the object was uploaded with the object. For more
7405
7597
  # information, see [ Checking object integrity][1] in the *Amazon S3
7406
7598
  # User Guide*.
7407
7599
  #
@@ -7410,6 +7602,19 @@ module Aws::S3
7410
7602
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
7411
7603
  # @return [String]
7412
7604
  #
7605
+ # @!attribute [rw] checksum_type
7606
+ # The checksum type, which determines how part-level checksums are
7607
+ # combined to create an object-level checksum for multipart objects.
7608
+ # You can use this header response to verify that the checksum type
7609
+ # that is received is the same checksum type that was specified in the
7610
+ # `CreateMultipartUpload` request. For more information, see [Checking
7611
+ # object integrity][1] in the *Amazon S3 User Guide*.
7612
+ #
7613
+ #
7614
+ #
7615
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
7616
+ # @return [String]
7617
+ #
7413
7618
  # @!attribute [rw] missing_meta
7414
7619
  # This is set to the number of metadata entries not returned in the
7415
7620
  # headers that are prefixed with `x-amz-meta-`. This can happen if you
@@ -7519,8 +7724,10 @@ module Aws::S3
7519
7724
  # this header for all objects except for S3 Standard storage class
7520
7725
  # objects.
7521
7726
  #
7522
- # <note markdown="1"> <b>Directory buckets </b> - Only the S3 Express One Zone storage
7523
- # class is supported by directory buckets to store objects.
7727
+ # <note markdown="1"> <b>Directory buckets </b> - Directory buckets only support
7728
+ # `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
7729
+ # Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent
7730
+ # Access storage class) in Dedicated Local Zones.
7524
7731
  #
7525
7732
  # </note>
7526
7733
  # @return [String]
@@ -7604,8 +7811,10 @@ module Aws::S3
7604
7811
  :etag,
7605
7812
  :checksum_crc32,
7606
7813
  :checksum_crc32c,
7814
+ :checksum_crc64nvme,
7607
7815
  :checksum_sha1,
7608
7816
  :checksum_sha256,
7817
+ :checksum_type,
7609
7818
  :missing_meta,
7610
7819
  :version_id,
7611
7820
  :cache_control,
@@ -7644,15 +7853,18 @@ module Aws::S3
7644
7853
  # requests are not supported. Directory bucket names must be unique in
7645
7854
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
7646
7855
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
7647
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
7856
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
7648
7857
  # naming restrictions, see [Directory bucket naming rules][1] in the
7649
7858
  # *Amazon S3 User Guide*.
7650
7859
  #
7651
- # **Access points** - When you use this action with an access point,
7652
- # you must provide the alias of the access point in place of the
7653
- # bucket name or specify the access point ARN. When using the access
7654
- # point ARN, you must direct requests to the access point hostname.
7655
- # The access point hostname takes the form
7860
+ # **Access points** - When you use this action with an access point
7861
+ # for general purpose buckets, you must provide the alias of the
7862
+ # access point in place of the bucket name or specify the access point
7863
+ # ARN. When you use this action with an access point for directory
7864
+ # buckets, you must provide the access point name in place of the
7865
+ # bucket name. When using the access point ARN, you must direct
7866
+ # requests to the access point hostname. The access point hostname
7867
+ # takes the form
7656
7868
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7657
7869
  # When using this action with an access point through the Amazon Web
7658
7870
  # Services SDKs, you provide the access point ARN in place of the
@@ -7665,19 +7877,18 @@ module Aws::S3
7665
7877
  # hostname takes the form
7666
7878
  # *AccessPointName*-*AccountId*.s3-object-lambda.*Region*.amazonaws.com.
7667
7879
  #
7668
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
7669
- # directory buckets.
7880
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
7670
7881
  #
7671
7882
  # </note>
7672
7883
  #
7673
- # **S3 on Outposts** - When you use this action with Amazon S3 on
7674
- # Outposts, you must direct requests to the S3 on Outposts hostname.
7675
- # The S3 on Outposts hostname takes the form `
7884
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
7885
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
7886
+ # Outposts hostname takes the form `
7676
7887
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
7677
- # When you use this action with S3 on Outposts through the Amazon Web
7678
- # Services SDKs, you provide the Outposts access point ARN in place of
7679
- # the bucket name. For more information about S3 on Outposts ARNs, see
7680
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
7888
+ # When you use this action with S3 on Outposts, the destination bucket
7889
+ # must be the Outposts access point ARN or the access point alias. For
7890
+ # more information about S3 on Outposts, see [What is S3 on
7891
+ # Outposts?][3] in the *Amazon S3 User Guide*.
7681
7892
  #
7682
7893
  #
7683
7894
  #
@@ -7951,15 +8162,6 @@ module Aws::S3
7951
8162
  #
7952
8163
  # @!attribute [rw] checksum_mode
7953
8164
  # To retrieve the checksum, this mode must be enabled.
7954
- #
7955
- # **General purpose buckets** - In addition, if you enable checksum
7956
- # mode and the object is uploaded with a [checksum][1] and encrypted
7957
- # with an Key Management Service (KMS) key, you must have permission
7958
- # to use the `kms:Decrypt` action to retrieve the checksum.
7959
- #
7960
- #
7961
- #
7962
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
7963
8165
  # @return [String]
7964
8166
  #
7965
8167
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRequest AWS API Documentation
@@ -8006,11 +8208,14 @@ module Aws::S3
8006
8208
  # The bucket name containing the object whose retention settings you
8007
8209
  # want to retrieve.
8008
8210
  #
8009
- # **Access points** - When you use this action with an access point,
8010
- # you must provide the alias of the access point in place of the
8011
- # bucket name or specify the access point ARN. When using the access
8012
- # point ARN, you must direct requests to the access point hostname.
8013
- # The access point hostname takes the form
8211
+ # **Access points** - When you use this action with an access point
8212
+ # for general purpose buckets, you must provide the alias of the
8213
+ # access point in place of the bucket name or specify the access point
8214
+ # ARN. When you use this action with an access point for directory
8215
+ # buckets, you must provide the access point name in place of the
8216
+ # bucket name. When using the access point ARN, you must direct
8217
+ # requests to the access point hostname. The access point hostname
8218
+ # takes the form
8014
8219
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
8015
8220
  # When using this action with an access point through the Amazon Web
8016
8221
  # Services SDKs, you provide the access point ARN in place of the
@@ -8091,25 +8296,28 @@ module Aws::S3
8091
8296
  # The bucket name containing the object for which to get the tagging
8092
8297
  # information.
8093
8298
  #
8094
- # **Access points** - When you use this action with an access point,
8095
- # you must provide the alias of the access point in place of the
8096
- # bucket name or specify the access point ARN. When using the access
8097
- # point ARN, you must direct requests to the access point hostname.
8098
- # The access point hostname takes the form
8299
+ # **Access points** - When you use this action with an access point
8300
+ # for general purpose buckets, you must provide the alias of the
8301
+ # access point in place of the bucket name or specify the access point
8302
+ # ARN. When you use this action with an access point for directory
8303
+ # buckets, you must provide the access point name in place of the
8304
+ # bucket name. When using the access point ARN, you must direct
8305
+ # requests to the access point hostname. The access point hostname
8306
+ # takes the form
8099
8307
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
8100
8308
  # When using this action with an access point through the Amazon Web
8101
8309
  # Services SDKs, you provide the access point ARN in place of the
8102
8310
  # bucket name. For more information about access point ARNs, see
8103
8311
  # [Using access points][1] in the *Amazon S3 User Guide*.
8104
8312
  #
8105
- # **S3 on Outposts** - When you use this action with Amazon S3 on
8106
- # Outposts, you must direct requests to the S3 on Outposts hostname.
8107
- # The S3 on Outposts hostname takes the form `
8313
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
8314
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
8315
+ # Outposts hostname takes the form `
8108
8316
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8109
- # When you use this action with S3 on Outposts through the Amazon Web
8110
- # Services SDKs, you provide the Outposts access point ARN in place of
8111
- # the bucket name. For more information about S3 on Outposts ARNs, see
8112
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
8317
+ # When you use this action with S3 on Outposts, the destination bucket
8318
+ # must be the Outposts access point ARN or the access point alias. For
8319
+ # more information about S3 on Outposts, see [What is S3 on
8320
+ # Outposts?][2] in the *Amazon S3 User Guide*.
8113
8321
  #
8114
8322
  #
8115
8323
  #
@@ -8413,15 +8621,18 @@ module Aws::S3
8413
8621
  # requests are not supported. Directory bucket names must be unique in
8414
8622
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
8415
8623
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
8416
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
8624
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
8417
8625
  # naming restrictions, see [Directory bucket naming rules][1] in the
8418
8626
  # *Amazon S3 User Guide*.
8419
8627
  #
8420
- # **Access points** - When you use this action with an access point,
8421
- # you must provide the alias of the access point in place of the
8422
- # bucket name or specify the access point ARN. When using the access
8423
- # point ARN, you must direct requests to the access point hostname.
8424
- # The access point hostname takes the form
8628
+ # **Access points** - When you use this action with an access point
8629
+ # for general purpose buckets, you must provide the alias of the
8630
+ # access point in place of the bucket name or specify the access point
8631
+ # ARN. When you use this action with an access point for directory
8632
+ # buckets, you must provide the access point name in place of the
8633
+ # bucket name. When using the access point ARN, you must direct
8634
+ # requests to the access point hostname. The access point hostname
8635
+ # takes the form
8425
8636
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
8426
8637
  # When using this action with an access point through the Amazon Web
8427
8638
  # Services SDKs, you provide the access point ARN in place of the
@@ -8435,19 +8646,18 @@ module Aws::S3
8435
8646
  # `InvalidAccessPointAliasError` is returned. For more information
8436
8647
  # about `InvalidAccessPointAliasError`, see [List of Error Codes][3].
8437
8648
  #
8438
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
8439
- # directory buckets.
8649
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
8440
8650
  #
8441
8651
  # </note>
8442
8652
  #
8443
- # **S3 on Outposts** - When you use this action with Amazon S3 on
8444
- # Outposts, you must direct requests to the S3 on Outposts hostname.
8445
- # The S3 on Outposts hostname takes the form `
8653
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
8654
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
8655
+ # Outposts hostname takes the form `
8446
8656
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8447
- # When you use this action with S3 on Outposts through the Amazon Web
8448
- # Services SDKs, you provide the Outposts access point ARN in place of
8449
- # the bucket name. For more information about S3 on Outposts ARNs, see
8450
- # [What is S3 on Outposts?][4] in the *Amazon S3 User Guide*.
8657
+ # When you use this action with S3 on Outposts, the destination bucket
8658
+ # must be the Outposts access point ARN or the access point alias. For
8659
+ # more information about S3 on Outposts, see [What is S3 on
8660
+ # Outposts?][4] in the *Amazon S3 User Guide*.
8451
8661
  #
8452
8662
  #
8453
8663
  #
@@ -8523,9 +8733,10 @@ module Aws::S3
8523
8733
  # For more information about archiving objects, see [Transitioning
8524
8734
  # Objects: General Considerations][2].
8525
8735
  #
8526
- # <note markdown="1"> This functionality is not supported for directory buckets. Only the
8527
- # S3 Express One Zone storage class is supported by directory buckets
8528
- # to store objects.
8736
+ # <note markdown="1"> This functionality is not supported for directory buckets. Directory
8737
+ # buckets only support `EXPRESS_ONEZONE` (the S3 Express One Zone
8738
+ # storage class) in Availability Zones and `ONEZONE_IA` (the S3 One
8739
+ # Zone-Infrequent Access storage class) in Dedicated Local Zones.
8529
8740
  #
8530
8741
  # </note>
8531
8742
  #
@@ -8552,14 +8763,14 @@ module Aws::S3
8552
8763
  # @return [Integer]
8553
8764
  #
8554
8765
  # @!attribute [rw] checksum_crc32
8555
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
8556
- # only be present if it was uploaded with the object. When you use an
8557
- # API operation on an object that was uploaded using multipart
8558
- # uploads, this value may not be a direct checksum value of the full
8559
- # object. Instead, it's a calculation based on the checksum values of
8560
- # each individual part. For more information about how checksums are
8561
- # calculated with multipart uploads, see [ Checking object
8562
- # integrity][1] in the *Amazon S3 User Guide*.
8766
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
8767
+ # checksum is only be present if the checksum was uploaded with the
8768
+ # object. When you use an API operation on an object that was uploaded
8769
+ # using multipart uploads, this value may not be a direct checksum
8770
+ # value of the full object. Instead, it's a calculation based on the
8771
+ # checksum values of each individual part. For more information about
8772
+ # how checksums are calculated with multipart uploads, see [ Checking
8773
+ # object integrity][1] in the *Amazon S3 User Guide*.
8563
8774
  #
8564
8775
  #
8565
8776
  #
@@ -8567,24 +8778,34 @@ module Aws::S3
8567
8778
  # @return [String]
8568
8779
  #
8569
8780
  # @!attribute [rw] checksum_crc32c
8570
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
8571
- # only be present if it was uploaded with the object. When you use an
8572
- # API operation on an object that was uploaded using multipart
8573
- # uploads, this value may not be a direct checksum value of the full
8574
- # object. Instead, it's a calculation based on the checksum values of
8575
- # each individual part. For more information about how checksums are
8576
- # calculated with multipart uploads, see [ Checking object
8577
- # integrity][1] in the *Amazon S3 User Guide*.
8781
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
8782
+ # checksum is only present if the checksum was uploaded with the
8783
+ # object. When you use an API operation on an object that was uploaded
8784
+ # using multipart uploads, this value may not be a direct checksum
8785
+ # value of the full object. Instead, it's a calculation based on the
8786
+ # checksum values of each individual part. For more information about
8787
+ # how checksums are calculated with multipart uploads, see [ Checking
8788
+ # object integrity][1] in the *Amazon S3 User Guide*.
8578
8789
  #
8579
8790
  #
8580
8791
  #
8581
8792
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
8582
8793
  # @return [String]
8583
8794
  #
8795
+ # @!attribute [rw] checksum_crc64nvme
8796
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. For
8797
+ # more information, see [Checking object integrity in the Amazon S3
8798
+ # User Guide][1].
8799
+ #
8800
+ #
8801
+ #
8802
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
8803
+ # @return [String]
8804
+ #
8584
8805
  # @!attribute [rw] checksum_sha1
8585
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
8586
- # only be present if it was uploaded with the object. When you use the
8587
- # API operation on an object that was uploaded using multipart
8806
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
8807
+ # only be present if the object was uploaded with the object. When you
8808
+ # use the API operation on an object that was uploaded using multipart
8588
8809
  # uploads, this value may not be a direct checksum value of the full
8589
8810
  # object. Instead, it's a calculation based on the checksum values of
8590
8811
  # each individual part. For more information about how checksums are
@@ -8597,9 +8818,9 @@ module Aws::S3
8597
8818
  # @return [String]
8598
8819
  #
8599
8820
  # @!attribute [rw] checksum_sha256
8600
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
8601
- # only be present if it was uploaded with the object. When you use an
8602
- # API operation on an object that was uploaded using multipart
8821
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
8822
+ # only be present if the object was uploaded with the object. When you
8823
+ # use an API operation on an object that was uploaded using multipart
8603
8824
  # uploads, this value may not be a direct checksum value of the full
8604
8825
  # object. Instead, it's a calculation based on the checksum values of
8605
8826
  # each individual part. For more information about how checksums are
@@ -8611,6 +8832,19 @@ module Aws::S3
8611
8832
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
8612
8833
  # @return [String]
8613
8834
  #
8835
+ # @!attribute [rw] checksum_type
8836
+ # The checksum type, which determines how part-level checksums are
8837
+ # combined to create an object-level checksum for multipart objects.
8838
+ # You can use this header response to verify that the checksum type
8839
+ # that is received is the same checksum type that was specified in
8840
+ # `CreateMultipartUpload` request. For more information, see [Checking
8841
+ # object integrity in the Amazon S3 User Guide][1].
8842
+ #
8843
+ #
8844
+ #
8845
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
8846
+ # @return [String]
8847
+ #
8614
8848
  # @!attribute [rw] etag
8615
8849
  # An entity tag (ETag) is an opaque identifier assigned by a web
8616
8850
  # server to a specific version of a resource found at a URL.
@@ -8658,6 +8892,11 @@ module Aws::S3
8658
8892
  # A standard MIME type describing the format of the object data.
8659
8893
  # @return [String]
8660
8894
  #
8895
+ # @!attribute [rw] content_range
8896
+ # The portion of the object returned in the response for a `GET`
8897
+ # request.
8898
+ # @return [String]
8899
+ #
8661
8900
  # @!attribute [rw] expires
8662
8901
  # The date and time at which the object is no longer cacheable.
8663
8902
  # @return [Time]
@@ -8723,8 +8962,10 @@ module Aws::S3
8723
8962
  #
8724
8963
  # For more information, see [Storage Classes][1].
8725
8964
  #
8726
- # <note markdown="1"> <b>Directory buckets </b> - Only the S3 Express One Zone storage
8727
- # class is supported by directory buckets to store objects.
8965
+ # <note markdown="1"> <b>Directory buckets </b> - Directory buckets only support
8966
+ # `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
8967
+ # Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent
8968
+ # Access storage class) in Dedicated Local Zones.
8728
8969
  #
8729
8970
  # </note>
8730
8971
  #
@@ -8850,8 +9091,10 @@ module Aws::S3
8850
9091
  :content_length,
8851
9092
  :checksum_crc32,
8852
9093
  :checksum_crc32c,
9094
+ :checksum_crc64nvme,
8853
9095
  :checksum_sha1,
8854
9096
  :checksum_sha256,
9097
+ :checksum_type,
8855
9098
  :etag,
8856
9099
  :missing_meta,
8857
9100
  :version_id,
@@ -8860,6 +9103,7 @@ module Aws::S3
8860
9103
  :content_encoding,
8861
9104
  :content_language,
8862
9105
  :content_type,
9106
+ :content_range,
8863
9107
  :expires,
8864
9108
  :expires_string,
8865
9109
  :website_redirect_location,
@@ -8889,34 +9133,36 @@ module Aws::S3
8889
9133
  # requests are not supported. Directory bucket names must be unique in
8890
9134
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
8891
9135
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
8892
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
9136
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
8893
9137
  # naming restrictions, see [Directory bucket naming rules][1] in the
8894
9138
  # *Amazon S3 User Guide*.
8895
9139
  #
8896
- # **Access points** - When you use this action with an access point,
8897
- # you must provide the alias of the access point in place of the
8898
- # bucket name or specify the access point ARN. When using the access
8899
- # point ARN, you must direct requests to the access point hostname.
8900
- # The access point hostname takes the form
9140
+ # **Access points** - When you use this action with an access point
9141
+ # for general purpose buckets, you must provide the alias of the
9142
+ # access point in place of the bucket name or specify the access point
9143
+ # ARN. When you use this action with an access point for directory
9144
+ # buckets, you must provide the access point name in place of the
9145
+ # bucket name. When using the access point ARN, you must direct
9146
+ # requests to the access point hostname. The access point hostname
9147
+ # takes the form
8901
9148
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
8902
9149
  # When using this action with an access point through the Amazon Web
8903
9150
  # Services SDKs, you provide the access point ARN in place of the
8904
9151
  # bucket name. For more information about access point ARNs, see
8905
9152
  # [Using access points][2] in the *Amazon S3 User Guide*.
8906
9153
  #
8907
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
8908
- # directory buckets.
9154
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
8909
9155
  #
8910
9156
  # </note>
8911
9157
  #
8912
- # **S3 on Outposts** - When you use this action with Amazon S3 on
8913
- # Outposts, you must direct requests to the S3 on Outposts hostname.
8914
- # The S3 on Outposts hostname takes the form `
9158
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
9159
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
9160
+ # Outposts hostname takes the form `
8915
9161
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8916
- # When you use this action with S3 on Outposts through the Amazon Web
8917
- # Services SDKs, you provide the Outposts access point ARN in place of
8918
- # the bucket name. For more information about S3 on Outposts ARNs, see
8919
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
9162
+ # When you use this action with S3 on Outposts, the destination bucket
9163
+ # must be the Outposts access point ARN or the access point alias. For
9164
+ # more information about S3 on Outposts, see [What is S3 on
9165
+ # Outposts?][3] in the *Amazon S3 User Guide*.
8920
9166
  #
8921
9167
  #
8922
9168
  #
@@ -10423,34 +10669,36 @@ module Aws::S3
10423
10669
  # requests are not supported. Directory bucket names must be unique in
10424
10670
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
10425
10671
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
10426
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
10672
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
10427
10673
  # naming restrictions, see [Directory bucket naming rules][1] in the
10428
10674
  # *Amazon S3 User Guide*.
10429
10675
  #
10430
- # **Access points** - When you use this action with an access point,
10431
- # you must provide the alias of the access point in place of the
10432
- # bucket name or specify the access point ARN. When using the access
10433
- # point ARN, you must direct requests to the access point hostname.
10434
- # The access point hostname takes the form
10676
+ # **Access points** - When you use this action with an access point
10677
+ # for general purpose buckets, you must provide the alias of the
10678
+ # access point in place of the bucket name or specify the access point
10679
+ # ARN. When you use this action with an access point for directory
10680
+ # buckets, you must provide the access point name in place of the
10681
+ # bucket name. When using the access point ARN, you must direct
10682
+ # requests to the access point hostname. The access point hostname
10683
+ # takes the form
10435
10684
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
10436
10685
  # When using this action with an access point through the Amazon Web
10437
10686
  # Services SDKs, you provide the access point ARN in place of the
10438
10687
  # bucket name. For more information about access point ARNs, see
10439
10688
  # [Using access points][2] in the *Amazon S3 User Guide*.
10440
10689
  #
10441
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
10442
- # directory buckets.
10690
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
10443
10691
  #
10444
10692
  # </note>
10445
10693
  #
10446
- # **S3 on Outposts** - When you use this action with Amazon S3 on
10447
- # Outposts, you must direct requests to the S3 on Outposts hostname.
10448
- # The S3 on Outposts hostname takes the form `
10694
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
10695
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
10696
+ # Outposts hostname takes the form `
10449
10697
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
10450
- # When you use this action with S3 on Outposts through the Amazon Web
10451
- # Services SDKs, you provide the Outposts access point ARN in place of
10452
- # the bucket name. For more information about S3 on Outposts ARNs, see
10453
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
10698
+ # When you use this action with S3 on Outposts, the destination bucket
10699
+ # must be the Outposts access point ARN or the access point alias. For
10700
+ # more information about S3 on Outposts, see [What is S3 on
10701
+ # Outposts?][3] in the *Amazon S3 User Guide*.
10454
10702
  #
10455
10703
  #
10456
10704
  #
@@ -10636,7 +10884,12 @@ module Aws::S3
10636
10884
  # @return [Array<Types::ObjectVersion>]
10637
10885
  #
10638
10886
  # @!attribute [rw] delete_markers
10639
- # Container for an object that is a delete marker.
10887
+ # Container for an object that is a delete marker. To learn more about
10888
+ # delete markers, see [Working with delete markers][1].
10889
+ #
10890
+ #
10891
+ #
10892
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
10640
10893
  # @return [Array<Types::DeleteMarkerEntry>]
10641
10894
  #
10642
10895
  # @!attribute [rw] name
@@ -10945,34 +11198,36 @@ module Aws::S3
10945
11198
  # requests are not supported. Directory bucket names must be unique in
10946
11199
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
10947
11200
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
10948
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
11201
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
10949
11202
  # naming restrictions, see [Directory bucket naming rules][1] in the
10950
11203
  # *Amazon S3 User Guide*.
10951
11204
  #
10952
- # **Access points** - When you use this action with an access point,
10953
- # you must provide the alias of the access point in place of the
10954
- # bucket name or specify the access point ARN. When using the access
10955
- # point ARN, you must direct requests to the access point hostname.
10956
- # The access point hostname takes the form
11205
+ # **Access points** - When you use this action with an access point
11206
+ # for general purpose buckets, you must provide the alias of the
11207
+ # access point in place of the bucket name or specify the access point
11208
+ # ARN. When you use this action with an access point for directory
11209
+ # buckets, you must provide the access point name in place of the
11210
+ # bucket name. When using the access point ARN, you must direct
11211
+ # requests to the access point hostname. The access point hostname
11212
+ # takes the form
10957
11213
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
10958
11214
  # When using this action with an access point through the Amazon Web
10959
11215
  # Services SDKs, you provide the access point ARN in place of the
10960
11216
  # bucket name. For more information about access point ARNs, see
10961
11217
  # [Using access points][2] in the *Amazon S3 User Guide*.
10962
11218
  #
10963
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
10964
- # directory buckets.
11219
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
10965
11220
  #
10966
11221
  # </note>
10967
11222
  #
10968
- # **S3 on Outposts** - When you use this action with Amazon S3 on
10969
- # Outposts, you must direct requests to the S3 on Outposts hostname.
10970
- # The S3 on Outposts hostname takes the form `
11223
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
11224
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
11225
+ # Outposts hostname takes the form `
10971
11226
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
10972
- # When you use this action with S3 on Outposts through the Amazon Web
10973
- # Services SDKs, you provide the Outposts access point ARN in place of
10974
- # the bucket name. For more information about S3 on Outposts ARNs, see
10975
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
11227
+ # When you use this action with S3 on Outposts, the destination bucket
11228
+ # must be the Outposts access point ARN or the access point alias. For
11229
+ # more information about S3 on Outposts, see [What is S3 on
11230
+ # Outposts?][3] in the *Amazon S3 User Guide*.
10976
11231
  #
10977
11232
  #
10978
11233
  #
@@ -11216,34 +11471,36 @@ module Aws::S3
11216
11471
  # requests are not supported. Directory bucket names must be unique in
11217
11472
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
11218
11473
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
11219
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
11474
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
11220
11475
  # naming restrictions, see [Directory bucket naming rules][1] in the
11221
11476
  # *Amazon S3 User Guide*.
11222
11477
  #
11223
- # **Access points** - When you use this action with an access point,
11224
- # you must provide the alias of the access point in place of the
11225
- # bucket name or specify the access point ARN. When using the access
11226
- # point ARN, you must direct requests to the access point hostname.
11227
- # The access point hostname takes the form
11478
+ # **Access points** - When you use this action with an access point
11479
+ # for general purpose buckets, you must provide the alias of the
11480
+ # access point in place of the bucket name or specify the access point
11481
+ # ARN. When you use this action with an access point for directory
11482
+ # buckets, you must provide the access point name in place of the
11483
+ # bucket name. When using the access point ARN, you must direct
11484
+ # requests to the access point hostname. The access point hostname
11485
+ # takes the form
11228
11486
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
11229
11487
  # When using this action with an access point through the Amazon Web
11230
11488
  # Services SDKs, you provide the access point ARN in place of the
11231
11489
  # bucket name. For more information about access point ARNs, see
11232
11490
  # [Using access points][2] in the *Amazon S3 User Guide*.
11233
11491
  #
11234
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
11235
- # directory buckets.
11492
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
11236
11493
  #
11237
11494
  # </note>
11238
11495
  #
11239
- # **S3 on Outposts** - When you use this action with Amazon S3 on
11240
- # Outposts, you must direct requests to the S3 on Outposts hostname.
11241
- # The S3 on Outposts hostname takes the form `
11496
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
11497
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
11498
+ # Outposts hostname takes the form `
11242
11499
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
11243
- # When you use this action with S3 on Outposts through the Amazon Web
11244
- # Services SDKs, you provide the Outposts access point ARN in place of
11245
- # the bucket name. For more information about S3 on Outposts ARNs, see
11246
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
11500
+ # When you use this action with S3 on Outposts, the destination bucket
11501
+ # must be the Outposts access point ARN or the access point alias. For
11502
+ # more information about S3 on Outposts, see [What is S3 on
11503
+ # Outposts?][3] in the *Amazon S3 User Guide*.
11247
11504
  #
11248
11505
  #
11249
11506
  #
@@ -11477,8 +11734,10 @@ module Aws::S3
11477
11734
  # @!attribute [rw] storage_class
11478
11735
  # The class of storage used to store the uploaded object.
11479
11736
  #
11480
- # <note markdown="1"> **Directory buckets** - Only the S3 Express One Zone storage class
11481
- # is supported by directory buckets to store objects.
11737
+ # <note markdown="1"> **Directory buckets** - Directory buckets only support
11738
+ # `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
11739
+ # Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent
11740
+ # Access storage class) in Dedicated Local Zones.
11482
11741
  #
11483
11742
  # </note>
11484
11743
  # @return [String]
@@ -11496,6 +11755,19 @@ module Aws::S3
11496
11755
  # The algorithm that was used to create a checksum of the object.
11497
11756
  # @return [String]
11498
11757
  #
11758
+ # @!attribute [rw] checksum_type
11759
+ # The checksum type, which determines how part-level checksums are
11760
+ # combined to create an object-level checksum for multipart objects.
11761
+ # You can use this header response to verify that the checksum type
11762
+ # that is received is the same checksum type that was specified in
11763
+ # `CreateMultipartUpload` request. For more information, see [Checking
11764
+ # object integrity in the Amazon S3 User Guide][1].
11765
+ #
11766
+ #
11767
+ #
11768
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11769
+ # @return [String]
11770
+ #
11499
11771
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListPartsOutput AWS API Documentation
11500
11772
  #
11501
11773
  class ListPartsOutput < Struct.new(
@@ -11513,7 +11785,8 @@ module Aws::S3
11513
11785
  :owner,
11514
11786
  :storage_class,
11515
11787
  :request_charged,
11516
- :checksum_algorithm)
11788
+ :checksum_algorithm,
11789
+ :checksum_type)
11517
11790
  SENSITIVE = []
11518
11791
  include Aws::Structure
11519
11792
  end
@@ -11527,34 +11800,36 @@ module Aws::S3
11527
11800
  # requests are not supported. Directory bucket names must be unique in
11528
11801
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
11529
11802
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
11530
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
11803
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
11531
11804
  # naming restrictions, see [Directory bucket naming rules][1] in the
11532
11805
  # *Amazon S3 User Guide*.
11533
11806
  #
11534
- # **Access points** - When you use this action with an access point,
11535
- # you must provide the alias of the access point in place of the
11536
- # bucket name or specify the access point ARN. When using the access
11537
- # point ARN, you must direct requests to the access point hostname.
11538
- # The access point hostname takes the form
11807
+ # **Access points** - When you use this action with an access point
11808
+ # for general purpose buckets, you must provide the alias of the
11809
+ # access point in place of the bucket name or specify the access point
11810
+ # ARN. When you use this action with an access point for directory
11811
+ # buckets, you must provide the access point name in place of the
11812
+ # bucket name. When using the access point ARN, you must direct
11813
+ # requests to the access point hostname. The access point hostname
11814
+ # takes the form
11539
11815
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
11540
11816
  # When using this action with an access point through the Amazon Web
11541
11817
  # Services SDKs, you provide the access point ARN in place of the
11542
11818
  # bucket name. For more information about access point ARNs, see
11543
11819
  # [Using access points][2] in the *Amazon S3 User Guide*.
11544
11820
  #
11545
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
11546
- # directory buckets.
11821
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
11547
11822
  #
11548
11823
  # </note>
11549
11824
  #
11550
- # **S3 on Outposts** - When you use this action with Amazon S3 on
11551
- # Outposts, you must direct requests to the S3 on Outposts hostname.
11552
- # The S3 on Outposts hostname takes the form `
11825
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
11826
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
11827
+ # Outposts hostname takes the form `
11553
11828
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
11554
- # When you use this action with S3 on Outposts through the Amazon Web
11555
- # Services SDKs, you provide the Outposts access point ARN in place of
11556
- # the bucket name. For more information about S3 on Outposts ARNs, see
11557
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
11829
+ # When you use this action with S3 on Outposts, the destination bucket
11830
+ # must be the Outposts access point ARN or the access point alias. For
11831
+ # more information about S3 on Outposts, see [What is S3 on
11832
+ # Outposts?][3] in the *Amazon S3 User Guide*.
11558
11833
  #
11559
11834
  #
11560
11835
  #
@@ -11952,8 +12227,10 @@ module Aws::S3
11952
12227
  # @!attribute [rw] storage_class
11953
12228
  # The class of storage used to store the object.
11954
12229
  #
11955
- # <note markdown="1"> **Directory buckets** - Only the S3 Express One Zone storage class
11956
- # is supported by directory buckets to store objects.
12230
+ # <note markdown="1"> **Directory buckets** - Directory buckets only support
12231
+ # `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
12232
+ # Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent
12233
+ # Access storage class) in Dedicated Local Zones.
11957
12234
  #
11958
12235
  # </note>
11959
12236
  # @return [String]
@@ -11976,6 +12253,16 @@ module Aws::S3
11976
12253
  # The algorithm that was used to create a checksum of the object.
11977
12254
  # @return [String]
11978
12255
  #
12256
+ # @!attribute [rw] checksum_type
12257
+ # The checksum type that is used to calculate the object’s checksum
12258
+ # value. For more information, see [Checking object integrity][1] in
12259
+ # the *Amazon S3 User Guide*.
12260
+ #
12261
+ #
12262
+ #
12263
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12264
+ # @return [String]
12265
+ #
11979
12266
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MultipartUpload AWS API Documentation
11980
12267
  #
11981
12268
  class MultipartUpload < Struct.new(
@@ -11985,7 +12272,8 @@ module Aws::S3
11985
12272
  :storage_class,
11986
12273
  :owner,
11987
12274
  :initiator,
11988
- :checksum_algorithm)
12275
+ :checksum_algorithm,
12276
+ :checksum_type)
11989
12277
  SENSITIVE = []
11990
12278
  include Aws::Structure
11991
12279
  end
@@ -12236,6 +12524,16 @@ module Aws::S3
12236
12524
  # The algorithm that was used to create a checksum of the object.
12237
12525
  # @return [Array<String>]
12238
12526
  #
12527
+ # @!attribute [rw] checksum_type
12528
+ # The checksum type that is used to calculate the object’s checksum
12529
+ # value. For more information, see [Checking object integrity][1] in
12530
+ # the *Amazon S3 User Guide*.
12531
+ #
12532
+ #
12533
+ #
12534
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12535
+ # @return [String]
12536
+ #
12239
12537
  # @!attribute [rw] size
12240
12538
  # Size in bytes of the object
12241
12539
  # @return [Integer]
@@ -12243,8 +12541,10 @@ module Aws::S3
12243
12541
  # @!attribute [rw] storage_class
12244
12542
  # The class of storage used to store the object.
12245
12543
  #
12246
- # <note markdown="1"> **Directory buckets** - Only the S3 Express One Zone storage class
12247
- # is supported by directory buckets to store objects.
12544
+ # <note markdown="1"> **Directory buckets** - Directory buckets only support
12545
+ # `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
12546
+ # Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent
12547
+ # Access storage class) in Dedicated Local Zones.
12248
12548
  #
12249
12549
  # </note>
12250
12550
  # @return [String]
@@ -12265,9 +12565,10 @@ module Aws::S3
12265
12565
  # archived objects, see [ Working with archived objects][1] in the
12266
12566
  # *Amazon S3 User Guide*.
12267
12567
  #
12268
- # <note markdown="1"> This functionality is not supported for directory buckets. Only the
12269
- # S3 Express One Zone storage class is supported by directory buckets
12270
- # to store objects.
12568
+ # <note markdown="1"> This functionality is not supported for directory buckets. Directory
12569
+ # buckets only support `EXPRESS_ONEZONE` (the S3 Express One Zone
12570
+ # storage class) in Availability Zones and `ONEZONE_IA` (the S3 One
12571
+ # Zone-Infrequent Access storage class) in Dedicated Local Zones.
12271
12572
  #
12272
12573
  # </note>
12273
12574
  #
@@ -12283,6 +12584,7 @@ module Aws::S3
12283
12584
  :last_modified,
12284
12585
  :etag,
12285
12586
  :checksum_algorithm,
12587
+ :checksum_type,
12286
12588
  :size,
12287
12589
  :storage_class,
12288
12590
  :owner,
@@ -12455,11 +12757,10 @@ module Aws::S3
12455
12757
  # @return [Integer]
12456
12758
  #
12457
12759
  # @!attribute [rw] checksum_crc32
12458
- # This header can be used as a data integrity check to verify that the
12459
- # data received is the same data that was originally sent. This header
12460
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
12461
- # For more information, see [Checking object integrity][1] in the
12462
- # *Amazon S3 User Guide*.
12760
+ # The Base64 encoded, 32-bit `CRC32` checksum of the part. This
12761
+ # checksum is present if the multipart upload request was created with
12762
+ # the `CRC32` checksum algorithm. For more information, see [Checking
12763
+ # object integrity][1] in the *Amazon S3 User Guide*.
12463
12764
  #
12464
12765
  #
12465
12766
  #
@@ -12467,48 +12768,49 @@ module Aws::S3
12467
12768
  # @return [String]
12468
12769
  #
12469
12770
  # @!attribute [rw] checksum_crc32c
12470
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
12471
- # only be present if it was uploaded with the object. When you use an
12472
- # API operation on an object that was uploaded using multipart
12473
- # uploads, this value may not be a direct checksum value of the full
12474
- # object. Instead, it's a calculation based on the checksum values of
12475
- # each individual part. For more information about how checksums are
12476
- # calculated with multipart uploads, see [ Checking object
12477
- # integrity][1] in the *Amazon S3 User Guide*.
12771
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the part. This
12772
+ # checksum is present if the multipart upload request was created with
12773
+ # the `CRC32C` checksum algorithm. For more information, see [Checking
12774
+ # object integrity][1] in the *Amazon S3 User Guide*.
12478
12775
  #
12479
12776
  #
12480
12777
  #
12481
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
12778
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12779
+ # @return [String]
12780
+ #
12781
+ # @!attribute [rw] checksum_crc64nvme
12782
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the part. This
12783
+ # checksum is present if the multipart upload request was created with
12784
+ # the `CRC64NVME` checksum algorithm, or if the object was uploaded
12785
+ # without a checksum (and Amazon S3 added the default checksum,
12786
+ # `CRC64NVME`, to the uploaded object). For more information, see
12787
+ # [Checking object integrity][1] in the *Amazon S3 User Guide*.
12788
+ #
12789
+ #
12790
+ #
12791
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12482
12792
  # @return [String]
12483
12793
  #
12484
12794
  # @!attribute [rw] checksum_sha1
12485
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
12486
- # only be present if it was uploaded with the object. When you use the
12487
- # API operation on an object that was uploaded using multipart
12488
- # uploads, this value may not be a direct checksum value of the full
12489
- # object. Instead, it's a calculation based on the checksum values of
12490
- # each individual part. For more information about how checksums are
12491
- # calculated with multipart uploads, see [ Checking object
12492
- # integrity][1] in the *Amazon S3 User Guide*.
12795
+ # The Base64 encoded, 160-bit `SHA1` checksum of the part. This
12796
+ # checksum is present if the multipart upload request was created with
12797
+ # the `SHA1` checksum algorithm. For more information, see [Checking
12798
+ # object integrity][1] in the *Amazon S3 User Guide*.
12493
12799
  #
12494
12800
  #
12495
12801
  #
12496
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
12802
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12497
12803
  # @return [String]
12498
12804
  #
12499
12805
  # @!attribute [rw] checksum_sha256
12500
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
12501
- # only be present if it was uploaded with the object. When you use an
12502
- # API operation on an object that was uploaded using multipart
12503
- # uploads, this value may not be a direct checksum value of the full
12504
- # object. Instead, it's a calculation based on the checksum values of
12505
- # each individual part. For more information about how checksums are
12506
- # calculated with multipart uploads, see [ Checking object
12507
- # integrity][1] in the *Amazon S3 User Guide*.
12806
+ # The Base64 encoded, 256-bit `SHA256` checksum of the part. This
12807
+ # checksum is present if the multipart upload request was created with
12808
+ # the `SHA256` checksum algorithm. For more information, see [Checking
12809
+ # object integrity][1] in the *Amazon S3 User Guide*.
12508
12810
  #
12509
12811
  #
12510
12812
  #
12511
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
12813
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12512
12814
  # @return [String]
12513
12815
  #
12514
12816
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectPart AWS API Documentation
@@ -12518,6 +12820,7 @@ module Aws::S3
12518
12820
  :size,
12519
12821
  :checksum_crc32,
12520
12822
  :checksum_crc32c,
12823
+ :checksum_crc64nvme,
12521
12824
  :checksum_sha1,
12522
12825
  :checksum_sha256)
12523
12826
  SENSITIVE = []
@@ -12534,6 +12837,16 @@ module Aws::S3
12534
12837
  # The algorithm that was used to create a checksum of the object.
12535
12838
  # @return [Array<String>]
12536
12839
  #
12840
+ # @!attribute [rw] checksum_type
12841
+ # The checksum type that is used to calculate the object’s checksum
12842
+ # value. For more information, see [Checking object integrity][1] in
12843
+ # the *Amazon S3 User Guide*.
12844
+ #
12845
+ #
12846
+ #
12847
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12848
+ # @return [String]
12849
+ #
12537
12850
  # @!attribute [rw] size
12538
12851
  # Size in bytes of the object.
12539
12852
  # @return [Integer]
@@ -12580,6 +12893,7 @@ module Aws::S3
12580
12893
  class ObjectVersion < Struct.new(
12581
12894
  :etag,
12582
12895
  :checksum_algorithm,
12896
+ :checksum_type,
12583
12897
  :size,
12584
12898
  :storage_class,
12585
12899
  :key,
@@ -12755,11 +13069,10 @@ module Aws::S3
12755
13069
  # @return [Integer]
12756
13070
  #
12757
13071
  # @!attribute [rw] checksum_crc32
12758
- # This header can be used as a data integrity check to verify that the
12759
- # data received is the same data that was originally sent. This header
12760
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
12761
- # For more information, see [Checking object integrity][1] in the
12762
- # *Amazon S3 User Guide*.
13072
+ # The Base64 encoded, 32-bit `CRC32` checksum of the part. This
13073
+ # checksum is present if the object was uploaded with the `CRC32`
13074
+ # checksum algorithm. For more information, see [Checking object
13075
+ # integrity][1] in the *Amazon S3 User Guide*.
12763
13076
  #
12764
13077
  #
12765
13078
  #
@@ -12767,41 +13080,45 @@ module Aws::S3
12767
13080
  # @return [String]
12768
13081
  #
12769
13082
  # @!attribute [rw] checksum_crc32c
12770
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
12771
- # only be present if it was uploaded with the object. When you use an
12772
- # API operation on an object that was uploaded using multipart
12773
- # uploads, this value may not be a direct checksum value of the full
12774
- # object. Instead, it's a calculation based on the checksum values of
12775
- # each individual part. For more information about how checksums are
12776
- # calculated with multipart uploads, see [ Checking object
13083
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the part. This
13084
+ # checksum is present if the object was uploaded with the `CRC32C`
13085
+ # checksum algorithm. For more information, see [Checking object
12777
13086
  # integrity][1] in the *Amazon S3 User Guide*.
12778
13087
  #
12779
13088
  #
12780
13089
  #
12781
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
13090
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
13091
+ # @return [String]
13092
+ #
13093
+ # @!attribute [rw] checksum_crc64nvme
13094
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the part. This
13095
+ # checksum is present if the multipart upload request was created with
13096
+ # the `CRC64NVME` checksum algorithm, or if the object was uploaded
13097
+ # without a checksum (and Amazon S3 added the default checksum,
13098
+ # `CRC64NVME`, to the uploaded object). For more information, see
13099
+ # [Checking object integrity][1] in the *Amazon S3 User Guide*.
13100
+ #
13101
+ #
13102
+ #
13103
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12782
13104
  # @return [String]
12783
13105
  #
12784
13106
  # @!attribute [rw] checksum_sha1
12785
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
12786
- # only be present if it was uploaded with the object. When you use the
12787
- # API operation on an object that was uploaded using multipart
12788
- # uploads, this value may not be a direct checksum value of the full
12789
- # object. Instead, it's a calculation based on the checksum values of
12790
- # each individual part. For more information about how checksums are
12791
- # calculated with multipart uploads, see [ Checking object
13107
+ # The Base64 encoded, 160-bit `SHA1` checksum of the part. This
13108
+ # checksum is present if the object was uploaded with the `SHA1`
13109
+ # checksum algorithm. For more information, see [Checking object
12792
13110
  # integrity][1] in the *Amazon S3 User Guide*.
12793
13111
  #
12794
13112
  #
12795
13113
  #
12796
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
13114
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12797
13115
  # @return [String]
12798
13116
  #
12799
13117
  # @!attribute [rw] checksum_sha256
12800
- # This header can be used as a data integrity check to verify that the
12801
- # data received is the same data that was originally sent. This header
12802
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
12803
- # For more information, see [Checking object integrity][1] in the
12804
- # *Amazon S3 User Guide*.
13118
+ # The Base64 encoded, 256-bit `SHA256` checksum of the part. This
13119
+ # checksum is present if the object was uploaded with the `SHA256`
13120
+ # checksum algorithm. For more information, see [Checking object
13121
+ # integrity][1] in the *Amazon S3 User Guide*.
12805
13122
  #
12806
13123
  #
12807
13124
  #
@@ -12817,6 +13134,7 @@ module Aws::S3
12817
13134
  :size,
12818
13135
  :checksum_crc32,
12819
13136
  :checksum_crc32c,
13137
+ :checksum_crc64nvme,
12820
13138
  :checksum_sha1,
12821
13139
  :checksum_sha256)
12822
13140
  SENSITIVE = []
@@ -12992,7 +13310,7 @@ module Aws::S3
12992
13310
  # @return [String]
12993
13311
  #
12994
13312
  # @!attribute [rw] checksum_algorithm
12995
- # Indicates the algorithm used to create the checksum for the object
13313
+ # Indicates the algorithm used to create the checksum for the request
12996
13314
  # when you use the SDK. This header will not provide any additional
12997
13315
  # functionality if you don't use the SDK. When you send this header,
12998
13316
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13033,9 +13351,9 @@ module Aws::S3
13033
13351
  # @return [String]
13034
13352
  #
13035
13353
  # @!attribute [rw] content_md5
13036
- # The base64-encoded 128-bit MD5 digest of the data. This header must
13037
- # be used as a message integrity check to verify that the request body
13038
- # was not corrupted in transit. For more information, go to [RFC
13354
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header
13355
+ # must be used as a message integrity check to verify that the request
13356
+ # body was not corrupted in transit. For more information, go to [RFC
13039
13357
  # 1864.][1]
13040
13358
  #
13041
13359
  # For requests made using the Amazon Web Services Command Line
@@ -13048,7 +13366,7 @@ module Aws::S3
13048
13366
  # @return [String]
13049
13367
  #
13050
13368
  # @!attribute [rw] checksum_algorithm
13051
- # Indicates the algorithm used to create the checksum for the object
13369
+ # Indicates the algorithm used to create the checksum for the request
13052
13370
  # when you use the SDK. This header will not provide any additional
13053
13371
  # functionality if you don't use the SDK. When you send this header,
13054
13372
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13159,9 +13477,9 @@ module Aws::S3
13159
13477
  # @return [Types::CORSConfiguration]
13160
13478
  #
13161
13479
  # @!attribute [rw] content_md5
13162
- # The base64-encoded 128-bit MD5 digest of the data. This header must
13163
- # be used as a message integrity check to verify that the request body
13164
- # was not corrupted in transit. For more information, go to [RFC
13480
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header
13481
+ # must be used as a message integrity check to verify that the request
13482
+ # body was not corrupted in transit. For more information, go to [RFC
13165
13483
  # 1864.][1]
13166
13484
  #
13167
13485
  # For requests made using the Amazon Web Services Command Line
@@ -13174,7 +13492,7 @@ module Aws::S3
13174
13492
  # @return [String]
13175
13493
  #
13176
13494
  # @!attribute [rw] checksum_algorithm
13177
- # Indicates the algorithm used to create the checksum for the object
13495
+ # Indicates the algorithm used to create the checksum for the request
13178
13496
  # when you use the SDK. This header will not provide any additional
13179
13497
  # functionality if you don't use the SDK. When you send this header,
13180
13498
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13230,8 +13548,8 @@ module Aws::S3
13230
13548
  # @return [String]
13231
13549
  #
13232
13550
  # @!attribute [rw] content_md5
13233
- # The base64-encoded 128-bit MD5 digest of the server-side encryption
13234
- # configuration.
13551
+ # The Base64 encoded 128-bit `MD5` digest of the server-side
13552
+ # encryption configuration.
13235
13553
  #
13236
13554
  # For requests made using the Amazon Web Services Command Line
13237
13555
  # Interface (CLI) or Amazon Web Services SDKs, this field is
@@ -13243,7 +13561,7 @@ module Aws::S3
13243
13561
  # @return [String]
13244
13562
  #
13245
13563
  # @!attribute [rw] checksum_algorithm
13246
- # Indicates the algorithm used to create the checksum for the object
13564
+ # Indicates the algorithm used to create the checksum for the request
13247
13565
  # when you use the SDK. This header will not provide any additional
13248
13566
  # functionality if you don't use the SDK. When you send this header,
13249
13567
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13384,7 +13702,7 @@ module Aws::S3
13384
13702
  # @return [String]
13385
13703
  #
13386
13704
  # @!attribute [rw] checksum_algorithm
13387
- # Indicates the algorithm used to create the checksum for the object
13705
+ # Indicates the algorithm used to create the checksum for the request
13388
13706
  # when you use the SDK. This header will not provide any additional
13389
13707
  # functionality if you don't use the SDK. When you send this header,
13390
13708
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13461,7 +13779,7 @@ module Aws::S3
13461
13779
  # @return [String]
13462
13780
  #
13463
13781
  # @!attribute [rw] checksum_algorithm
13464
- # Indicates the algorithm used to create the checksum for the object
13782
+ # Indicates the algorithm used to create the checksum for the request
13465
13783
  # when you use the SDK. This header will not provide any additional
13466
13784
  # functionality if you don't use the SDK. When you send this header,
13467
13785
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13516,7 +13834,7 @@ module Aws::S3
13516
13834
  # @return [String]
13517
13835
  #
13518
13836
  # @!attribute [rw] checksum_algorithm
13519
- # Indicates the algorithm used to create the checksum for the object
13837
+ # Indicates the algorithm used to create the checksum for the request
13520
13838
  # when you use the SDK. This header will not provide any additional
13521
13839
  # functionality if you don't use the SDK. When you send this header,
13522
13840
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13629,7 +13947,7 @@ module Aws::S3
13629
13947
  # @return [String]
13630
13948
  #
13631
13949
  # @!attribute [rw] checksum_algorithm
13632
- # Indicates the algorithm used to create the checksum for the object
13950
+ # Indicates the algorithm used to create the checksum for the request
13633
13951
  # when you use the SDK. This header will not provide any additional
13634
13952
  # functionality if you don't use the SDK. When you send this header,
13635
13953
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13736,7 +14054,7 @@ module Aws::S3
13736
14054
  # @return [String]
13737
14055
  #
13738
14056
  # @!attribute [rw] checksum_algorithm
13739
- # Indicates the algorithm used to create the checksum for the object
14057
+ # Indicates the algorithm used to create the checksum for the request
13740
14058
  # when you use the SDK. This header will not provide any additional
13741
14059
  # functionality if you don't use the SDK. When you send this header,
13742
14060
  # there must be a corresponding `x-amz-checksum-algorithm ` or
@@ -13750,6 +14068,8 @@ module Aws::S3
13750
14068
  #
13751
14069
  # * `CRC32C`
13752
14070
  #
14071
+ # * `CRC64NVME`
14072
+ #
13753
14073
  # * `SHA1`
13754
14074
  #
13755
14075
  # * `SHA256`
@@ -13759,10 +14079,8 @@ module Aws::S3
13759
14079
  #
13760
14080
  # If the individual checksum value you provide through
13761
14081
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm
13762
- # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores
13763
- # any provided `ChecksumAlgorithm` parameter and uses the checksum
13764
- # algorithm that matches the provided value in
13765
- # `x-amz-checksum-algorithm `.
14082
+ # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
14083
+ # request with a `BadDigest` error.
13766
14084
  #
13767
14085
  # <note markdown="1"> For directory buckets, when you use Amazon Web Services SDKs,
13768
14086
  # `CRC32` is the default checksum algorithm that's used for
@@ -13822,9 +14140,9 @@ module Aws::S3
13822
14140
  # @return [String]
13823
14141
  #
13824
14142
  # @!attribute [rw] content_md5
13825
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
13826
- # header as a message integrity check to verify that the request body
13827
- # was not corrupted in transit. For more information, see [RFC
14143
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use
14144
+ # this header as a message integrity check to verify that the request
14145
+ # body was not corrupted in transit. For more information, see [RFC
13828
14146
  # 1864][1].
13829
14147
  #
13830
14148
  # For requests made using the Amazon Web Services Command Line
@@ -13837,7 +14155,7 @@ module Aws::S3
13837
14155
  # @return [String]
13838
14156
  #
13839
14157
  # @!attribute [rw] checksum_algorithm
13840
- # Indicates the algorithm used to create the checksum for the object
14158
+ # Indicates the algorithm used to create the checksum for the request
13841
14159
  # when you use the SDK. This header will not provide any additional
13842
14160
  # functionality if you don't use the SDK. When you send this header,
13843
14161
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13887,9 +14205,9 @@ module Aws::S3
13887
14205
  # @return [String]
13888
14206
  #
13889
14207
  # @!attribute [rw] content_md5
13890
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
13891
- # header as a message integrity check to verify that the request body
13892
- # was not corrupted in transit. For more information, see [RFC
14208
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use
14209
+ # this header as a message integrity check to verify that the request
14210
+ # body was not corrupted in transit. For more information, see [RFC
13893
14211
  # 1864][1].
13894
14212
  #
13895
14213
  # For requests made using the Amazon Web Services Command Line
@@ -13902,7 +14220,7 @@ module Aws::S3
13902
14220
  # @return [String]
13903
14221
  #
13904
14222
  # @!attribute [rw] checksum_algorithm
13905
- # Indicates the algorithm used to create the checksum for the object
14223
+ # Indicates the algorithm used to create the checksum for the request
13906
14224
  # when you use the SDK. This header will not provide any additional
13907
14225
  # functionality if you don't use the SDK. When you send this header,
13908
14226
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13946,9 +14264,9 @@ module Aws::S3
13946
14264
  # @return [String]
13947
14265
  #
13948
14266
  # @!attribute [rw] content_md5
13949
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
13950
- # header as a message integrity check to verify that the request body
13951
- # was not corrupted in transit. For more information, see [RFC
14267
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use
14268
+ # this header as a message integrity check to verify that the request
14269
+ # body was not corrupted in transit. For more information, see [RFC
13952
14270
  # 1864][1].
13953
14271
  #
13954
14272
  # For requests made using the Amazon Web Services Command Line
@@ -13961,7 +14279,7 @@ module Aws::S3
13961
14279
  # @return [String]
13962
14280
  #
13963
14281
  # @!attribute [rw] checksum_algorithm
13964
- # Indicates the algorithm used to create the checksum for the object
14282
+ # Indicates the algorithm used to create the checksum for the request
13965
14283
  # when you use the SDK. This header will not provide any additional
13966
14284
  # functionality if you don't use the SDK. When you send this header,
13967
14285
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -14005,10 +14323,10 @@ module Aws::S3
14005
14323
  # @return [String]
14006
14324
  #
14007
14325
  # @!attribute [rw] content_md5
14008
- # &gt;The base64-encoded 128-bit MD5 digest of the data. You must use
14009
- # this header as a message integrity check to verify that the request
14010
- # body was not corrupted in transit. For more information, see [RFC
14011
- # 1864][1].
14326
+ # &gt;The Base64 encoded 128-bit `MD5` digest of the data. You must
14327
+ # use this header as a message integrity check to verify that the
14328
+ # request body was not corrupted in transit. For more information, see
14329
+ # [RFC 1864][1].
14012
14330
  #
14013
14331
  # For requests made using the Amazon Web Services Command Line
14014
14332
  # Interface (CLI) or Amazon Web Services SDKs, this field is
@@ -14020,7 +14338,7 @@ module Aws::S3
14020
14338
  # @return [String]
14021
14339
  #
14022
14340
  # @!attribute [rw] checksum_algorithm
14023
- # Indicates the algorithm used to create the checksum for the object
14341
+ # Indicates the algorithm used to create the checksum for the request
14024
14342
  # when you use the SDK. This header will not provide any additional
14025
14343
  # functionality if you don't use the SDK. When you send this header,
14026
14344
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -14071,9 +14389,9 @@ module Aws::S3
14071
14389
  # @return [String]
14072
14390
  #
14073
14391
  # @!attribute [rw] content_md5
14074
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
14075
- # header as a message integrity check to verify that the request body
14076
- # was not corrupted in transit. For more information, see [RFC
14392
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use
14393
+ # this header as a message integrity check to verify that the request
14394
+ # body was not corrupted in transit. For more information, see [RFC
14077
14395
  # 1864][1].
14078
14396
  #
14079
14397
  # For requests made using the Amazon Web Services Command Line
@@ -14086,7 +14404,7 @@ module Aws::S3
14086
14404
  # @return [String]
14087
14405
  #
14088
14406
  # @!attribute [rw] checksum_algorithm
14089
- # Indicates the algorithm used to create the checksum for the object
14407
+ # Indicates the algorithm used to create the checksum for the request
14090
14408
  # when you use the SDK. This header will not provide any additional
14091
14409
  # functionality if you don't use the SDK. When you send this header,
14092
14410
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -14160,25 +14478,28 @@ module Aws::S3
14160
14478
  # The bucket name that contains the object to which you want to attach
14161
14479
  # the ACL.
14162
14480
  #
14163
- # **Access points** - When you use this action with an access point,
14164
- # you must provide the alias of the access point in place of the
14165
- # bucket name or specify the access point ARN. When using the access
14166
- # point ARN, you must direct requests to the access point hostname.
14167
- # The access point hostname takes the form
14481
+ # **Access points** - When you use this action with an access point
14482
+ # for general purpose buckets, you must provide the alias of the
14483
+ # access point in place of the bucket name or specify the access point
14484
+ # ARN. When you use this action with an access point for directory
14485
+ # buckets, you must provide the access point name in place of the
14486
+ # bucket name. When using the access point ARN, you must direct
14487
+ # requests to the access point hostname. The access point hostname
14488
+ # takes the form
14168
14489
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
14169
14490
  # When using this action with an access point through the Amazon Web
14170
14491
  # Services SDKs, you provide the access point ARN in place of the
14171
14492
  # bucket name. For more information about access point ARNs, see
14172
14493
  # [Using access points][1] in the *Amazon S3 User Guide*.
14173
14494
  #
14174
- # **S3 on Outposts** - When you use this action with Amazon S3 on
14175
- # Outposts, you must direct requests to the S3 on Outposts hostname.
14176
- # The S3 on Outposts hostname takes the form `
14495
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
14496
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
14497
+ # Outposts hostname takes the form `
14177
14498
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
14178
- # When you use this action with S3 on Outposts through the Amazon Web
14179
- # Services SDKs, you provide the Outposts access point ARN in place of
14180
- # the bucket name. For more information about S3 on Outposts ARNs, see
14181
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
14499
+ # When you use this action with S3 on Outposts, the destination bucket
14500
+ # must be the Outposts access point ARN or the access point alias. For
14501
+ # more information about S3 on Outposts, see [What is S3 on
14502
+ # Outposts?][2] in the *Amazon S3 User Guide*.
14182
14503
  #
14183
14504
  #
14184
14505
  #
@@ -14187,9 +14508,9 @@ module Aws::S3
14187
14508
  # @return [String]
14188
14509
  #
14189
14510
  # @!attribute [rw] content_md5
14190
- # The base64-encoded 128-bit MD5 digest of the data. This header must
14191
- # be used as a message integrity check to verify that the request body
14192
- # was not corrupted in transit. For more information, go to [RFC
14511
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header
14512
+ # must be used as a message integrity check to verify that the request
14513
+ # body was not corrupted in transit. For more information, go to [RFC
14193
14514
  # 1864.&gt;][1]
14194
14515
  #
14195
14516
  # For requests made using the Amazon Web Services Command Line
@@ -14329,11 +14650,14 @@ module Aws::S3
14329
14650
  # The bucket name containing the object that you want to place a legal
14330
14651
  # hold on.
14331
14652
  #
14332
- # **Access points** - When you use this action with an access point,
14333
- # you must provide the alias of the access point in place of the
14334
- # bucket name or specify the access point ARN. When using the access
14335
- # point ARN, you must direct requests to the access point hostname.
14336
- # The access point hostname takes the form
14653
+ # **Access points** - When you use this action with an access point
14654
+ # for general purpose buckets, you must provide the alias of the
14655
+ # access point in place of the bucket name or specify the access point
14656
+ # ARN. When you use this action with an access point for directory
14657
+ # buckets, you must provide the access point name in place of the
14658
+ # bucket name. When using the access point ARN, you must direct
14659
+ # requests to the access point hostname. The access point hostname
14660
+ # takes the form
14337
14661
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
14338
14662
  # When using this action with an access point through the Amazon Web
14339
14663
  # Services SDKs, you provide the access point ARN in place of the
@@ -14550,14 +14874,14 @@ module Aws::S3
14550
14874
  # @return [String]
14551
14875
  #
14552
14876
  # @!attribute [rw] checksum_crc32
14553
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
14554
- # only be present if it was uploaded with the object. When you use an
14555
- # API operation on an object that was uploaded using multipart
14556
- # uploads, this value may not be a direct checksum value of the full
14557
- # object. Instead, it's a calculation based on the checksum values of
14558
- # each individual part. For more information about how checksums are
14559
- # calculated with multipart uploads, see [ Checking object
14560
- # integrity][1] in the *Amazon S3 User Guide*.
14877
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
14878
+ # checksum is only be present if the checksum was uploaded with the
14879
+ # object. When you use an API operation on an object that was uploaded
14880
+ # using multipart uploads, this value may not be a direct checksum
14881
+ # value of the full object. Instead, it's a calculation based on the
14882
+ # checksum values of each individual part. For more information about
14883
+ # how checksums are calculated with multipart uploads, see [ Checking
14884
+ # object integrity][1] in the *Amazon S3 User Guide*.
14561
14885
  #
14562
14886
  #
14563
14887
  #
@@ -14565,24 +14889,38 @@ module Aws::S3
14565
14889
  # @return [String]
14566
14890
  #
14567
14891
  # @!attribute [rw] checksum_crc32c
14568
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
14569
- # only be present if it was uploaded with the object. When you use an
14570
- # API operation on an object that was uploaded using multipart
14571
- # uploads, this value may not be a direct checksum value of the full
14572
- # object. Instead, it's a calculation based on the checksum values of
14573
- # each individual part. For more information about how checksums are
14574
- # calculated with multipart uploads, see [ Checking object
14575
- # integrity][1] in the *Amazon S3 User Guide*.
14892
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
14893
+ # checksum is only present if the checksum was uploaded with the
14894
+ # object. When you use an API operation on an object that was uploaded
14895
+ # using multipart uploads, this value may not be a direct checksum
14896
+ # value of the full object. Instead, it's a calculation based on the
14897
+ # checksum values of each individual part. For more information about
14898
+ # how checksums are calculated with multipart uploads, see [ Checking
14899
+ # object integrity][1] in the *Amazon S3 User Guide*.
14576
14900
  #
14577
14901
  #
14578
14902
  #
14579
14903
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
14580
14904
  # @return [String]
14581
14905
  #
14906
+ # @!attribute [rw] checksum_crc64nvme
14907
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. This
14908
+ # header is present if the object was uploaded with the `CRC64NVME`
14909
+ # checksum algorithm, or if it was uploaded without a checksum (and
14910
+ # Amazon S3 added the default checksum, `CRC64NVME`, to the uploaded
14911
+ # object). For more information about how checksums are calculated
14912
+ # with multipart uploads, see [Checking object integrity in the Amazon
14913
+ # S3 User Guide][1].
14914
+ #
14915
+ #
14916
+ #
14917
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
14918
+ # @return [String]
14919
+ #
14582
14920
  # @!attribute [rw] checksum_sha1
14583
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
14584
- # only be present if it was uploaded with the object. When you use the
14585
- # API operation on an object that was uploaded using multipart
14921
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
14922
+ # only be present if the object was uploaded with the object. When you
14923
+ # use the API operation on an object that was uploaded using multipart
14586
14924
  # uploads, this value may not be a direct checksum value of the full
14587
14925
  # object. Instead, it's a calculation based on the checksum values of
14588
14926
  # each individual part. For more information about how checksums are
@@ -14595,9 +14933,9 @@ module Aws::S3
14595
14933
  # @return [String]
14596
14934
  #
14597
14935
  # @!attribute [rw] checksum_sha256
14598
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
14599
- # only be present if it was uploaded with the object. When you use an
14600
- # API operation on an object that was uploaded using multipart
14936
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
14937
+ # only be present if the object was uploaded with the object. When you
14938
+ # use an API operation on an object that was uploaded using multipart
14601
14939
  # uploads, this value may not be a direct checksum value of the full
14602
14940
  # object. Instead, it's a calculation based on the checksum values of
14603
14941
  # each individual part. For more information about how checksums are
@@ -14609,6 +14947,21 @@ module Aws::S3
14609
14947
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
14610
14948
  # @return [String]
14611
14949
  #
14950
+ # @!attribute [rw] checksum_type
14951
+ # This header specifies the checksum type of the object, which
14952
+ # determines how part-level checksums are combined to create an
14953
+ # object-level checksum for multipart objects. For `PutObject`
14954
+ # uploads, the checksum type is always `FULL_OBJECT`. You can use this
14955
+ # header as a data integrity check to verify that the checksum type
14956
+ # that is received is the same checksum that was specified. For more
14957
+ # information, see [Checking object integrity][1] in the *Amazon S3
14958
+ # User Guide*.
14959
+ #
14960
+ #
14961
+ #
14962
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
14963
+ # @return [String]
14964
+ #
14612
14965
  # @!attribute [rw] server_side_encryption
14613
14966
  # The server-side encryption algorithm used when you store this object
14614
14967
  # in Amazon S3.
@@ -14665,8 +15018,8 @@ module Aws::S3
14665
15018
  #
14666
15019
  # @!attribute [rw] ssekms_encryption_context
14667
15020
  # If present, indicates the Amazon Web Services KMS Encryption Context
14668
- # to use for object encryption. The value of this header is a
14669
- # Base64-encoded string of a UTF-8 encoded JSON, which contains the
15021
+ # to use for object encryption. The value of this header is a Base64
15022
+ # encoded string of a UTF-8 encoded JSON, which contains the
14670
15023
  # encryption context as key-value pairs. This value is stored as
14671
15024
  # object metadata and automatically gets passed on to Amazon Web
14672
15025
  # Services KMS for future `GetObject` operations on this object.
@@ -14679,8 +15032,8 @@ module Aws::S3
14679
15032
  # @return [Boolean]
14680
15033
  #
14681
15034
  # @!attribute [rw] size
14682
- # The size of the object in bytes. This will only be present if you
14683
- # append to an object.
15035
+ # The size of the object in bytes. This value is only be present if
15036
+ # you append to an object.
14684
15037
  #
14685
15038
  # <note markdown="1"> This functionality is only supported for objects in the Amazon S3
14686
15039
  # Express One Zone storage class in directory buckets.
@@ -14704,8 +15057,10 @@ module Aws::S3
14704
15057
  :etag,
14705
15058
  :checksum_crc32,
14706
15059
  :checksum_crc32c,
15060
+ :checksum_crc64nvme,
14707
15061
  :checksum_sha1,
14708
15062
  :checksum_sha256,
15063
+ :checksum_type,
14709
15064
  :server_side_encryption,
14710
15065
  :version_id,
14711
15066
  :sse_customer_algorithm,
@@ -14771,34 +15126,36 @@ module Aws::S3
14771
15126
  # requests are not supported. Directory bucket names must be unique in
14772
15127
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
14773
15128
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
14774
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
15129
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
14775
15130
  # naming restrictions, see [Directory bucket naming rules][1] in the
14776
15131
  # *Amazon S3 User Guide*.
14777
15132
  #
14778
- # **Access points** - When you use this action with an access point,
14779
- # you must provide the alias of the access point in place of the
14780
- # bucket name or specify the access point ARN. When using the access
14781
- # point ARN, you must direct requests to the access point hostname.
14782
- # The access point hostname takes the form
15133
+ # **Access points** - When you use this action with an access point
15134
+ # for general purpose buckets, you must provide the alias of the
15135
+ # access point in place of the bucket name or specify the access point
15136
+ # ARN. When you use this action with an access point for directory
15137
+ # buckets, you must provide the access point name in place of the
15138
+ # bucket name. When using the access point ARN, you must direct
15139
+ # requests to the access point hostname. The access point hostname
15140
+ # takes the form
14783
15141
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
14784
15142
  # When using this action with an access point through the Amazon Web
14785
15143
  # Services SDKs, you provide the access point ARN in place of the
14786
15144
  # bucket name. For more information about access point ARNs, see
14787
15145
  # [Using access points][2] in the *Amazon S3 User Guide*.
14788
15146
  #
14789
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
14790
- # directory buckets.
15147
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
14791
15148
  #
14792
15149
  # </note>
14793
15150
  #
14794
- # **S3 on Outposts** - When you use this action with Amazon S3 on
14795
- # Outposts, you must direct requests to the S3 on Outposts hostname.
14796
- # The S3 on Outposts hostname takes the form `
15151
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
15152
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
15153
+ # Outposts hostname takes the form `
14797
15154
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
14798
- # When you use this action with S3 on Outposts through the Amazon Web
14799
- # Services SDKs, you provide the Outposts access point ARN in place of
14800
- # the bucket name. For more information about S3 on Outposts ARNs, see
14801
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
15155
+ # When you use this action with S3 on Outposts, the destination bucket
15156
+ # must be the Outposts access point ARN or the access point alias. For
15157
+ # more information about S3 on Outposts, see [What is S3 on
15158
+ # Outposts?][3] in the *Amazon S3 User Guide*.
14802
15159
  #
14803
15160
  #
14804
15161
  #
@@ -14855,7 +15212,7 @@ module Aws::S3
14855
15212
  # @return [Integer]
14856
15213
  #
14857
15214
  # @!attribute [rw] content_md5
14858
- # The base64-encoded 128-bit MD5 digest of the message (without the
15215
+ # The Base64 encoded 128-bit `MD5` digest of the message (without the
14859
15216
  # headers) according to RFC 1864. This header can be used as a message
14860
15217
  # integrity check to verify that the data is the same data that was
14861
15218
  # originally sent. Although it is optional, we recommend using the
@@ -14906,6 +15263,8 @@ module Aws::S3
14906
15263
  #
14907
15264
  # * `CRC32C`
14908
15265
  #
15266
+ # * `CRC64NVME`
15267
+ #
14909
15268
  # * `SHA1`
14910
15269
  #
14911
15270
  # * `SHA256`
@@ -14915,10 +15274,8 @@ module Aws::S3
14915
15274
  #
14916
15275
  # If the individual checksum value you provide through
14917
15276
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm
14918
- # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores
14919
- # any provided `ChecksumAlgorithm` parameter and uses the checksum
14920
- # algorithm that matches the provided value in
14921
- # `x-amz-checksum-algorithm `.
15277
+ # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
15278
+ # request with a `BadDigest` error.
14922
15279
  #
14923
15280
  # <note markdown="1"> The `Content-MD5` or `x-amz-sdk-checksum-algorithm` header is
14924
15281
  # required for any request to upload an object with a retention period
@@ -14941,7 +15298,7 @@ module Aws::S3
14941
15298
  # @!attribute [rw] checksum_crc32
14942
15299
  # This header can be used as a data integrity check to verify that the
14943
15300
  # data received is the same data that was originally sent. This header
14944
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
15301
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
14945
15302
  # For more information, see [Checking object integrity][1] in the
14946
15303
  # *Amazon S3 User Guide*.
14947
15304
  #
@@ -14953,9 +15310,22 @@ module Aws::S3
14953
15310
  # @!attribute [rw] checksum_crc32c
14954
15311
  # This header can be used as a data integrity check to verify that the
14955
15312
  # data received is the same data that was originally sent. This header
14956
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
14957
- # For more information, see [Checking object integrity][1] in the
14958
- # *Amazon S3 User Guide*.
15313
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the
15314
+ # object. For more information, see [Checking object integrity][1] in
15315
+ # the *Amazon S3 User Guide*.
15316
+ #
15317
+ #
15318
+ #
15319
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
15320
+ # @return [String]
15321
+ #
15322
+ # @!attribute [rw] checksum_crc64nvme
15323
+ # This header can be used as a data integrity check to verify that the
15324
+ # data received is the same data that was originally sent. This header
15325
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
15326
+ # object. The `CRC64NVME` checksum is always a full object checksum.
15327
+ # For more information, see [Checking object integrity in the Amazon
15328
+ # S3 User Guide][1].
14959
15329
  #
14960
15330
  #
14961
15331
  #
@@ -14965,7 +15335,7 @@ module Aws::S3
14965
15335
  # @!attribute [rw] checksum_sha1
14966
15336
  # This header can be used as a data integrity check to verify that the
14967
15337
  # data received is the same data that was originally sent. This header
14968
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object.
15338
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object.
14969
15339
  # For more information, see [Checking object integrity][1] in the
14970
15340
  # *Amazon S3 User Guide*.
14971
15341
  #
@@ -14977,7 +15347,7 @@ module Aws::S3
14977
15347
  # @!attribute [rw] checksum_sha256
14978
15348
  # This header can be used as a data integrity check to verify that the
14979
15349
  # data received is the same data that was originally sent. This header
14980
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
15350
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
14981
15351
  # For more information, see [Checking object integrity][1] in the
14982
15352
  # *Amazon S3 User Guide*.
14983
15353
  #
@@ -15172,8 +15542,10 @@ module Aws::S3
15172
15542
  # specify a different Storage Class. For more information, see
15173
15543
  # [Storage Classes][1] in the *Amazon S3 User Guide*.
15174
15544
  #
15175
- # <note markdown="1"> * For directory buckets, only the S3 Express One Zone storage class
15176
- # is supported to store newly created objects.
15545
+ # <note markdown="1"> * Directory buckets only support `EXPRESS_ONEZONE` (the S3 Express
15546
+ # One Zone storage class) in Availability Zones and `ONEZONE_IA`
15547
+ # (the S3 One Zone-Infrequent Access storage class) in Dedicated
15548
+ # Local Zones.
15177
15549
  #
15178
15550
  # * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.
15179
15551
  #
@@ -15262,21 +15634,17 @@ module Aws::S3
15262
15634
  # `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
15263
15635
  # Amazon Web Services managed key (`aws/s3`) to protect the data.
15264
15636
  #
15265
- # **Directory buckets** - If you specify
15266
- # `x-amz-server-side-encryption` with `aws:kms`, the `
15267
- # x-amz-server-side-encryption-aws-kms-key-id` header is implicitly
15268
- # assigned the ID of the KMS symmetric encryption customer managed key
15269
- # that's configured for your directory bucket's default encryption
15270
- # setting. If you want to specify the `
15271
- # x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you
15272
- # can only specify it with the ID (Key ID or Key ARN) of the KMS
15273
- # customer managed key that's configured for your directory bucket's
15274
- # default encryption setting. Otherwise, you get an HTTP `400 Bad
15275
- # Request` error. Only use the key ID or key ARN. The key alias format
15276
- # of the KMS key isn't supported. Your SSE-KMS configuration can only
15277
- # support 1 [customer managed key][1] per directory bucket for the
15278
- # lifetime of the bucket. The [Amazon Web Services managed key][2]
15279
- # (`aws/s3`) isn't supported.
15637
+ # **Directory buckets** - To encrypt data using SSE-KMS, it's
15638
+ # recommended to specify the `x-amz-server-side-encryption` header to
15639
+ # `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
15640
+ # header implicitly uses the bucket's default KMS customer managed
15641
+ # key ID. If you want to explicitly set the `
15642
+ # x-amz-server-side-encryption-aws-kms-key-id` header, it must match
15643
+ # the bucket's default customer managed key (using key ID or ARN, not
15644
+ # alias). Your SSE-KMS configuration can only support 1 [customer
15645
+ # managed key][1] per directory bucket's lifetime. The [Amazon Web
15646
+ # Services managed key][2] (`aws/s3`) isn't supported. Incorrect key
15647
+ # specification results in an HTTP `400 Bad Request` error.
15280
15648
  #
15281
15649
  #
15282
15650
  #
@@ -15287,7 +15655,7 @@ module Aws::S3
15287
15655
  # @!attribute [rw] ssekms_encryption_context
15288
15656
  # Specifies the Amazon Web Services KMS Encryption Context as an
15289
15657
  # additional encryption context to use for object encryption. The
15290
- # value of this header is a Base64-encoded string of a UTF-8 encoded
15658
+ # value of this header is a Base64 encoded string of a UTF-8 encoded
15291
15659
  # JSON, which contains the encryption context as key-value pairs. This
15292
15660
  # value is stored as object metadata and automatically gets passed on
15293
15661
  # to Amazon Web Services KMS for future `GetObject` operations on this
@@ -15417,6 +15785,7 @@ module Aws::S3
15417
15785
  :checksum_algorithm,
15418
15786
  :checksum_crc32,
15419
15787
  :checksum_crc32c,
15788
+ :checksum_crc64nvme,
15420
15789
  :checksum_sha1,
15421
15790
  :checksum_sha256,
15422
15791
  :expires,
@@ -15469,11 +15838,14 @@ module Aws::S3
15469
15838
  # The bucket name that contains the object you want to apply this
15470
15839
  # Object Retention configuration to.
15471
15840
  #
15472
- # **Access points** - When you use this action with an access point,
15473
- # you must provide the alias of the access point in place of the
15474
- # bucket name or specify the access point ARN. When using the access
15475
- # point ARN, you must direct requests to the access point hostname.
15476
- # The access point hostname takes the form
15841
+ # **Access points** - When you use this action with an access point
15842
+ # for general purpose buckets, you must provide the alias of the
15843
+ # access point in place of the bucket name or specify the access point
15844
+ # ARN. When you use this action with an access point for directory
15845
+ # buckets, you must provide the access point name in place of the
15846
+ # bucket name. When using the access point ARN, you must direct
15847
+ # requests to the access point hostname. The access point hostname
15848
+ # takes the form
15477
15849
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
15478
15850
  # When using this action with an access point through the Amazon Web
15479
15851
  # Services SDKs, you provide the access point ARN in place of the
@@ -15585,25 +15957,28 @@ module Aws::S3
15585
15957
  # @!attribute [rw] bucket
15586
15958
  # The bucket name containing the object.
15587
15959
  #
15588
- # **Access points** - When you use this action with an access point,
15589
- # you must provide the alias of the access point in place of the
15590
- # bucket name or specify the access point ARN. When using the access
15591
- # point ARN, you must direct requests to the access point hostname.
15592
- # The access point hostname takes the form
15960
+ # **Access points** - When you use this action with an access point
15961
+ # for general purpose buckets, you must provide the alias of the
15962
+ # access point in place of the bucket name or specify the access point
15963
+ # ARN. When you use this action with an access point for directory
15964
+ # buckets, you must provide the access point name in place of the
15965
+ # bucket name. When using the access point ARN, you must direct
15966
+ # requests to the access point hostname. The access point hostname
15967
+ # takes the form
15593
15968
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
15594
15969
  # When using this action with an access point through the Amazon Web
15595
15970
  # Services SDKs, you provide the access point ARN in place of the
15596
15971
  # bucket name. For more information about access point ARNs, see
15597
15972
  # [Using access points][1] in the *Amazon S3 User Guide*.
15598
15973
  #
15599
- # **S3 on Outposts** - When you use this action with Amazon S3 on
15600
- # Outposts, you must direct requests to the S3 on Outposts hostname.
15601
- # The S3 on Outposts hostname takes the form `
15974
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
15975
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
15976
+ # Outposts hostname takes the form `
15602
15977
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
15603
- # When you use this action with S3 on Outposts through the Amazon Web
15604
- # Services SDKs, you provide the Outposts access point ARN in place of
15605
- # the bucket name. For more information about S3 on Outposts ARNs, see
15606
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
15978
+ # When you use this action with S3 on Outposts, the destination bucket
15979
+ # must be the Outposts access point ARN or the access point alias. For
15980
+ # more information about S3 on Outposts, see [What is S3 on
15981
+ # Outposts?][2] in the *Amazon S3 User Guide*.
15607
15982
  #
15608
15983
  #
15609
15984
  #
@@ -15838,7 +16213,7 @@ module Aws::S3
15838
16213
  # record frame. To ensure continuous streaming of data, S3 Select
15839
16214
  # might split the same record across multiple record frames instead of
15840
16215
  # aggregating the results in memory. Some S3 clients (for example, the
15841
- # SDK for Java) handle this behavior by creating a `ByteStream` out of
16216
+ # SDKforJava) handle this behavior by creating a `ByteStream` out of
15842
16217
  # the response by default. Other clients might not handle this
15843
16218
  # behavior by default. In those cases, you must aggregate the results
15844
16219
  # on the client side and parse the response.
@@ -16279,25 +16654,28 @@ module Aws::S3
16279
16654
  # @!attribute [rw] bucket
16280
16655
  # The bucket name containing the object to restore.
16281
16656
  #
16282
- # **Access points** - When you use this action with an access point,
16283
- # you must provide the alias of the access point in place of the
16284
- # bucket name or specify the access point ARN. When using the access
16285
- # point ARN, you must direct requests to the access point hostname.
16286
- # The access point hostname takes the form
16657
+ # **Access points** - When you use this action with an access point
16658
+ # for general purpose buckets, you must provide the alias of the
16659
+ # access point in place of the bucket name or specify the access point
16660
+ # ARN. When you use this action with an access point for directory
16661
+ # buckets, you must provide the access point name in place of the
16662
+ # bucket name. When using the access point ARN, you must direct
16663
+ # requests to the access point hostname. The access point hostname
16664
+ # takes the form
16287
16665
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
16288
16666
  # When using this action with an access point through the Amazon Web
16289
16667
  # Services SDKs, you provide the access point ARN in place of the
16290
16668
  # bucket name. For more information about access point ARNs, see
16291
16669
  # [Using access points][1] in the *Amazon S3 User Guide*.
16292
16670
  #
16293
- # **S3 on Outposts** - When you use this action with Amazon S3 on
16294
- # Outposts, you must direct requests to the S3 on Outposts hostname.
16295
- # The S3 on Outposts hostname takes the form `
16671
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
16672
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
16673
+ # Outposts hostname takes the form `
16296
16674
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
16297
- # When you use this action with S3 on Outposts through the Amazon Web
16298
- # Services SDKs, you provide the Outposts access point ARN in place of
16299
- # the bucket name. For more information about S3 on Outposts ARNs, see
16300
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
16675
+ # When you use this action with S3 on Outposts, the destination bucket
16676
+ # must be the Outposts access point ARN or the access point alias. For
16677
+ # more information about S3 on Outposts, see [What is S3 on
16678
+ # Outposts?][2] in the *Amazon S3 User Guide*.
16301
16679
  #
16302
16680
  #
16303
16681
  #
@@ -16444,9 +16822,10 @@ module Aws::S3
16444
16822
  # archived objects, see [ Working with archived objects][1] in the
16445
16823
  # *Amazon S3 User Guide*.
16446
16824
  #
16447
- # <note markdown="1"> This functionality is not supported for directory buckets. Only the S3
16448
- # Express One Zone storage class is supported by directory buckets to
16449
- # store objects.
16825
+ # <note markdown="1"> This functionality is not supported for directory buckets. Directory
16826
+ # buckets only support `EXPRESS_ONEZONE` (the S3 Express One Zone
16827
+ # storage class) in Availability Zones and `ONEZONE_IA` (the S3 One
16828
+ # Zone-Infrequent Access storage class) in Dedicated Local Zones.
16450
16829
  #
16451
16830
  # </note>
16452
16831
  #
@@ -17017,9 +17396,8 @@ module Aws::S3
17017
17396
  # to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS.
17018
17397
  #
17019
17398
  # * **Directory buckets** - Your SSE-KMS configuration can only support
17020
- # 1 [customer managed key][2] per directory bucket for the lifetime of
17021
- # the bucket. The [Amazon Web Services managed key][3] (`aws/s3`)
17022
- # isn't supported.
17399
+ # 1 [customer managed key][2] per directory bucket's lifetime. The
17400
+ # [Amazon Web Services managed key][3] (`aws/s3`) isn't supported.
17023
17401
  #
17024
17402
  # * **Directory buckets** - For directory buckets, there are only two
17025
17403
  # supported options for server-side encryption: SSE-S3 and SSE-KMS.
@@ -17597,8 +17975,19 @@ module Aws::S3
17597
17975
  #
17598
17976
  # @!attribute [rw] days
17599
17977
  # Indicates the number of days after creation when objects are
17600
- # transitioned to the specified storage class. The value must be a
17601
- # positive integer.
17978
+ # transitioned to the specified storage class. If the specified
17979
+ # storage class is `INTELLIGENT_TIERING`, `GLACIER_IR`, `GLACIER`, or
17980
+ # `DEEP_ARCHIVE`, valid values are `0` or positive integers. If the
17981
+ # specified storage class is `STANDARD_IA` or `ONEZONE_IA`, valid
17982
+ # values are positive integers greater than `30`. Be aware that some
17983
+ # storage classes have a minimum storage duration and that you're
17984
+ # charged for transitioning objects before their minimum storage
17985
+ # duration. For more information, see [ Constraints and considerations
17986
+ # for transitions][1] in the *Amazon S3 User Guide*.
17987
+ #
17988
+ #
17989
+ #
17990
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-transition-general-considerations.html#lifecycle-configuration-constraints
17602
17991
  # @return [Integer]
17603
17992
  #
17604
17993
  # @!attribute [rw] storage_class
@@ -17699,7 +18088,7 @@ module Aws::S3
17699
18088
  # requests are not supported. Directory bucket names must be unique in
17700
18089
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
17701
18090
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
17702
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
18091
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
17703
18092
  # naming restrictions, see [Directory bucket naming rules][1] in the
17704
18093
  # *Amazon S3 User Guide*.
17705
18094
  #
@@ -17711,30 +18100,32 @@ module Aws::S3
17711
18100
  #
17712
18101
  # </note>
17713
18102
  #
17714
- # **Access points** - When you use this action with an access point,
17715
- # you must provide the alias of the access point in place of the
17716
- # bucket name or specify the access point ARN. When using the access
17717
- # point ARN, you must direct requests to the access point hostname.
17718
- # The access point hostname takes the form
18103
+ # **Access points** - When you use this action with an access point
18104
+ # for general purpose buckets, you must provide the alias of the
18105
+ # access point in place of the bucket name or specify the access point
18106
+ # ARN. When you use this action with an access point for directory
18107
+ # buckets, you must provide the access point name in place of the
18108
+ # bucket name. When using the access point ARN, you must direct
18109
+ # requests to the access point hostname. The access point hostname
18110
+ # takes the form
17719
18111
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
17720
18112
  # When using this action with an access point through the Amazon Web
17721
18113
  # Services SDKs, you provide the access point ARN in place of the
17722
18114
  # bucket name. For more information about access point ARNs, see
17723
18115
  # [Using access points][2] in the *Amazon S3 User Guide*.
17724
18116
  #
17725
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
17726
- # directory buckets.
18117
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
17727
18118
  #
17728
18119
  # </note>
17729
18120
  #
17730
- # **S3 on Outposts** - When you use this action with Amazon S3 on
17731
- # Outposts, you must direct requests to the S3 on Outposts hostname.
17732
- # The S3 on Outposts hostname takes the form `
18121
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
18122
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
18123
+ # Outposts hostname takes the form `
17733
18124
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
17734
- # When you use this action with S3 on Outposts through the Amazon Web
17735
- # Services SDKs, you provide the Outposts access point ARN in place of
17736
- # the bucket name. For more information about S3 on Outposts ARNs, see
17737
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
18125
+ # When you use this action with S3 on Outposts, the destination bucket
18126
+ # must be the Outposts access point ARN or the access point alias. For
18127
+ # more information about S3 on Outposts, see [What is S3 on
18128
+ # Outposts?][3] in the *Amazon S3 User Guide*.
17738
18129
  #
17739
18130
  #
17740
18131
  #
@@ -18029,14 +18420,14 @@ module Aws::S3
18029
18420
  # @return [String]
18030
18421
  #
18031
18422
  # @!attribute [rw] checksum_crc32
18032
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
18033
- # only be present if it was uploaded with the object. When you use an
18034
- # API operation on an object that was uploaded using multipart
18035
- # uploads, this value may not be a direct checksum value of the full
18036
- # object. Instead, it's a calculation based on the checksum values of
18037
- # each individual part. For more information about how checksums are
18038
- # calculated with multipart uploads, see [ Checking object
18039
- # integrity][1] in the *Amazon S3 User Guide*.
18423
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
18424
+ # checksum is only be present if the checksum was uploaded with the
18425
+ # object. When you use an API operation on an object that was uploaded
18426
+ # using multipart uploads, this value may not be a direct checksum
18427
+ # value of the full object. Instead, it's a calculation based on the
18428
+ # checksum values of each individual part. For more information about
18429
+ # how checksums are calculated with multipart uploads, see [ Checking
18430
+ # object integrity][1] in the *Amazon S3 User Guide*.
18040
18431
  #
18041
18432
  #
18042
18433
  #
@@ -18044,24 +18435,36 @@ module Aws::S3
18044
18435
  # @return [String]
18045
18436
  #
18046
18437
  # @!attribute [rw] checksum_crc32c
18047
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
18048
- # only be present if it was uploaded with the object. When you use an
18049
- # API operation on an object that was uploaded using multipart
18050
- # uploads, this value may not be a direct checksum value of the full
18051
- # object. Instead, it's a calculation based on the checksum values of
18052
- # each individual part. For more information about how checksums are
18053
- # calculated with multipart uploads, see [ Checking object
18054
- # integrity][1] in the *Amazon S3 User Guide*.
18438
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
18439
+ # checksum is only present if the checksum was uploaded with the
18440
+ # object. When you use an API operation on an object that was uploaded
18441
+ # using multipart uploads, this value may not be a direct checksum
18442
+ # value of the full object. Instead, it's a calculation based on the
18443
+ # checksum values of each individual part. For more information about
18444
+ # how checksums are calculated with multipart uploads, see [ Checking
18445
+ # object integrity][1] in the *Amazon S3 User Guide*.
18055
18446
  #
18056
18447
  #
18057
18448
  #
18058
18449
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
18059
18450
  # @return [String]
18060
18451
  #
18452
+ # @!attribute [rw] checksum_crc64nvme
18453
+ # This header can be used as a data integrity check to verify that the
18454
+ # data received is the same data that was originally sent. This header
18455
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
18456
+ # part. For more information, see [Checking object integrity][1] in
18457
+ # the *Amazon S3 User Guide*.
18458
+ #
18459
+ #
18460
+ #
18461
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
18462
+ # @return [String]
18463
+ #
18061
18464
  # @!attribute [rw] checksum_sha1
18062
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
18063
- # only be present if it was uploaded with the object. When you use the
18064
- # API operation on an object that was uploaded using multipart
18465
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
18466
+ # only be present if the object was uploaded with the object. When you
18467
+ # use the API operation on an object that was uploaded using multipart
18065
18468
  # uploads, this value may not be a direct checksum value of the full
18066
18469
  # object. Instead, it's a calculation based on the checksum values of
18067
18470
  # each individual part. For more information about how checksums are
@@ -18074,9 +18477,9 @@ module Aws::S3
18074
18477
  # @return [String]
18075
18478
  #
18076
18479
  # @!attribute [rw] checksum_sha256
18077
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
18078
- # only be present if it was uploaded with the object. When you use an
18079
- # API operation on an object that was uploaded using multipart
18480
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
18481
+ # only be present if the object was uploaded with the object. When you
18482
+ # use an API operation on an object that was uploaded using multipart
18080
18483
  # uploads, this value may not be a direct checksum value of the full
18081
18484
  # object. Instead, it's a calculation based on the checksum values of
18082
18485
  # each individual part. For more information about how checksums are
@@ -18136,6 +18539,7 @@ module Aws::S3
18136
18539
  :etag,
18137
18540
  :checksum_crc32,
18138
18541
  :checksum_crc32c,
18542
+ :checksum_crc64nvme,
18139
18543
  :checksum_sha1,
18140
18544
  :checksum_sha256,
18141
18545
  :sse_customer_algorithm,
@@ -18160,34 +18564,36 @@ module Aws::S3
18160
18564
  # requests are not supported. Directory bucket names must be unique in
18161
18565
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
18162
18566
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
18163
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
18567
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
18164
18568
  # naming restrictions, see [Directory bucket naming rules][1] in the
18165
18569
  # *Amazon S3 User Guide*.
18166
18570
  #
18167
- # **Access points** - When you use this action with an access point,
18168
- # you must provide the alias of the access point in place of the
18169
- # bucket name or specify the access point ARN. When using the access
18170
- # point ARN, you must direct requests to the access point hostname.
18171
- # The access point hostname takes the form
18571
+ # **Access points** - When you use this action with an access point
18572
+ # for general purpose buckets, you must provide the alias of the
18573
+ # access point in place of the bucket name or specify the access point
18574
+ # ARN. When you use this action with an access point for directory
18575
+ # buckets, you must provide the access point name in place of the
18576
+ # bucket name. When using the access point ARN, you must direct
18577
+ # requests to the access point hostname. The access point hostname
18578
+ # takes the form
18172
18579
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
18173
18580
  # When using this action with an access point through the Amazon Web
18174
18581
  # Services SDKs, you provide the access point ARN in place of the
18175
18582
  # bucket name. For more information about access point ARNs, see
18176
18583
  # [Using access points][2] in the *Amazon S3 User Guide*.
18177
18584
  #
18178
- # <note markdown="1"> Access points and Object Lambda access points are not supported by
18179
- # directory buckets.
18585
+ # <note markdown="1"> Object Lambda access points are not supported by directory buckets.
18180
18586
  #
18181
18587
  # </note>
18182
18588
  #
18183
- # **S3 on Outposts** - When you use this action with Amazon S3 on
18184
- # Outposts, you must direct requests to the S3 on Outposts hostname.
18185
- # The S3 on Outposts hostname takes the form `
18589
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
18590
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
18591
+ # Outposts hostname takes the form `
18186
18592
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
18187
- # When you use this action with S3 on Outposts through the Amazon Web
18188
- # Services SDKs, you provide the Outposts access point ARN in place of
18189
- # the bucket name. For more information about S3 on Outposts ARNs, see
18190
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
18593
+ # When you use this action with S3 on Outposts, the destination bucket
18594
+ # must be the Outposts access point ARN or the access point alias. For
18595
+ # more information about S3 on Outposts, see [What is S3 on
18596
+ # Outposts?][3] in the *Amazon S3 User Guide*.
18191
18597
  #
18192
18598
  #
18193
18599
  #
@@ -18202,7 +18608,7 @@ module Aws::S3
18202
18608
  # @return [Integer]
18203
18609
  #
18204
18610
  # @!attribute [rw] content_md5
18205
- # The base64-encoded 128-bit MD5 digest of the part data. This
18611
+ # The Base64 encoded 128-bit MD5 digest of the part data. This
18206
18612
  # parameter is auto-populated when using the command from the CLI.
18207
18613
  # This parameter is required if object lock parameters are specified.
18208
18614
  #
@@ -18234,7 +18640,7 @@ module Aws::S3
18234
18640
  # @!attribute [rw] checksum_crc32
18235
18641
  # This header can be used as a data integrity check to verify that the
18236
18642
  # data received is the same data that was originally sent. This header
18237
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
18643
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
18238
18644
  # For more information, see [Checking object integrity][1] in the
18239
18645
  # *Amazon S3 User Guide*.
18240
18646
  #
@@ -18246,9 +18652,21 @@ module Aws::S3
18246
18652
  # @!attribute [rw] checksum_crc32c
18247
18653
  # This header can be used as a data integrity check to verify that the
18248
18654
  # data received is the same data that was originally sent. This header
18249
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
18250
- # For more information, see [Checking object integrity][1] in the
18251
- # *Amazon S3 User Guide*.
18655
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the
18656
+ # object. For more information, see [Checking object integrity][1] in
18657
+ # the *Amazon S3 User Guide*.
18658
+ #
18659
+ #
18660
+ #
18661
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
18662
+ # @return [String]
18663
+ #
18664
+ # @!attribute [rw] checksum_crc64nvme
18665
+ # This header can be used as a data integrity check to verify that the
18666
+ # data received is the same data that was originally sent. This header
18667
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
18668
+ # part. For more information, see [Checking object integrity][1] in
18669
+ # the *Amazon S3 User Guide*.
18252
18670
  #
18253
18671
  #
18254
18672
  #
@@ -18258,7 +18676,7 @@ module Aws::S3
18258
18676
  # @!attribute [rw] checksum_sha1
18259
18677
  # This header can be used as a data integrity check to verify that the
18260
18678
  # data received is the same data that was originally sent. This header
18261
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object.
18679
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object.
18262
18680
  # For more information, see [Checking object integrity][1] in the
18263
18681
  # *Amazon S3 User Guide*.
18264
18682
  #
@@ -18270,7 +18688,7 @@ module Aws::S3
18270
18688
  # @!attribute [rw] checksum_sha256
18271
18689
  # This header can be used as a data integrity check to verify that the
18272
18690
  # data received is the same data that was originally sent. This header
18273
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
18691
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
18274
18692
  # For more information, see [Checking object integrity][1] in the
18275
18693
  # *Amazon S3 User Guide*.
18276
18694
  #
@@ -18361,6 +18779,7 @@ module Aws::S3
18361
18779
  :checksum_algorithm,
18362
18780
  :checksum_crc32,
18363
18781
  :checksum_crc32c,
18782
+ :checksum_crc64nvme,
18364
18783
  :checksum_sha1,
18365
18784
  :checksum_sha256,
18366
18785
  :key,
@@ -18536,7 +18955,7 @@ module Aws::S3
18536
18955
  # @!attribute [rw] checksum_crc32
18537
18956
  # This header can be used as a data integrity check to verify that the
18538
18957
  # data received is the same data that was originally sent. This
18539
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object
18958
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object
18540
18959
  # returned by the Object Lambda function. This may not match the
18541
18960
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
18542
18961
  # validation of the checksum values only when the original `GetObject`
@@ -18557,7 +18976,7 @@ module Aws::S3
18557
18976
  # @!attribute [rw] checksum_crc32c
18558
18977
  # This header can be used as a data integrity check to verify that the
18559
18978
  # data received is the same data that was originally sent. This
18560
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object
18979
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the object
18561
18980
  # returned by the Object Lambda function. This may not match the
18562
18981
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
18563
18982
  # validation of the checksum values only when the original `GetObject`
@@ -18573,10 +18992,22 @@ module Aws::S3
18573
18992
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
18574
18993
  # @return [String]
18575
18994
  #
18995
+ # @!attribute [rw] checksum_crc64nvme
18996
+ # This header can be used as a data integrity check to verify that the
18997
+ # data received is the same data that was originally sent. This header
18998
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
18999
+ # part. For more information, see [Checking object integrity][1] in
19000
+ # the *Amazon S3 User Guide*.
19001
+ #
19002
+ #
19003
+ #
19004
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
19005
+ # @return [String]
19006
+ #
18576
19007
  # @!attribute [rw] checksum_sha1
18577
19008
  # This header can be used as a data integrity check to verify that the
18578
19009
  # data received is the same data that was originally sent. This
18579
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object
19010
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object
18580
19011
  # returned by the Object Lambda function. This may not match the
18581
19012
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
18582
19013
  # validation of the checksum values only when the original `GetObject`
@@ -18595,7 +19026,7 @@ module Aws::S3
18595
19026
  # @!attribute [rw] checksum_sha256
18596
19027
  # This header can be used as a data integrity check to verify that the
18597
19028
  # data received is the same data that was originally sent. This
18598
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object
19029
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object
18599
19030
  # returned by the Object Lambda function. This may not match the
18600
19031
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
18601
19032
  # validation of the checksum values only when the original `GetObject`
@@ -18613,7 +19044,12 @@ module Aws::S3
18613
19044
  #
18614
19045
  # @!attribute [rw] delete_marker
18615
19046
  # Specifies whether an object stored in Amazon S3 is (`true`) or is
18616
- # not (`false`) a delete marker.
19047
+ # not (`false`) a delete marker. To learn more about delete markers,
19048
+ # see [Working with delete markers][1].
19049
+ #
19050
+ #
19051
+ #
19052
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
18617
19053
  # @return [Boolean]
18618
19054
  #
18619
19055
  # @!attribute [rw] etag
@@ -18769,6 +19205,7 @@ module Aws::S3
18769
19205
  :content_type,
18770
19206
  :checksum_crc32,
18771
19207
  :checksum_crc32c,
19208
+ :checksum_crc64nvme,
18772
19209
  :checksum_sha1,
18773
19210
  :checksum_sha256,
18774
19211
  :delete_marker,