aws-sdk-s3 1.176.1 → 1.182.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 +40 -29
  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 +764 -602
  16. data/lib/aws-sdk-s3/client_api.rb +35 -2
  17. data/lib/aws-sdk-s3/endpoint_provider.rb +260 -277
  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 +46 -4
  21. data/lib/aws-sdk-s3/multipart_upload_part.rb +50 -34
  22. data/lib/aws-sdk-s3/object.rb +139 -100
  23. data/lib/aws-sdk-s3/object_acl.rb +4 -4
  24. data/lib/aws-sdk-s3/object_summary.rb +87 -70
  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 +962 -610
  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,7 +59,7 @@ 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
  #
@@ -79,14 +79,14 @@ module Aws::S3
79
79
  #
80
80
  # </note>
81
81
  #
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 `
82
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
83
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
84
+ # Outposts hostname takes the form `
85
85
  # 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*.
86
+ # When you use this action with S3 on Outposts, the destination bucket
87
+ # must be the Outposts access point ARN or the access point alias. For
88
+ # more information about S3 on Outposts, see [What is S3 on
89
+ # Outposts?][3] in the *Amazon S3 User Guide*.
90
90
  #
91
91
  #
92
92
  #
@@ -655,14 +655,14 @@ module Aws::S3
655
655
  # Contains all the possible checksum or digest values for an object.
656
656
  #
657
657
  # @!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*.
658
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
659
+ # checksum is only be present if the checksum was uploaded with the
660
+ # object. When you use an API operation on an object that was uploaded
661
+ # using multipart uploads, this value may not be a direct checksum
662
+ # value of the full object. Instead, it's a calculation based on the
663
+ # checksum values of each individual part. For more information about
664
+ # how checksums are calculated with multipart uploads, see [ Checking
665
+ # object integrity][1] in the *Amazon S3 User Guide*.
666
666
  #
667
667
  #
668
668
  #
@@ -670,24 +670,37 @@ module Aws::S3
670
670
  # @return [String]
671
671
  #
672
672
  # @!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*.
673
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
674
+ # checksum is only present if the checksum was uploaded with the
675
+ # object. When you use an API operation on an object that was uploaded
676
+ # using multipart uploads, this value may not be a direct checksum
677
+ # value of the full object. Instead, it's a calculation based on the
678
+ # checksum values of each individual part. For more information about
679
+ # how checksums are calculated with multipart uploads, see [ Checking
680
+ # object integrity][1] in the *Amazon S3 User Guide*.
681
681
  #
682
682
  #
683
683
  #
684
684
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
685
685
  # @return [String]
686
686
  #
687
+ # @!attribute [rw] checksum_crc64nvme
688
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. This
689
+ # checksum is present if the object was uploaded with the `CRC64NVME`
690
+ # checksum algorithm, or if the object was uploaded without a checksum
691
+ # (and Amazon S3 added the default checksum, `CRC64NVME`, to the
692
+ # uploaded object). For more information, see [Checking object
693
+ # integrity][1] in the *Amazon S3 User Guide*.
694
+ #
695
+ #
696
+ #
697
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
698
+ # @return [String]
699
+ #
687
700
  # @!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
701
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
702
+ # only be present if the object was uploaded with the object. When you
703
+ # use the API operation on an object that was uploaded using multipart
691
704
  # uploads, this value may not be a direct checksum value of the full
692
705
  # object. Instead, it's a calculation based on the checksum values of
693
706
  # each individual part. For more information about how checksums are
@@ -700,9 +713,9 @@ module Aws::S3
700
713
  # @return [String]
701
714
  #
702
715
  # @!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
716
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
717
+ # only be present if the object was uploaded with the object. When you
718
+ # use an API operation on an object that was uploaded using multipart
706
719
  # uploads, this value may not be a direct checksum value of the full
707
720
  # object. Instead, it's a calculation based on the checksum values of
708
721
  # each individual part. For more information about how checksums are
@@ -714,13 +727,25 @@ module Aws::S3
714
727
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
715
728
  # @return [String]
716
729
  #
730
+ # @!attribute [rw] checksum_type
731
+ # The checksum type that is used to calculate the object’s checksum
732
+ # value. For more information, see [Checking object integrity][1] in
733
+ # the *Amazon S3 User Guide*.
734
+ #
735
+ #
736
+ #
737
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
738
+ # @return [String]
739
+ #
717
740
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Checksum AWS API Documentation
718
741
  #
719
742
  class Checksum < Struct.new(
720
743
  :checksum_crc32,
721
744
  :checksum_crc32c,
745
+ :checksum_crc64nvme,
722
746
  :checksum_sha1,
723
- :checksum_sha256)
747
+ :checksum_sha256,
748
+ :checksum_type)
724
749
  SENSITIVE = []
725
750
  include Aws::Structure
726
751
  end
@@ -824,14 +849,14 @@ module Aws::S3
824
849
  # @return [String]
825
850
  #
826
851
  # @!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*.
852
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
853
+ # checksum is only be present if the checksum was uploaded with the
854
+ # object. When you use an API operation on an object that was uploaded
855
+ # using multipart uploads, this value may not be a direct checksum
856
+ # value of the full object. Instead, it's a calculation based on the
857
+ # checksum values of each individual part. For more information about
858
+ # how checksums are calculated with multipart uploads, see [ Checking
859
+ # object integrity][1] in the *Amazon S3 User Guide*.
835
860
  #
836
861
  #
837
862
  #
@@ -839,24 +864,37 @@ module Aws::S3
839
864
  # @return [String]
840
865
  #
841
866
  # @!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*.
867
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
868
+ # checksum is only present if the checksum was uploaded with the
869
+ # object. When you use an API operation on an object that was uploaded
870
+ # using multipart uploads, this value may not be a direct checksum
871
+ # value of the full object. Instead, it's a calculation based on the
872
+ # checksum values of each individual part. For more information about
873
+ # how checksums are calculated with multipart uploads, see [ Checking
874
+ # object integrity][1] in the *Amazon S3 User Guide*.
850
875
  #
851
876
  #
852
877
  #
853
878
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
854
879
  # @return [String]
855
880
  #
881
+ # @!attribute [rw] checksum_crc64nvme
882
+ # This header can be used as a data integrity check to verify that the
883
+ # data received is the same data that was originally sent. This header
884
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
885
+ # object. The `CRC64NVME` checksum is always a full object checksum.
886
+ # For more information, see [Checking object integrity in the Amazon
887
+ # S3 User Guide][1].
888
+ #
889
+ #
890
+ #
891
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
892
+ # @return [String]
893
+ #
856
894
  # @!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
895
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
896
+ # only be present if the object was uploaded with the object. When you
897
+ # use the API operation on an object that was uploaded using multipart
860
898
  # uploads, this value may not be a direct checksum value of the full
861
899
  # object. Instead, it's a calculation based on the checksum values of
862
900
  # each individual part. For more information about how checksums are
@@ -869,9 +907,9 @@ module Aws::S3
869
907
  # @return [String]
870
908
  #
871
909
  # @!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
910
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
911
+ # only be present if the object was uploaded with the object. When you
912
+ # use an API operation on an object that was uploaded using multipart
875
913
  # uploads, this value may not be a direct checksum value of the full
876
914
  # object. Instead, it's a calculation based on the checksum values of
877
915
  # each individual part. For more information about how checksums are
@@ -883,6 +921,20 @@ module Aws::S3
883
921
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
884
922
  # @return [String]
885
923
  #
924
+ # @!attribute [rw] checksum_type
925
+ # The checksum type, which determines how part-level checksums are
926
+ # combined to create an object-level checksum for multipart objects.
927
+ # You can use this header as a data integrity check to verify that the
928
+ # checksum type that is received is the same checksum type that was
929
+ # specified during the `CreateMultipartUpload` request. For more
930
+ # information, see [Checking object integrity in the Amazon S3 User
931
+ # Guide][1].
932
+ #
933
+ #
934
+ #
935
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
936
+ # @return [String]
937
+ #
886
938
  # @!attribute [rw] server_side_encryption
887
939
  # The server-side encryption algorithm used when storing this object
888
940
  # in Amazon S3 (for example, `AES256`, `aws:kms`).
@@ -927,8 +979,10 @@ module Aws::S3
927
979
  :etag,
928
980
  :checksum_crc32,
929
981
  :checksum_crc32c,
982
+ :checksum_crc64nvme,
930
983
  :checksum_sha1,
931
984
  :checksum_sha256,
985
+ :checksum_type,
932
986
  :server_side_encryption,
933
987
  :version_id,
934
988
  :ssekms_key_id,
@@ -947,7 +1001,7 @@ module Aws::S3
947
1001
  # requests are not supported. Directory bucket names must be unique in
948
1002
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
949
1003
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
950
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
1004
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
951
1005
  # naming restrictions, see [Directory bucket naming rules][1] in the
952
1006
  # *Amazon S3 User Guide*.
953
1007
  #
@@ -967,14 +1021,14 @@ module Aws::S3
967
1021
  #
968
1022
  # </note>
969
1023
  #
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 `
1024
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
1025
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
1026
+ # Outposts hostname takes the form `
973
1027
  # 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*.
1028
+ # When you use this action with S3 on Outposts, the destination bucket
1029
+ # must be the Outposts access point ARN or the access point alias. For
1030
+ # more information about S3 on Outposts, see [What is S3 on
1031
+ # Outposts?][3] in the *Amazon S3 User Guide*.
978
1032
  #
979
1033
  #
980
1034
  #
@@ -998,7 +1052,7 @@ module Aws::S3
998
1052
  # @!attribute [rw] checksum_crc32
999
1053
  # This header can be used as a data integrity check to verify that the
1000
1054
  # 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.
1055
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
1002
1056
  # For more information, see [Checking object integrity][1] in the
1003
1057
  # *Amazon S3 User Guide*.
1004
1058
  #
@@ -1010,9 +1064,22 @@ module Aws::S3
1010
1064
  # @!attribute [rw] checksum_crc32c
1011
1065
  # This header can be used as a data integrity check to verify that the
1012
1066
  # 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*.
1067
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the
1068
+ # object. For more information, see [Checking object integrity][1] in
1069
+ # the *Amazon S3 User Guide*.
1070
+ #
1071
+ #
1072
+ #
1073
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1074
+ # @return [String]
1075
+ #
1076
+ # @!attribute [rw] checksum_crc64nvme
1077
+ # This header can be used as a data integrity check to verify that the
1078
+ # data received is the same data that was originally sent. This header
1079
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
1080
+ # object. The `CRC64NVME` checksum is always a full object checksum.
1081
+ # For more information, see [Checking object integrity in the Amazon
1082
+ # S3 User Guide][1].
1016
1083
  #
1017
1084
  #
1018
1085
  #
@@ -1022,7 +1089,7 @@ module Aws::S3
1022
1089
  # @!attribute [rw] checksum_sha1
1023
1090
  # This header can be used as a data integrity check to verify that the
1024
1091
  # 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.
1092
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object.
1026
1093
  # For more information, see [Checking object integrity][1] in the
1027
1094
  # *Amazon S3 User Guide*.
1028
1095
  #
@@ -1034,7 +1101,7 @@ module Aws::S3
1034
1101
  # @!attribute [rw] checksum_sha256
1035
1102
  # This header can be used as a data integrity check to verify that the
1036
1103
  # 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.
1104
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
1038
1105
  # For more information, see [Checking object integrity][1] in the
1039
1106
  # *Amazon S3 User Guide*.
1040
1107
  #
@@ -1043,6 +1110,25 @@ module Aws::S3
1043
1110
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1044
1111
  # @return [String]
1045
1112
  #
1113
+ # @!attribute [rw] checksum_type
1114
+ # This header specifies the checksum type of the object, which
1115
+ # determines how part-level checksums are combined to create an
1116
+ # object-level checksum for multipart objects. You can use this header
1117
+ # as a data integrity check to verify that the checksum type that is
1118
+ # received is the same checksum that was specified. If the checksum
1119
+ # type doesn’t match the checksum type that was specified for the
1120
+ # object during the `CreateMultipartUpload` request, it’ll result in a
1121
+ # `BadDigest` error. For more information, see Checking object
1122
+ # integrity in the Amazon S3 User Guide.
1123
+ # @return [String]
1124
+ #
1125
+ # @!attribute [rw] mpu_object_size
1126
+ # The expected total object size of the multipart upload request. If
1127
+ # there’s a mismatch between the specified object size value and the
1128
+ # actual object size value, it results in an `HTTP 400 InvalidRequest`
1129
+ # error.
1130
+ # @return [Integer]
1131
+ #
1046
1132
  # @!attribute [rw] request_payer
1047
1133
  # Confirms that the requester knows that they will be charged for the
1048
1134
  # request. Bucket owners need not specify this parameter in their
@@ -1166,8 +1252,11 @@ module Aws::S3
1166
1252
  :upload_id,
1167
1253
  :checksum_crc32,
1168
1254
  :checksum_crc32c,
1255
+ :checksum_crc64nvme,
1169
1256
  :checksum_sha1,
1170
1257
  :checksum_sha256,
1258
+ :checksum_type,
1259
+ :mpu_object_size,
1171
1260
  :request_payer,
1172
1261
  :expected_bucket_owner,
1173
1262
  :if_match,
@@ -1203,63 +1292,59 @@ module Aws::S3
1203
1292
  # @return [String]
1204
1293
  #
1205
1294
  # @!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*.
1295
+ # The Base64 encoded, 32-bit `CRC32` checksum of the part. This
1296
+ # checksum is present if the multipart upload request was created with
1297
+ # the `CRC32` checksum algorithm. For more information, see [Checking
1298
+ # object integrity][1] in the *Amazon S3 User Guide*.
1214
1299
  #
1215
1300
  #
1216
1301
  #
1217
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
1302
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1218
1303
  # @return [String]
1219
1304
  #
1220
1305
  # @!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*.
1306
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the part. This
1307
+ # checksum is present if the multipart upload request was created with
1308
+ # the `CRC32C` checksum algorithm. For more information, see [Checking
1309
+ # object integrity][1] in the *Amazon S3 User Guide*.
1229
1310
  #
1230
1311
  #
1231
1312
  #
1232
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
1313
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1314
+ # @return [String]
1315
+ #
1316
+ # @!attribute [rw] checksum_crc64nvme
1317
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the part. This
1318
+ # checksum is present if the multipart upload request was created with
1319
+ # the `CRC64NVME` checksum algorithm to the uploaded object). For more
1320
+ # information, see [Checking object integrity][1] in the *Amazon S3
1321
+ # User Guide*.
1322
+ #
1323
+ #
1324
+ #
1325
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1233
1326
  # @return [String]
1234
1327
  #
1235
1328
  # @!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*.
1329
+ # The Base64 encoded, 160-bit `SHA1` checksum of the part. This
1330
+ # checksum is present if the multipart upload request was created with
1331
+ # the `SHA1` checksum algorithm. For more information, see [Checking
1332
+ # object integrity][1] in the *Amazon S3 User Guide*.
1244
1333
  #
1245
1334
  #
1246
1335
  #
1247
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
1336
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1248
1337
  # @return [String]
1249
1338
  #
1250
1339
  # @!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*.
1340
+ # The Base64 encoded, 256-bit `SHA256` checksum of the part. This
1341
+ # checksum is present if the multipart upload request was created with
1342
+ # the `SHA256` checksum algorithm. For more information, see [Checking
1343
+ # object integrity][1] in the *Amazon S3 User Guide*.
1259
1344
  #
1260
1345
  #
1261
1346
  #
1262
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
1347
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
1263
1348
  # @return [String]
1264
1349
  #
1265
1350
  # @!attribute [rw] part_number
@@ -1287,6 +1372,7 @@ module Aws::S3
1287
1372
  :etag,
1288
1373
  :checksum_crc32,
1289
1374
  :checksum_crc32c,
1375
+ :checksum_crc64nvme,
1290
1376
  :checksum_sha1,
1291
1377
  :checksum_sha256,
1292
1378
  :part_number)
@@ -1410,8 +1496,8 @@ module Aws::S3
1410
1496
  #
1411
1497
  # @!attribute [rw] ssekms_encryption_context
1412
1498
  # 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
1499
+ # to use for object encryption. The value of this header is a Base64
1500
+ # encoded UTF-8 string holding JSON with the encryption context
1415
1501
  # key-value pairs.
1416
1502
  # @return [String]
1417
1503
  #
@@ -1491,7 +1577,7 @@ module Aws::S3
1491
1577
  # requests are not supported. Directory bucket names must be unique in
1492
1578
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
1493
1579
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
1494
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
1580
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
1495
1581
  # naming restrictions, see [Directory bucket naming rules][1] in the
1496
1582
  # *Amazon S3 User Guide*.
1497
1583
  #
@@ -1519,14 +1605,19 @@ module Aws::S3
1519
1605
  #
1520
1606
  # </note>
1521
1607
  #
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 `
1608
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
1609
+ # you must use the Outpost bucket access point ARN or the access point
1610
+ # alias for the destination bucket. You can only copy objects within
1611
+ # the same Outpost bucket. It's not supported to copy objects across
1612
+ # different Amazon Web Services Outposts, between buckets on the same
1613
+ # Outposts, or between Outposts buckets and any other bucket types.
1614
+ # For more information about S3 on Outposts, see [What is S3 on
1615
+ # Outposts?][3] in the *S3 on Outposts guide*. When you use this
1616
+ # action with S3 on Outposts through the REST API, you must direct
1617
+ # requests to the S3 on Outposts hostname, in the format `
1525
1618
  # 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*.
1619
+ # The hostname isn't required when you use the Amazon Web Services
1620
+ # CLI or SDKs.
1530
1621
  #
1531
1622
  #
1532
1623
  #
@@ -2043,21 +2134,17 @@ module Aws::S3
2043
2134
  # Signature Version in Request Authentication][1] in the *Amazon S3
2044
2135
  # User Guide*.
2045
2136
  #
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.
2137
+ # **Directory buckets** - To encrypt data using SSE-KMS, it's
2138
+ # recommended to specify the `x-amz-server-side-encryption` header to
2139
+ # `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
2140
+ # header implicitly uses the bucket's default KMS customer managed
2141
+ # key ID. If you want to explicitly set the `
2142
+ # x-amz-server-side-encryption-aws-kms-key-id` header, it must match
2143
+ # the bucket's default customer managed key (using key ID or ARN, not
2144
+ # alias). Your SSE-KMS configuration can only support 1 [customer
2145
+ # managed key][2] per directory bucket's lifetime. The [Amazon Web
2146
+ # Services managed key][3] (`aws/s3`) isn't supported. Incorrect key
2147
+ # specification results in an HTTP `400 Bad Request` error.
2061
2148
  #
2062
2149
  #
2063
2150
  #
@@ -2331,11 +2418,21 @@ module Aws::S3
2331
2418
  # Creation date of the object.
2332
2419
  # @return [Time]
2333
2420
  #
2421
+ # @!attribute [rw] checksum_type
2422
+ # The checksum type that is used to calculate the object’s checksum
2423
+ # value. For more information, see [Checking object integrity][1] in
2424
+ # the *Amazon S3 User Guide*.
2425
+ #
2426
+ #
2427
+ #
2428
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2429
+ # @return [String]
2430
+ #
2334
2431
  # @!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*.
2432
+ # The Base64 encoded, 32-bit `CRC32` checksum of the object. This
2433
+ # checksum is only present if the object was uploaded with the object.
2434
+ # For more information, see [ Checking object integrity][1] in the
2435
+ # *Amazon S3 User Guide*.
2339
2436
  #
2340
2437
  #
2341
2438
  #
@@ -2343,10 +2440,23 @@ module Aws::S3
2343
2440
  # @return [String]
2344
2441
  #
2345
2442
  # @!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*.
2443
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
2444
+ # will only be present if the object was uploaded with the object. For
2445
+ # more information, see [ Checking object integrity][1] in the *Amazon
2446
+ # S3 User Guide*.
2447
+ #
2448
+ #
2449
+ #
2450
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2451
+ # @return [String]
2452
+ #
2453
+ # @!attribute [rw] checksum_crc64nvme
2454
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. This
2455
+ # checksum is present if the object being copied was uploaded with the
2456
+ # `CRC64NVME` checksum algorithm, or if the object was uploaded
2457
+ # without a checksum (and Amazon S3 added the default checksum,
2458
+ # `CRC64NVME`, to the uploaded object). For more information, see
2459
+ # [Checking object integrity][1] in the *Amazon S3 User Guide*.
2350
2460
  #
2351
2461
  #
2352
2462
  #
@@ -2354,8 +2464,8 @@ module Aws::S3
2354
2464
  # @return [String]
2355
2465
  #
2356
2466
  # @!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
2467
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
2468
+ # only be present if the object was uploaded with the object. For more
2359
2469
  # information, see [ Checking object integrity][1] in the *Amazon S3
2360
2470
  # User Guide*.
2361
2471
  #
@@ -2365,8 +2475,8 @@ module Aws::S3
2365
2475
  # @return [String]
2366
2476
  #
2367
2477
  # @!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
2478
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
2479
+ # only be present if the object was uploaded with the object. For more
2370
2480
  # information, see [ Checking object integrity][1] in the *Amazon S3
2371
2481
  # User Guide*.
2372
2482
  #
@@ -2380,8 +2490,10 @@ module Aws::S3
2380
2490
  class CopyObjectResult < Struct.new(
2381
2491
  :etag,
2382
2492
  :last_modified,
2493
+ :checksum_type,
2383
2494
  :checksum_crc32,
2384
2495
  :checksum_crc32c,
2496
+ :checksum_crc64nvme,
2385
2497
  :checksum_sha1,
2386
2498
  :checksum_sha256)
2387
2499
  SENSITIVE = []
@@ -2399,63 +2511,63 @@ module Aws::S3
2399
2511
  # @return [Time]
2400
2512
  #
2401
2513
  # @!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*.
2514
+ # This header can be used as a data integrity check to verify that the
2515
+ # data received is the same data that was originally sent. This header
2516
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the part.
2517
+ # For more information, see [Checking object integrity][1] in the
2518
+ # *Amazon S3 User Guide*.
2410
2519
  #
2411
2520
  #
2412
2521
  #
2413
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
2522
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2414
2523
  # @return [String]
2415
2524
  #
2416
2525
  # @!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*.
2526
+ # This header can be used as a data integrity check to verify that the
2527
+ # data received is the same data that was originally sent. This header
2528
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the part.
2529
+ # For more information, see [Checking object integrity][1] in the
2530
+ # *Amazon S3 User Guide*.
2425
2531
  #
2426
2532
  #
2427
2533
  #
2428
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
2534
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2535
+ # @return [String]
2536
+ #
2537
+ # @!attribute [rw] checksum_crc64nvme
2538
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the part. This
2539
+ # checksum is present if the multipart upload request was created with
2540
+ # the `CRC64NVME` checksum algorithm to the uploaded object). For more
2541
+ # information, see [Checking object integrity][1] in the *Amazon S3
2542
+ # User Guide*.
2543
+ #
2544
+ #
2545
+ #
2546
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2429
2547
  # @return [String]
2430
2548
  #
2431
2549
  # @!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*.
2550
+ # This header can be used as a data integrity check to verify that the
2551
+ # data received is the same data that was originally sent. This header
2552
+ # specifies the Base64 encoded, 160-bit `SHA1` checksum of the part.
2553
+ # For more information, see [Checking object integrity][1] in the
2554
+ # *Amazon S3 User Guide*.
2440
2555
  #
2441
2556
  #
2442
2557
  #
2443
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
2558
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2444
2559
  # @return [String]
2445
2560
  #
2446
2561
  # @!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*.
2562
+ # This header can be used as a data integrity check to verify that the
2563
+ # data received is the same data that was originally sent. This header
2564
+ # specifies the Base64 encoded, 256-bit `SHA256` checksum of the part.
2565
+ # For more information, see [Checking object integrity][1] in the
2566
+ # *Amazon S3 User Guide*.
2455
2567
  #
2456
2568
  #
2457
2569
  #
2458
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
2570
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2459
2571
  # @return [String]
2460
2572
  #
2461
2573
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyPartResult AWS API Documentation
@@ -2465,6 +2577,7 @@ module Aws::S3
2465
2577
  :last_modified,
2466
2578
  :checksum_crc32,
2467
2579
  :checksum_crc32c,
2580
+ :checksum_crc64nvme,
2468
2581
  :checksum_sha1,
2469
2582
  :checksum_sha256)
2470
2583
  SENSITIVE = []
@@ -2478,11 +2591,14 @@ module Aws::S3
2478
2591
  # choose a Region to optimize latency, minimize costs, or address
2479
2592
  # regulatory requirements. For example, if you reside in Europe, you
2480
2593
  # will probably find it advantageous to create buckets in the Europe
2481
- # (Ireland) Region. For more information, see [Accessing a bucket][1]
2482
- # in the *Amazon S3 User Guide*.
2594
+ # (Ireland) Region.
2483
2595
  #
2484
2596
  # If you don't specify a Region, the bucket is created in the US East
2485
- # (N. Virginia) Region (us-east-1) by default.
2597
+ # (N. Virginia) Region (us-east-1) by default. Configurations using
2598
+ # the value `EU` will create a bucket in `eu-west-1`.
2599
+ #
2600
+ # For a list of the valid values for all of the Amazon Web Services
2601
+ # Regions, see [Regions and Endpoints][1].
2486
2602
  #
2487
2603
  # <note markdown="1"> This functionality is not supported for directory buckets.
2488
2604
  #
@@ -2490,17 +2606,17 @@ module Aws::S3
2490
2606
  #
2491
2607
  #
2492
2608
  #
2493
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro
2609
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
2494
2610
  # @return [String]
2495
2611
  #
2496
2612
  # @!attribute [rw] location
2497
2613
  # Specifies the location where the bucket will be created.
2498
2614
  #
2499
2615
  # <b>Directory buckets </b> - The location type is Availability Zone
2500
- # or Local Zone. When the location type is Local Zone, your Local Zone
2501
- # must be in opt-in status. Otherwise, you get an HTTP `400 Bad
2502
- # Request` error with the error code `Access denied`. To learn more
2503
- # about opt-in Local Zones, see [Opt-in Dedicated Local Zones][1]in
2616
+ # or Local Zone. To use the Local Zone location type, your account
2617
+ # must be enabled for Dedicated Local Zones. Otherwise, you get an
2618
+ # HTTP `403 Forbidden` error with the error code `AccessDenied`. To
2619
+ # learn more, see [Enable accounts for Dedicated Local Zones][1] in
2504
2620
  # the *Amazon S3 User Guide*.
2505
2621
  #
2506
2622
  # <note markdown="1"> This functionality is only supported by directory buckets.
@@ -2802,8 +2918,8 @@ module Aws::S3
2802
2918
  #
2803
2919
  # @!attribute [rw] ssekms_encryption_context
2804
2920
  # If present, indicates the Amazon Web Services KMS Encryption Context
2805
- # to use for object encryption. The value of this header is a
2806
- # Base64-encoded string of a UTF-8 encoded JSON, which contains the
2921
+ # to use for object encryption. The value of this header is a Base64
2922
+ # encoded string of a UTF-8 encoded JSON, which contains the
2807
2923
  # encryption context as key-value pairs.
2808
2924
  # @return [String]
2809
2925
  #
@@ -2826,6 +2942,16 @@ module Aws::S3
2826
2942
  # The algorithm that was used to create a checksum of the object.
2827
2943
  # @return [String]
2828
2944
  #
2945
+ # @!attribute [rw] checksum_type
2946
+ # Indicates the checksum type that you want Amazon S3 to use to
2947
+ # calculate the object’s checksum value. For more information, see
2948
+ # [Checking object integrity in the Amazon S3 User Guide][1].
2949
+ #
2950
+ #
2951
+ #
2952
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
2953
+ # @return [String]
2954
+ #
2829
2955
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUploadOutput AWS API Documentation
2830
2956
  #
2831
2957
  class CreateMultipartUploadOutput < Struct.new(
@@ -2841,7 +2967,8 @@ module Aws::S3
2841
2967
  :ssekms_encryption_context,
2842
2968
  :bucket_key_enabled,
2843
2969
  :request_charged,
2844
- :checksum_algorithm)
2970
+ :checksum_algorithm,
2971
+ :checksum_type)
2845
2972
  SENSITIVE = [:ssekms_key_id, :ssekms_encryption_context]
2846
2973
  include Aws::Structure
2847
2974
  end
@@ -2883,7 +3010,7 @@ module Aws::S3
2883
3010
  # requests are not supported. Directory bucket names must be unique in
2884
3011
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
2885
3012
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
2886
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
3013
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
2887
3014
  # naming restrictions, see [Directory bucket naming rules][1] in the
2888
3015
  # *Amazon S3 User Guide*.
2889
3016
  #
@@ -2903,14 +3030,14 @@ module Aws::S3
2903
3030
  #
2904
3031
  # </note>
2905
3032
  #
2906
- # **S3 on Outposts** - When you use this action with Amazon S3 on
2907
- # Outposts, you must direct requests to the S3 on Outposts hostname.
2908
- # The S3 on Outposts hostname takes the form `
3033
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
3034
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
3035
+ # Outposts hostname takes the form `
2909
3036
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
2910
- # When you use this action with S3 on Outposts through the Amazon Web
2911
- # Services SDKs, you provide the Outposts access point ARN in place of
2912
- # the bucket name. For more information about S3 on Outposts ARNs, see
2913
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
3037
+ # When you use this action with S3 on Outposts, the destination bucket
3038
+ # must be the Outposts access point ARN or the access point alias. For
3039
+ # more information about S3 on Outposts, see [What is S3 on
3040
+ # Outposts?][3] in the *Amazon S3 User Guide*.
2914
3041
  #
2915
3042
  #
2916
3043
  #
@@ -3348,21 +3475,17 @@ module Aws::S3
3348
3475
  # `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
3349
3476
  # Amazon Web Services managed key (`aws/s3`) to protect the data.
3350
3477
  #
3351
- # **Directory buckets** - If you specify
3352
- # `x-amz-server-side-encryption` with `aws:kms`, the `
3353
- # x-amz-server-side-encryption-aws-kms-key-id` header is implicitly
3354
- # assigned the ID of the KMS symmetric encryption customer managed key
3355
- # that's configured for your directory bucket's default encryption
3356
- # setting. If you want to specify the `
3357
- # x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you
3358
- # can only specify it with the ID (Key ID or Key ARN) of the KMS
3359
- # customer managed key that's configured for your directory bucket's
3360
- # default encryption setting. Otherwise, you get an HTTP `400 Bad
3361
- # Request` error. Only use the key ID or key ARN. The key alias format
3362
- # of the KMS key isn't supported. Your SSE-KMS configuration can only
3363
- # support 1 [customer managed key][1] per directory bucket for the
3364
- # lifetime of the bucket. The [Amazon Web Services managed key][2]
3365
- # (`aws/s3`) isn't supported.
3478
+ # **Directory buckets** - To encrypt data using SSE-KMS, it's
3479
+ # recommended to specify the `x-amz-server-side-encryption` header to
3480
+ # `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
3481
+ # header implicitly uses the bucket's default KMS customer managed
3482
+ # key ID. If you want to explicitly set the `
3483
+ # x-amz-server-side-encryption-aws-kms-key-id` header, it must match
3484
+ # the bucket's default customer managed key (using key ID or ARN, not
3485
+ # alias). Your SSE-KMS configuration can only support 1 [customer
3486
+ # managed key][1] per directory bucket's lifetime. The [Amazon Web
3487
+ # Services managed key][2] (`aws/s3`) isn't supported. Incorrect key
3488
+ # specification results in an HTTP `400 Bad Request` error.
3366
3489
  #
3367
3490
  #
3368
3491
  #
@@ -3372,7 +3495,7 @@ module Aws::S3
3372
3495
  #
3373
3496
  # @!attribute [rw] ssekms_encryption_context
3374
3497
  # Specifies the Amazon Web Services KMS Encryption Context to use for
3375
- # object encryption. The value of this header is a Base64-encoded
3498
+ # object encryption. The value of this header is a Base64 encoded
3376
3499
  # string of a UTF-8 encoded JSON, which contains the encryption
3377
3500
  # context as key-value pairs.
3378
3501
  #
@@ -3480,6 +3603,16 @@ module Aws::S3
3480
3603
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
3481
3604
  # @return [String]
3482
3605
  #
3606
+ # @!attribute [rw] checksum_type
3607
+ # Indicates the checksum type that you want Amazon S3 to use to
3608
+ # calculate the object’s checksum value. For more information, see
3609
+ # [Checking object integrity in the Amazon S3 User Guide][1].
3610
+ #
3611
+ #
3612
+ #
3613
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
3614
+ # @return [String]
3615
+ #
3483
3616
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUploadRequest AWS API Documentation
3484
3617
  #
3485
3618
  class CreateMultipartUploadRequest < Struct.new(
@@ -3512,7 +3645,8 @@ module Aws::S3
3512
3645
  :object_lock_retain_until_date,
3513
3646
  :object_lock_legal_hold_status,
3514
3647
  :expected_bucket_owner,
3515
- :checksum_algorithm)
3648
+ :checksum_algorithm,
3649
+ :checksum_type)
3516
3650
  SENSITIVE = [:sse_customer_key, :ssekms_key_id, :ssekms_encryption_context]
3517
3651
  include Aws::Structure
3518
3652
  end
@@ -3530,8 +3664,8 @@ module Aws::S3
3530
3664
  #
3531
3665
  # @!attribute [rw] ssekms_encryption_context
3532
3666
  # If present, indicates the Amazon Web Services KMS Encryption Context
3533
- # to use for object encryption. The value of this header is a
3534
- # Base64-encoded string of a UTF-8 encoded JSON, which contains the
3667
+ # to use for object encryption. The value of this header is a Base64
3668
+ # encoded string of a UTF-8 encoded JSON, which contains the
3535
3669
  # encryption context as key-value pairs. This value is stored as
3536
3670
  # object metadata and automatically gets passed on to Amazon Web
3537
3671
  # Services KMS for future `GetObject` operations on this object.
@@ -3586,7 +3720,7 @@ module Aws::S3
3586
3720
  #
3587
3721
  #
3588
3722
  #
3589
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
3723
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html
3590
3724
  # @return [String]
3591
3725
  #
3592
3726
  # @!attribute [rw] ssekms_key_id
@@ -3600,8 +3734,8 @@ module Aws::S3
3600
3734
  # must use the full Key ARN not the Key ID.
3601
3735
  #
3602
3736
  # Your SSE-KMS configuration can only support 1 [customer managed
3603
- # key][1] per directory bucket for the lifetime of the bucket. The
3604
- # [Amazon Web Services managed key][2] (`aws/s3`) isn't supported.
3737
+ # key][1] per directory bucket's lifetime. The [Amazon Web Services
3738
+ # managed key][2] (`aws/s3`) isn't supported.
3605
3739
  #
3606
3740
  #
3607
3741
  #
@@ -3612,7 +3746,7 @@ module Aws::S3
3612
3746
  # @!attribute [rw] ssekms_encryption_context
3613
3747
  # Specifies the Amazon Web Services KMS Encryption Context as an
3614
3748
  # additional encryption context to use for object encryption. The
3615
- # value of this header is a Base64-encoded string of a UTF-8 encoded
3749
+ # value of this header is a Base64 encoded string of a UTF-8 encoded
3616
3750
  # JSON, which contains the encryption context as key-value pairs. This
3617
3751
  # value is stored as object metadata and automatically gets passed on
3618
3752
  # to Amazon Web Services KMS for future `GetObject` operations on this
@@ -4104,7 +4238,7 @@ module Aws::S3
4104
4238
  # Information about the delete marker.
4105
4239
  #
4106
4240
  # @!attribute [rw] owner
4107
- # The account that created the delete marker.&gt;
4241
+ # The account that created the delete marker.
4108
4242
  # @return [Types::Owner]
4109
4243
  #
4110
4244
  # @!attribute [rw] key
@@ -4180,10 +4314,16 @@ module Aws::S3
4180
4314
  # deleted was (true) or was not (false) a delete marker before
4181
4315
  # deletion. In a simple DELETE, this header indicates whether (true)
4182
4316
  # or not (false) the current version of the object is a delete marker.
4317
+ # To learn more about delete markers, see [Working with delete
4318
+ # markers][1].
4183
4319
  #
4184
4320
  # <note markdown="1"> This functionality is not supported for directory buckets.
4185
4321
  #
4186
4322
  # </note>
4323
+ #
4324
+ #
4325
+ #
4326
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
4187
4327
  # @return [Boolean]
4188
4328
  #
4189
4329
  # @!attribute [rw] version_id
@@ -4223,7 +4363,7 @@ module Aws::S3
4223
4363
  # requests are not supported. Directory bucket names must be unique in
4224
4364
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
4225
4365
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
4226
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
4366
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
4227
4367
  # naming restrictions, see [Directory bucket naming rules][1] in the
4228
4368
  # *Amazon S3 User Guide*.
4229
4369
  #
@@ -4243,14 +4383,14 @@ module Aws::S3
4243
4383
  #
4244
4384
  # </note>
4245
4385
  #
4246
- # **S3 on Outposts** - When you use this action with Amazon S3 on
4247
- # Outposts, you must direct requests to the S3 on Outposts hostname.
4248
- # The S3 on Outposts hostname takes the form `
4386
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
4387
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
4388
+ # Outposts hostname takes the form `
4249
4389
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
4250
- # When you use this action with S3 on Outposts through the Amazon Web
4251
- # Services SDKs, you provide the Outposts access point ARN in place of
4252
- # the bucket name. For more information about S3 on Outposts ARNs, see
4253
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
4390
+ # When you use this action with S3 on Outposts, the destination bucket
4391
+ # must be the Outposts access point ARN or the access point alias. For
4392
+ # more information about S3 on Outposts, see [What is S3 on
4393
+ # Outposts?][3] in the *Amazon S3 User Guide*.
4254
4394
  #
4255
4395
  #
4256
4396
  #
@@ -4333,7 +4473,7 @@ module Aws::S3
4333
4473
  #
4334
4474
  #
4335
4475
  #
4336
- # [1]: https://docs.aws.amazon.com/https:/tools.ietf.org/html/rfc7232
4476
+ # [1]: https://tools.ietf.org/html/rfc7232
4337
4477
  # @return [String]
4338
4478
  #
4339
4479
  # @!attribute [rw] if_match_last_modified_time
@@ -4408,14 +4548,14 @@ module Aws::S3
4408
4548
  # bucket name. For more information about access point ARNs, see
4409
4549
  # [Using access points][1] in the *Amazon S3 User Guide*.
4410
4550
  #
4411
- # **S3 on Outposts** - When you use this action with Amazon S3 on
4412
- # Outposts, you must direct requests to the S3 on Outposts hostname.
4413
- # The S3 on Outposts hostname takes the form `
4551
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
4552
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
4553
+ # Outposts hostname takes the form `
4414
4554
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
4415
- # When you use this action with S3 on Outposts through the Amazon Web
4416
- # Services SDKs, you provide the Outposts access point ARN in place of
4417
- # the bucket name. For more information about S3 on Outposts ARNs, see
4418
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
4555
+ # When you use this action with S3 on Outposts, the destination bucket
4556
+ # must be the Outposts access point ARN or the access point alias. For
4557
+ # more information about S3 on Outposts, see [What is S3 on
4558
+ # Outposts?][2] in the *Amazon S3 User Guide*.
4419
4559
  #
4420
4560
  #
4421
4561
  #
@@ -4488,7 +4628,7 @@ module Aws::S3
4488
4628
  # requests are not supported. Directory bucket names must be unique in
4489
4629
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
4490
4630
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
4491
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
4631
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
4492
4632
  # naming restrictions, see [Directory bucket naming rules][1] in the
4493
4633
  # *Amazon S3 User Guide*.
4494
4634
  #
@@ -4508,14 +4648,14 @@ module Aws::S3
4508
4648
  #
4509
4649
  # </note>
4510
4650
  #
4511
- # **S3 on Outposts** - When you use this action with Amazon S3 on
4512
- # Outposts, you must direct requests to the S3 on Outposts hostname.
4513
- # The S3 on Outposts hostname takes the form `
4651
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
4652
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
4653
+ # Outposts hostname takes the form `
4514
4654
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
4515
- # When you use this action with S3 on Outposts through the Amazon Web
4516
- # Services SDKs, you provide the Outposts access point ARN in place of
4517
- # the bucket name. For more information about S3 on Outposts ARNs, see
4518
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
4655
+ # When you use this action with S3 on Outposts, the destination bucket
4656
+ # must be the Outposts access point ARN or the access point alias. For
4657
+ # more information about S3 on Outposts, see [What is S3 on
4658
+ # Outposts?][3] in the *Amazon S3 User Guide*.
4519
4659
  #
4520
4660
  #
4521
4661
  #
@@ -4603,6 +4743,8 @@ module Aws::S3
4603
4743
  #
4604
4744
  # * `CRC32C`
4605
4745
  #
4746
+ # * `CRC64NVME`
4747
+ #
4606
4748
  # * `SHA1`
4607
4749
  #
4608
4750
  # * `SHA256`
@@ -4612,10 +4754,8 @@ module Aws::S3
4612
4754
  #
4613
4755
  # If the individual checksum value you provide through
4614
4756
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm
4615
- # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores
4616
- # any provided `ChecksumAlgorithm` parameter and uses the checksum
4617
- # algorithm that matches the provided value in
4618
- # `x-amz-checksum-algorithm `.
4757
+ # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
4758
+ # request with a `BadDigest` error.
4619
4759
  #
4620
4760
  # If you provide an individual checksum, Amazon S3 ignores any
4621
4761
  # provided `ChecksumAlgorithm` parameter.
@@ -4679,10 +4819,16 @@ module Aws::S3
4679
4819
  # deleted was (true) or was not (false) a delete marker before
4680
4820
  # deletion. In a simple DELETE, this header indicates whether (true)
4681
4821
  # or not (false) the current version of the object is a delete marker.
4822
+ # To learn more about delete markers, see [Working with delete
4823
+ # markers][1].
4682
4824
  #
4683
4825
  # <note markdown="1"> This functionality is not supported for directory buckets.
4684
4826
  #
4685
4827
  # </note>
4828
+ #
4829
+ #
4830
+ #
4831
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
4686
4832
  # @return [Boolean]
4687
4833
  #
4688
4834
  # @!attribute [rw] delete_marker_version_id
@@ -6141,7 +6287,7 @@ module Aws::S3
6141
6287
  # Indicates which default minimum object size behavior is applied to
6142
6288
  # the lifecycle configuration.
6143
6289
  #
6144
- # <note markdown="1"> This parameter applies to general purpose buckets only. It is not
6290
+ # <note markdown="1"> This parameter applies to general purpose buckets only. It isn't
6145
6291
  # supported for directory bucket lifecycle configurations.
6146
6292
  #
6147
6293
  # </note>
@@ -6229,8 +6375,10 @@ module Aws::S3
6229
6375
  # @!attribute [rw] location_constraint
6230
6376
  # Specifies the Region where the bucket resides. For a list of all the
6231
6377
  # Amazon S3 supported location constraints by Region, see [Regions and
6232
- # Endpoints][1]. Buckets in Region `us-east-1` have a
6233
- # LocationConstraint of `null`.
6378
+ # Endpoints][1].
6379
+ #
6380
+ # Buckets in Region `us-east-1` have a LocationConstraint of `null`.
6381
+ # Buckets with a LocationConstraint of `EU` reside in `eu-west-1`.
6234
6382
  #
6235
6383
  #
6236
6384
  #
@@ -6884,11 +7032,16 @@ module Aws::S3
6884
7032
  # @!attribute [rw] delete_marker
6885
7033
  # Specifies whether the object retrieved was (`true`) or was not
6886
7034
  # (`false`) a delete marker. If `false`, this response header does not
6887
- # appear in the response.
7035
+ # appear in the response. To learn more about delete markers, see
7036
+ # [Working with delete markers][1].
6888
7037
  #
6889
7038
  # <note markdown="1"> This functionality is not supported for directory buckets.
6890
7039
  #
6891
7040
  # </note>
7041
+ #
7042
+ #
7043
+ #
7044
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
6892
7045
  # @return [Boolean]
6893
7046
  #
6894
7047
  # @!attribute [rw] last_modified
@@ -7028,7 +7181,7 @@ module Aws::S3
7028
7181
  # requests are not supported. Directory bucket names must be unique in
7029
7182
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
7030
7183
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
7031
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
7184
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
7032
7185
  # naming restrictions, see [Directory bucket naming rules][1] in the
7033
7186
  # *Amazon S3 User Guide*.
7034
7187
  #
@@ -7048,14 +7201,14 @@ module Aws::S3
7048
7201
  #
7049
7202
  # </note>
7050
7203
  #
7051
- # **S3 on Outposts** - When you use this action with Amazon S3 on
7052
- # Outposts, you must direct requests to the S3 on Outposts hostname.
7053
- # The S3 on Outposts hostname takes the form `
7204
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
7205
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
7206
+ # Outposts hostname takes the form `
7054
7207
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
7055
- # When you use this action with S3 on Outposts through the Amazon Web
7056
- # Services SDKs, you provide the Outposts access point ARN in place of
7057
- # the bucket name. For more information about S3 on Outposts ARNs, see
7058
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
7208
+ # When you use this action with S3 on Outposts, the destination bucket
7209
+ # must be the Outposts access point ARN or the access point alias. For
7210
+ # more information about S3 on Outposts, see [What is S3 on
7211
+ # Outposts?][3] in the *Amazon S3 User Guide*.
7059
7212
  #
7060
7213
  #
7061
7214
  #
@@ -7365,10 +7518,10 @@ module Aws::S3
7365
7518
  # @return [String]
7366
7519
  #
7367
7520
  # @!attribute [rw] checksum_crc32
7368
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
7369
- # only be present if it was uploaded with the object. For more
7370
- # information, see [ Checking object integrity][1] in the *Amazon S3
7371
- # User Guide*.
7521
+ # The Base64 encoded, 32-bit `CRC32` checksum of the object. This
7522
+ # checksum is only present if the object was uploaded with the object.
7523
+ # For more information, see [ Checking object integrity][1] in the
7524
+ # *Amazon S3 User Guide*.
7372
7525
  #
7373
7526
  #
7374
7527
  #
@@ -7376,10 +7529,20 @@ module Aws::S3
7376
7529
  # @return [String]
7377
7530
  #
7378
7531
  # @!attribute [rw] checksum_crc32c
7379
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
7380
- # only be present if it was uploaded with the object. For more
7381
- # information, see [ Checking object integrity][1] in the *Amazon S3
7382
- # User Guide*.
7532
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
7533
+ # will only be present if the object was uploaded with the object. For
7534
+ # more information, see [ Checking object integrity][1] in the *Amazon
7535
+ # S3 User Guide*.
7536
+ #
7537
+ #
7538
+ #
7539
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
7540
+ # @return [String]
7541
+ #
7542
+ # @!attribute [rw] checksum_crc64nvme
7543
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. For
7544
+ # more information, see [Checking object integrity in the Amazon S3
7545
+ # User Guide][1].
7383
7546
  #
7384
7547
  #
7385
7548
  #
@@ -7387,8 +7550,8 @@ module Aws::S3
7387
7550
  # @return [String]
7388
7551
  #
7389
7552
  # @!attribute [rw] checksum_sha1
7390
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
7391
- # only be present if it was uploaded with the object. For more
7553
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
7554
+ # only be present if the object was uploaded with the object. For more
7392
7555
  # information, see [ Checking object integrity][1] in the *Amazon S3
7393
7556
  # User Guide*.
7394
7557
  #
@@ -7398,8 +7561,8 @@ module Aws::S3
7398
7561
  # @return [String]
7399
7562
  #
7400
7563
  # @!attribute [rw] checksum_sha256
7401
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
7402
- # only be present if it was uploaded with the object. For more
7564
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
7565
+ # only be present if the object was uploaded with the object. For more
7403
7566
  # information, see [ Checking object integrity][1] in the *Amazon S3
7404
7567
  # User Guide*.
7405
7568
  #
@@ -7408,6 +7571,19 @@ module Aws::S3
7408
7571
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
7409
7572
  # @return [String]
7410
7573
  #
7574
+ # @!attribute [rw] checksum_type
7575
+ # The checksum type, which determines how part-level checksums are
7576
+ # combined to create an object-level checksum for multipart objects.
7577
+ # You can use this header response to verify that the checksum type
7578
+ # that is received is the same checksum type that was specified in the
7579
+ # `CreateMultipartUpload` request. For more information, see [Checking
7580
+ # object integrity][1] in the *Amazon S3 User Guide*.
7581
+ #
7582
+ #
7583
+ #
7584
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
7585
+ # @return [String]
7586
+ #
7411
7587
  # @!attribute [rw] missing_meta
7412
7588
  # This is set to the number of metadata entries not returned in the
7413
7589
  # headers that are prefixed with `x-amz-meta-`. This can happen if you
@@ -7602,8 +7778,10 @@ module Aws::S3
7602
7778
  :etag,
7603
7779
  :checksum_crc32,
7604
7780
  :checksum_crc32c,
7781
+ :checksum_crc64nvme,
7605
7782
  :checksum_sha1,
7606
7783
  :checksum_sha256,
7784
+ :checksum_type,
7607
7785
  :missing_meta,
7608
7786
  :version_id,
7609
7787
  :cache_control,
@@ -7642,7 +7820,7 @@ module Aws::S3
7642
7820
  # requests are not supported. Directory bucket names must be unique in
7643
7821
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
7644
7822
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
7645
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
7823
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
7646
7824
  # naming restrictions, see [Directory bucket naming rules][1] in the
7647
7825
  # *Amazon S3 User Guide*.
7648
7826
  #
@@ -7668,14 +7846,14 @@ module Aws::S3
7668
7846
  #
7669
7847
  # </note>
7670
7848
  #
7671
- # **S3 on Outposts** - When you use this action with Amazon S3 on
7672
- # Outposts, you must direct requests to the S3 on Outposts hostname.
7673
- # The S3 on Outposts hostname takes the form `
7849
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
7850
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
7851
+ # Outposts hostname takes the form `
7674
7852
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
7675
- # When you use this action with S3 on Outposts through the Amazon Web
7676
- # Services SDKs, you provide the Outposts access point ARN in place of
7677
- # the bucket name. For more information about S3 on Outposts ARNs, see
7678
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
7853
+ # When you use this action with S3 on Outposts, the destination bucket
7854
+ # must be the Outposts access point ARN or the access point alias. For
7855
+ # more information about S3 on Outposts, see [What is S3 on
7856
+ # Outposts?][3] in the *Amazon S3 User Guide*.
7679
7857
  #
7680
7858
  #
7681
7859
  #
@@ -7949,15 +8127,6 @@ module Aws::S3
7949
8127
  #
7950
8128
  # @!attribute [rw] checksum_mode
7951
8129
  # To retrieve the checksum, this mode must be enabled.
7952
- #
7953
- # **General purpose buckets** - In addition, if you enable checksum
7954
- # mode and the object is uploaded with a [checksum][1] and encrypted
7955
- # with an Key Management Service (KMS) key, you must have permission
7956
- # to use the `kms:Decrypt` action to retrieve the checksum.
7957
- #
7958
- #
7959
- #
7960
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
7961
8130
  # @return [String]
7962
8131
  #
7963
8132
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRequest AWS API Documentation
@@ -8100,14 +8269,14 @@ module Aws::S3
8100
8269
  # bucket name. For more information about access point ARNs, see
8101
8270
  # [Using access points][1] in the *Amazon S3 User Guide*.
8102
8271
  #
8103
- # **S3 on Outposts** - When you use this action with Amazon S3 on
8104
- # Outposts, you must direct requests to the S3 on Outposts hostname.
8105
- # The S3 on Outposts hostname takes the form `
8272
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
8273
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
8274
+ # Outposts hostname takes the form `
8106
8275
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8107
- # When you use this action with S3 on Outposts through the Amazon Web
8108
- # Services SDKs, you provide the Outposts access point ARN in place of
8109
- # the bucket name. For more information about S3 on Outposts ARNs, see
8110
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
8276
+ # When you use this action with S3 on Outposts, the destination bucket
8277
+ # must be the Outposts access point ARN or the access point alias. For
8278
+ # more information about S3 on Outposts, see [What is S3 on
8279
+ # Outposts?][2] in the *Amazon S3 User Guide*.
8111
8280
  #
8112
8281
  #
8113
8282
  #
@@ -8411,7 +8580,7 @@ module Aws::S3
8411
8580
  # requests are not supported. Directory bucket names must be unique in
8412
8581
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
8413
8582
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
8414
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
8583
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
8415
8584
  # naming restrictions, see [Directory bucket naming rules][1] in the
8416
8585
  # *Amazon S3 User Guide*.
8417
8586
  #
@@ -8438,14 +8607,14 @@ module Aws::S3
8438
8607
  #
8439
8608
  # </note>
8440
8609
  #
8441
- # **S3 on Outposts** - When you use this action with Amazon S3 on
8442
- # Outposts, you must direct requests to the S3 on Outposts hostname.
8443
- # The S3 on Outposts hostname takes the form `
8610
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
8611
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
8612
+ # Outposts hostname takes the form `
8444
8613
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8445
- # When you use this action with S3 on Outposts through the Amazon Web
8446
- # Services SDKs, you provide the Outposts access point ARN in place of
8447
- # the bucket name. For more information about S3 on Outposts ARNs, see
8448
- # [What is S3 on Outposts?][4] in the *Amazon S3 User Guide*.
8614
+ # When you use this action with S3 on Outposts, the destination bucket
8615
+ # must be the Outposts access point ARN or the access point alias. For
8616
+ # more information about S3 on Outposts, see [What is S3 on
8617
+ # Outposts?][4] in the *Amazon S3 User Guide*.
8449
8618
  #
8450
8619
  #
8451
8620
  #
@@ -8550,14 +8719,14 @@ module Aws::S3
8550
8719
  # @return [Integer]
8551
8720
  #
8552
8721
  # @!attribute [rw] checksum_crc32
8553
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
8554
- # only be present if it was uploaded with the object. When you use an
8555
- # API operation on an object that was uploaded using multipart
8556
- # uploads, this value may not be a direct checksum value of the full
8557
- # object. Instead, it's a calculation based on the checksum values of
8558
- # each individual part. For more information about how checksums are
8559
- # calculated with multipart uploads, see [ Checking object
8560
- # integrity][1] in the *Amazon S3 User Guide*.
8722
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
8723
+ # checksum is only be present if the checksum was uploaded with the
8724
+ # object. When you use an API operation on an object that was uploaded
8725
+ # using multipart uploads, this value may not be a direct checksum
8726
+ # value of the full object. Instead, it's a calculation based on the
8727
+ # checksum values of each individual part. For more information about
8728
+ # how checksums are calculated with multipart uploads, see [ Checking
8729
+ # object integrity][1] in the *Amazon S3 User Guide*.
8561
8730
  #
8562
8731
  #
8563
8732
  #
@@ -8565,24 +8734,34 @@ module Aws::S3
8565
8734
  # @return [String]
8566
8735
  #
8567
8736
  # @!attribute [rw] checksum_crc32c
8568
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
8569
- # only be present if it was uploaded with the object. When you use an
8570
- # API operation on an object that was uploaded using multipart
8571
- # uploads, this value may not be a direct checksum value of the full
8572
- # object. Instead, it's a calculation based on the checksum values of
8573
- # each individual part. For more information about how checksums are
8574
- # calculated with multipart uploads, see [ Checking object
8575
- # integrity][1] in the *Amazon S3 User Guide*.
8737
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
8738
+ # checksum is only present if the checksum was uploaded with the
8739
+ # object. When you use an API operation on an object that was uploaded
8740
+ # using multipart uploads, this value may not be a direct checksum
8741
+ # value of the full object. Instead, it's a calculation based on the
8742
+ # checksum values of each individual part. For more information about
8743
+ # how checksums are calculated with multipart uploads, see [ Checking
8744
+ # object integrity][1] in the *Amazon S3 User Guide*.
8576
8745
  #
8577
8746
  #
8578
8747
  #
8579
8748
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
8580
8749
  # @return [String]
8581
8750
  #
8751
+ # @!attribute [rw] checksum_crc64nvme
8752
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. For
8753
+ # more information, see [Checking object integrity in the Amazon S3
8754
+ # User Guide][1].
8755
+ #
8756
+ #
8757
+ #
8758
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
8759
+ # @return [String]
8760
+ #
8582
8761
  # @!attribute [rw] checksum_sha1
8583
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
8584
- # only be present if it was uploaded with the object. When you use the
8585
- # API operation on an object that was uploaded using multipart
8762
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
8763
+ # only be present if the object was uploaded with the object. When you
8764
+ # use the API operation on an object that was uploaded using multipart
8586
8765
  # uploads, this value may not be a direct checksum value of the full
8587
8766
  # object. Instead, it's a calculation based on the checksum values of
8588
8767
  # each individual part. For more information about how checksums are
@@ -8595,9 +8774,9 @@ module Aws::S3
8595
8774
  # @return [String]
8596
8775
  #
8597
8776
  # @!attribute [rw] checksum_sha256
8598
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
8599
- # only be present if it was uploaded with the object. When you use an
8600
- # API operation on an object that was uploaded using multipart
8777
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
8778
+ # only be present if the object was uploaded with the object. When you
8779
+ # use an API operation on an object that was uploaded using multipart
8601
8780
  # uploads, this value may not be a direct checksum value of the full
8602
8781
  # object. Instead, it's a calculation based on the checksum values of
8603
8782
  # each individual part. For more information about how checksums are
@@ -8609,6 +8788,19 @@ module Aws::S3
8609
8788
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
8610
8789
  # @return [String]
8611
8790
  #
8791
+ # @!attribute [rw] checksum_type
8792
+ # The checksum type, which determines how part-level checksums are
8793
+ # combined to create an object-level checksum for multipart objects.
8794
+ # You can use this header response to verify that the checksum type
8795
+ # that is received is the same checksum type that was specified in
8796
+ # `CreateMultipartUpload` request. For more information, see [Checking
8797
+ # object integrity in the Amazon S3 User Guide][1].
8798
+ #
8799
+ #
8800
+ #
8801
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
8802
+ # @return [String]
8803
+ #
8612
8804
  # @!attribute [rw] etag
8613
8805
  # An entity tag (ETag) is an opaque identifier assigned by a web
8614
8806
  # server to a specific version of a resource found at a URL.
@@ -8656,6 +8848,11 @@ module Aws::S3
8656
8848
  # A standard MIME type describing the format of the object data.
8657
8849
  # @return [String]
8658
8850
  #
8851
+ # @!attribute [rw] content_range
8852
+ # The portion of the object returned in the response for a `GET`
8853
+ # request.
8854
+ # @return [String]
8855
+ #
8659
8856
  # @!attribute [rw] expires
8660
8857
  # The date and time at which the object is no longer cacheable.
8661
8858
  # @return [Time]
@@ -8848,8 +9045,10 @@ module Aws::S3
8848
9045
  :content_length,
8849
9046
  :checksum_crc32,
8850
9047
  :checksum_crc32c,
9048
+ :checksum_crc64nvme,
8851
9049
  :checksum_sha1,
8852
9050
  :checksum_sha256,
9051
+ :checksum_type,
8853
9052
  :etag,
8854
9053
  :missing_meta,
8855
9054
  :version_id,
@@ -8858,6 +9057,7 @@ module Aws::S3
8858
9057
  :content_encoding,
8859
9058
  :content_language,
8860
9059
  :content_type,
9060
+ :content_range,
8861
9061
  :expires,
8862
9062
  :expires_string,
8863
9063
  :website_redirect_location,
@@ -8887,7 +9087,7 @@ module Aws::S3
8887
9087
  # requests are not supported. Directory bucket names must be unique in
8888
9088
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
8889
9089
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
8890
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
9090
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
8891
9091
  # naming restrictions, see [Directory bucket naming rules][1] in the
8892
9092
  # *Amazon S3 User Guide*.
8893
9093
  #
@@ -8907,14 +9107,14 @@ module Aws::S3
8907
9107
  #
8908
9108
  # </note>
8909
9109
  #
8910
- # **S3 on Outposts** - When you use this action with Amazon S3 on
8911
- # Outposts, you must direct requests to the S3 on Outposts hostname.
8912
- # The S3 on Outposts hostname takes the form `
9110
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
9111
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
9112
+ # Outposts hostname takes the form `
8913
9113
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8914
- # When you use this action with S3 on Outposts through the Amazon Web
8915
- # Services SDKs, you provide the Outposts access point ARN in place of
8916
- # the bucket name. For more information about S3 on Outposts ARNs, see
8917
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
9114
+ # When you use this action with S3 on Outposts, the destination bucket
9115
+ # must be the Outposts access point ARN or the access point alias. For
9116
+ # more information about S3 on Outposts, see [What is S3 on
9117
+ # Outposts?][3] in the *Amazon S3 User Guide*.
8918
9118
  #
8919
9119
  #
8920
9120
  #
@@ -10421,7 +10621,7 @@ module Aws::S3
10421
10621
  # requests are not supported. Directory bucket names must be unique in
10422
10622
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
10423
10623
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
10424
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
10624
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
10425
10625
  # naming restrictions, see [Directory bucket naming rules][1] in the
10426
10626
  # *Amazon S3 User Guide*.
10427
10627
  #
@@ -10441,14 +10641,14 @@ module Aws::S3
10441
10641
  #
10442
10642
  # </note>
10443
10643
  #
10444
- # **S3 on Outposts** - When you use this action with Amazon S3 on
10445
- # Outposts, you must direct requests to the S3 on Outposts hostname.
10446
- # The S3 on Outposts hostname takes the form `
10644
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
10645
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
10646
+ # Outposts hostname takes the form `
10447
10647
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
10448
- # When you use this action with S3 on Outposts through the Amazon Web
10449
- # Services SDKs, you provide the Outposts access point ARN in place of
10450
- # the bucket name. For more information about S3 on Outposts ARNs, see
10451
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
10648
+ # When you use this action with S3 on Outposts, the destination bucket
10649
+ # must be the Outposts access point ARN or the access point alias. For
10650
+ # more information about S3 on Outposts, see [What is S3 on
10651
+ # Outposts?][3] in the *Amazon S3 User Guide*.
10452
10652
  #
10453
10653
  #
10454
10654
  #
@@ -10634,7 +10834,12 @@ module Aws::S3
10634
10834
  # @return [Array<Types::ObjectVersion>]
10635
10835
  #
10636
10836
  # @!attribute [rw] delete_markers
10637
- # Container for an object that is a delete marker.
10837
+ # Container for an object that is a delete marker. To learn more about
10838
+ # delete markers, see [Working with delete markers][1].
10839
+ #
10840
+ #
10841
+ #
10842
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
10638
10843
  # @return [Array<Types::DeleteMarkerEntry>]
10639
10844
  #
10640
10845
  # @!attribute [rw] name
@@ -10943,7 +11148,7 @@ module Aws::S3
10943
11148
  # requests are not supported. Directory bucket names must be unique in
10944
11149
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
10945
11150
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
10946
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
11151
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
10947
11152
  # naming restrictions, see [Directory bucket naming rules][1] in the
10948
11153
  # *Amazon S3 User Guide*.
10949
11154
  #
@@ -10963,14 +11168,14 @@ module Aws::S3
10963
11168
  #
10964
11169
  # </note>
10965
11170
  #
10966
- # **S3 on Outposts** - When you use this action with Amazon S3 on
10967
- # Outposts, you must direct requests to the S3 on Outposts hostname.
10968
- # The S3 on Outposts hostname takes the form `
11171
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
11172
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
11173
+ # Outposts hostname takes the form `
10969
11174
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
10970
- # When you use this action with S3 on Outposts through the Amazon Web
10971
- # Services SDKs, you provide the Outposts access point ARN in place of
10972
- # the bucket name. For more information about S3 on Outposts ARNs, see
10973
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
11175
+ # When you use this action with S3 on Outposts, the destination bucket
11176
+ # must be the Outposts access point ARN or the access point alias. For
11177
+ # more information about S3 on Outposts, see [What is S3 on
11178
+ # Outposts?][3] in the *Amazon S3 User Guide*.
10974
11179
  #
10975
11180
  #
10976
11181
  #
@@ -11214,7 +11419,7 @@ module Aws::S3
11214
11419
  # requests are not supported. Directory bucket names must be unique in
11215
11420
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
11216
11421
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
11217
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
11422
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
11218
11423
  # naming restrictions, see [Directory bucket naming rules][1] in the
11219
11424
  # *Amazon S3 User Guide*.
11220
11425
  #
@@ -11234,14 +11439,14 @@ module Aws::S3
11234
11439
  #
11235
11440
  # </note>
11236
11441
  #
11237
- # **S3 on Outposts** - When you use this action with Amazon S3 on
11238
- # Outposts, you must direct requests to the S3 on Outposts hostname.
11239
- # The S3 on Outposts hostname takes the form `
11442
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
11443
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
11444
+ # Outposts hostname takes the form `
11240
11445
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
11241
- # When you use this action with S3 on Outposts through the Amazon Web
11242
- # Services SDKs, you provide the Outposts access point ARN in place of
11243
- # the bucket name. For more information about S3 on Outposts ARNs, see
11244
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
11446
+ # When you use this action with S3 on Outposts, the destination bucket
11447
+ # must be the Outposts access point ARN or the access point alias. For
11448
+ # more information about S3 on Outposts, see [What is S3 on
11449
+ # Outposts?][3] in the *Amazon S3 User Guide*.
11245
11450
  #
11246
11451
  #
11247
11452
  #
@@ -11494,6 +11699,19 @@ module Aws::S3
11494
11699
  # The algorithm that was used to create a checksum of the object.
11495
11700
  # @return [String]
11496
11701
  #
11702
+ # @!attribute [rw] checksum_type
11703
+ # The checksum type, which determines how part-level checksums are
11704
+ # combined to create an object-level checksum for multipart objects.
11705
+ # You can use this header response to verify that the checksum type
11706
+ # that is received is the same checksum type that was specified in
11707
+ # `CreateMultipartUpload` request. For more information, see [Checking
11708
+ # object integrity in the Amazon S3 User Guide][1].
11709
+ #
11710
+ #
11711
+ #
11712
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
11713
+ # @return [String]
11714
+ #
11497
11715
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListPartsOutput AWS API Documentation
11498
11716
  #
11499
11717
  class ListPartsOutput < Struct.new(
@@ -11511,7 +11729,8 @@ module Aws::S3
11511
11729
  :owner,
11512
11730
  :storage_class,
11513
11731
  :request_charged,
11514
- :checksum_algorithm)
11732
+ :checksum_algorithm,
11733
+ :checksum_type)
11515
11734
  SENSITIVE = []
11516
11735
  include Aws::Structure
11517
11736
  end
@@ -11525,7 +11744,7 @@ module Aws::S3
11525
11744
  # requests are not supported. Directory bucket names must be unique in
11526
11745
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
11527
11746
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
11528
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
11747
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
11529
11748
  # naming restrictions, see [Directory bucket naming rules][1] in the
11530
11749
  # *Amazon S3 User Guide*.
11531
11750
  #
@@ -11545,14 +11764,14 @@ module Aws::S3
11545
11764
  #
11546
11765
  # </note>
11547
11766
  #
11548
- # **S3 on Outposts** - When you use this action with Amazon S3 on
11549
- # Outposts, you must direct requests to the S3 on Outposts hostname.
11550
- # The S3 on Outposts hostname takes the form `
11767
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
11768
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
11769
+ # Outposts hostname takes the form `
11551
11770
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
11552
- # When you use this action with S3 on Outposts through the Amazon Web
11553
- # Services SDKs, you provide the Outposts access point ARN in place of
11554
- # the bucket name. For more information about S3 on Outposts ARNs, see
11555
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
11771
+ # When you use this action with S3 on Outposts, the destination bucket
11772
+ # must be the Outposts access point ARN or the access point alias. For
11773
+ # more information about S3 on Outposts, see [What is S3 on
11774
+ # Outposts?][3] in the *Amazon S3 User Guide*.
11556
11775
  #
11557
11776
  #
11558
11777
  #
@@ -11669,8 +11888,8 @@ module Aws::S3
11669
11888
  # Specifies the location where the bucket will be created.
11670
11889
  #
11671
11890
  # For directory buckets, the location type is Availability Zone or Local
11672
- # Zone. For more information about directory buckets, see [Directory
11673
- # buckets][1] in the *Amazon S3 User Guide*.
11891
+ # Zone. For more information about directory buckets, see [Working with
11892
+ # directory buckets][1] in the *Amazon S3 User Guide*.
11674
11893
  #
11675
11894
  # <note markdown="1"> This functionality is only supported by directory buckets.
11676
11895
  #
@@ -11974,6 +12193,16 @@ module Aws::S3
11974
12193
  # The algorithm that was used to create a checksum of the object.
11975
12194
  # @return [String]
11976
12195
  #
12196
+ # @!attribute [rw] checksum_type
12197
+ # The checksum type that is used to calculate the object’s checksum
12198
+ # value. For more information, see [Checking object integrity][1] in
12199
+ # the *Amazon S3 User Guide*.
12200
+ #
12201
+ #
12202
+ #
12203
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12204
+ # @return [String]
12205
+ #
11977
12206
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MultipartUpload AWS API Documentation
11978
12207
  #
11979
12208
  class MultipartUpload < Struct.new(
@@ -11983,7 +12212,8 @@ module Aws::S3
11983
12212
  :storage_class,
11984
12213
  :owner,
11985
12214
  :initiator,
11986
- :checksum_algorithm)
12215
+ :checksum_algorithm,
12216
+ :checksum_type)
11987
12217
  SENSITIVE = []
11988
12218
  include Aws::Structure
11989
12219
  end
@@ -12234,6 +12464,16 @@ module Aws::S3
12234
12464
  # The algorithm that was used to create a checksum of the object.
12235
12465
  # @return [Array<String>]
12236
12466
  #
12467
+ # @!attribute [rw] checksum_type
12468
+ # The checksum type that is used to calculate the object’s checksum
12469
+ # value. For more information, see [Checking object integrity][1] in
12470
+ # the *Amazon S3 User Guide*.
12471
+ #
12472
+ #
12473
+ #
12474
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12475
+ # @return [String]
12476
+ #
12237
12477
  # @!attribute [rw] size
12238
12478
  # Size in bytes of the object
12239
12479
  # @return [Integer]
@@ -12281,6 +12521,7 @@ module Aws::S3
12281
12521
  :last_modified,
12282
12522
  :etag,
12283
12523
  :checksum_algorithm,
12524
+ :checksum_type,
12284
12525
  :size,
12285
12526
  :storage_class,
12286
12527
  :owner,
@@ -12453,11 +12694,10 @@ module Aws::S3
12453
12694
  # @return [Integer]
12454
12695
  #
12455
12696
  # @!attribute [rw] checksum_crc32
12456
- # This header can be used as a data integrity check to verify that the
12457
- # data received is the same data that was originally sent. This header
12458
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
12459
- # For more information, see [Checking object integrity][1] in the
12460
- # *Amazon S3 User Guide*.
12697
+ # The Base64 encoded, 32-bit `CRC32` checksum of the part. This
12698
+ # checksum is present if the multipart upload request was created with
12699
+ # the `CRC32` checksum algorithm. For more information, see [Checking
12700
+ # object integrity][1] in the *Amazon S3 User Guide*.
12461
12701
  #
12462
12702
  #
12463
12703
  #
@@ -12465,48 +12705,49 @@ module Aws::S3
12465
12705
  # @return [String]
12466
12706
  #
12467
12707
  # @!attribute [rw] checksum_crc32c
12468
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
12469
- # only be present if it was uploaded with the object. When you use an
12470
- # API operation on an object that was uploaded using multipart
12471
- # uploads, this value may not be a direct checksum value of the full
12472
- # object. Instead, it's a calculation based on the checksum values of
12473
- # each individual part. For more information about how checksums are
12474
- # calculated with multipart uploads, see [ Checking object
12475
- # integrity][1] in the *Amazon S3 User Guide*.
12708
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the part. This
12709
+ # checksum is present if the multipart upload request was created with
12710
+ # the `CRC32C` checksum algorithm. For more information, see [Checking
12711
+ # object integrity][1] in the *Amazon S3 User Guide*.
12476
12712
  #
12477
12713
  #
12478
12714
  #
12479
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
12715
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12716
+ # @return [String]
12717
+ #
12718
+ # @!attribute [rw] checksum_crc64nvme
12719
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the part. This
12720
+ # checksum is present if the multipart upload request was created with
12721
+ # the `CRC64NVME` checksum algorithm, or if the object was uploaded
12722
+ # without a checksum (and Amazon S3 added the default checksum,
12723
+ # `CRC64NVME`, to the uploaded object). For more information, see
12724
+ # [Checking object integrity][1] in the *Amazon S3 User Guide*.
12725
+ #
12726
+ #
12727
+ #
12728
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12480
12729
  # @return [String]
12481
12730
  #
12482
12731
  # @!attribute [rw] checksum_sha1
12483
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
12484
- # only be present if it was uploaded with the object. When you use the
12485
- # API operation on an object that was uploaded using multipart
12486
- # uploads, this value may not be a direct checksum value of the full
12487
- # object. Instead, it's a calculation based on the checksum values of
12488
- # each individual part. For more information about how checksums are
12489
- # calculated with multipart uploads, see [ Checking object
12490
- # integrity][1] in the *Amazon S3 User Guide*.
12732
+ # The Base64 encoded, 160-bit `SHA1` checksum of the part. This
12733
+ # checksum is present if the multipart upload request was created with
12734
+ # the `SHA1` checksum algorithm. For more information, see [Checking
12735
+ # object integrity][1] in the *Amazon S3 User Guide*.
12491
12736
  #
12492
12737
  #
12493
12738
  #
12494
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
12739
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12495
12740
  # @return [String]
12496
12741
  #
12497
12742
  # @!attribute [rw] checksum_sha256
12498
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
12499
- # only be present if it was uploaded with the object. When you use an
12500
- # API operation on an object that was uploaded using multipart
12501
- # uploads, this value may not be a direct checksum value of the full
12502
- # object. Instead, it's a calculation based on the checksum values of
12503
- # each individual part. For more information about how checksums are
12504
- # calculated with multipart uploads, see [ Checking object
12505
- # integrity][1] in the *Amazon S3 User Guide*.
12743
+ # The Base64 encoded, 256-bit `SHA256` checksum of the part. This
12744
+ # checksum is present if the multipart upload request was created with
12745
+ # the `SHA256` checksum algorithm. For more information, see [Checking
12746
+ # object integrity][1] in the *Amazon S3 User Guide*.
12506
12747
  #
12507
12748
  #
12508
12749
  #
12509
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
12750
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12510
12751
  # @return [String]
12511
12752
  #
12512
12753
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectPart AWS API Documentation
@@ -12516,6 +12757,7 @@ module Aws::S3
12516
12757
  :size,
12517
12758
  :checksum_crc32,
12518
12759
  :checksum_crc32c,
12760
+ :checksum_crc64nvme,
12519
12761
  :checksum_sha1,
12520
12762
  :checksum_sha256)
12521
12763
  SENSITIVE = []
@@ -12532,6 +12774,16 @@ module Aws::S3
12532
12774
  # The algorithm that was used to create a checksum of the object.
12533
12775
  # @return [Array<String>]
12534
12776
  #
12777
+ # @!attribute [rw] checksum_type
12778
+ # The checksum type that is used to calculate the object’s checksum
12779
+ # value. For more information, see [Checking object integrity][1] in
12780
+ # the *Amazon S3 User Guide*.
12781
+ #
12782
+ #
12783
+ #
12784
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12785
+ # @return [String]
12786
+ #
12535
12787
  # @!attribute [rw] size
12536
12788
  # Size in bytes of the object.
12537
12789
  # @return [Integer]
@@ -12578,6 +12830,7 @@ module Aws::S3
12578
12830
  class ObjectVersion < Struct.new(
12579
12831
  :etag,
12580
12832
  :checksum_algorithm,
12833
+ :checksum_type,
12581
12834
  :size,
12582
12835
  :storage_class,
12583
12836
  :key,
@@ -12753,11 +13006,10 @@ module Aws::S3
12753
13006
  # @return [Integer]
12754
13007
  #
12755
13008
  # @!attribute [rw] checksum_crc32
12756
- # This header can be used as a data integrity check to verify that the
12757
- # data received is the same data that was originally sent. This header
12758
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
12759
- # For more information, see [Checking object integrity][1] in the
12760
- # *Amazon S3 User Guide*.
13009
+ # The Base64 encoded, 32-bit `CRC32` checksum of the part. This
13010
+ # checksum is present if the object was uploaded with the `CRC32`
13011
+ # checksum algorithm. For more information, see [Checking object
13012
+ # integrity][1] in the *Amazon S3 User Guide*.
12761
13013
  #
12762
13014
  #
12763
13015
  #
@@ -12765,41 +13017,45 @@ module Aws::S3
12765
13017
  # @return [String]
12766
13018
  #
12767
13019
  # @!attribute [rw] checksum_crc32c
12768
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
12769
- # only be present if it was uploaded with the object. When you use an
12770
- # API operation on an object that was uploaded using multipart
12771
- # uploads, this value may not be a direct checksum value of the full
12772
- # object. Instead, it's a calculation based on the checksum values of
12773
- # each individual part. For more information about how checksums are
12774
- # calculated with multipart uploads, see [ Checking object
13020
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the part. This
13021
+ # checksum is present if the object was uploaded with the `CRC32C`
13022
+ # checksum algorithm. For more information, see [Checking object
12775
13023
  # integrity][1] in the *Amazon S3 User Guide*.
12776
13024
  #
12777
13025
  #
12778
13026
  #
12779
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
13027
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
13028
+ # @return [String]
13029
+ #
13030
+ # @!attribute [rw] checksum_crc64nvme
13031
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the part. This
13032
+ # checksum is present if the multipart upload request was created with
13033
+ # the `CRC64NVME` checksum algorithm, or if the object was uploaded
13034
+ # without a checksum (and Amazon S3 added the default checksum,
13035
+ # `CRC64NVME`, to the uploaded object). For more information, see
13036
+ # [Checking object integrity][1] in the *Amazon S3 User Guide*.
13037
+ #
13038
+ #
13039
+ #
13040
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12780
13041
  # @return [String]
12781
13042
  #
12782
13043
  # @!attribute [rw] checksum_sha1
12783
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
12784
- # only be present if it was uploaded with the object. When you use the
12785
- # API operation on an object that was uploaded using multipart
12786
- # uploads, this value may not be a direct checksum value of the full
12787
- # object. Instead, it's a calculation based on the checksum values of
12788
- # each individual part. For more information about how checksums are
12789
- # calculated with multipart uploads, see [ Checking object
13044
+ # The Base64 encoded, 160-bit `SHA1` checksum of the part. This
13045
+ # checksum is present if the object was uploaded with the `SHA1`
13046
+ # checksum algorithm. For more information, see [Checking object
12790
13047
  # integrity][1] in the *Amazon S3 User Guide*.
12791
13048
  #
12792
13049
  #
12793
13050
  #
12794
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
13051
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
12795
13052
  # @return [String]
12796
13053
  #
12797
13054
  # @!attribute [rw] checksum_sha256
12798
- # This header can be used as a data integrity check to verify that the
12799
- # data received is the same data that was originally sent. This header
12800
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
12801
- # For more information, see [Checking object integrity][1] in the
12802
- # *Amazon S3 User Guide*.
13055
+ # The Base64 encoded, 256-bit `SHA256` checksum of the part. This
13056
+ # checksum is present if the object was uploaded with the `SHA256`
13057
+ # checksum algorithm. For more information, see [Checking object
13058
+ # integrity][1] in the *Amazon S3 User Guide*.
12803
13059
  #
12804
13060
  #
12805
13061
  #
@@ -12815,6 +13071,7 @@ module Aws::S3
12815
13071
  :size,
12816
13072
  :checksum_crc32,
12817
13073
  :checksum_crc32c,
13074
+ :checksum_crc64nvme,
12818
13075
  :checksum_sha1,
12819
13076
  :checksum_sha256)
12820
13077
  SENSITIVE = []
@@ -12990,7 +13247,7 @@ module Aws::S3
12990
13247
  # @return [String]
12991
13248
  #
12992
13249
  # @!attribute [rw] checksum_algorithm
12993
- # Indicates the algorithm used to create the checksum for the object
13250
+ # Indicates the algorithm used to create the checksum for the request
12994
13251
  # when you use the SDK. This header will not provide any additional
12995
13252
  # functionality if you don't use the SDK. When you send this header,
12996
13253
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13031,9 +13288,9 @@ module Aws::S3
13031
13288
  # @return [String]
13032
13289
  #
13033
13290
  # @!attribute [rw] content_md5
13034
- # The base64-encoded 128-bit MD5 digest of the data. This header must
13035
- # be used as a message integrity check to verify that the request body
13036
- # was not corrupted in transit. For more information, go to [RFC
13291
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header
13292
+ # must be used as a message integrity check to verify that the request
13293
+ # body was not corrupted in transit. For more information, go to [RFC
13037
13294
  # 1864.][1]
13038
13295
  #
13039
13296
  # For requests made using the Amazon Web Services Command Line
@@ -13046,7 +13303,7 @@ module Aws::S3
13046
13303
  # @return [String]
13047
13304
  #
13048
13305
  # @!attribute [rw] checksum_algorithm
13049
- # Indicates the algorithm used to create the checksum for the object
13306
+ # Indicates the algorithm used to create the checksum for the request
13050
13307
  # when you use the SDK. This header will not provide any additional
13051
13308
  # functionality if you don't use the SDK. When you send this header,
13052
13309
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13157,9 +13414,9 @@ module Aws::S3
13157
13414
  # @return [Types::CORSConfiguration]
13158
13415
  #
13159
13416
  # @!attribute [rw] content_md5
13160
- # The base64-encoded 128-bit MD5 digest of the data. This header must
13161
- # be used as a message integrity check to verify that the request body
13162
- # was not corrupted in transit. For more information, go to [RFC
13417
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header
13418
+ # must be used as a message integrity check to verify that the request
13419
+ # body was not corrupted in transit. For more information, go to [RFC
13163
13420
  # 1864.][1]
13164
13421
  #
13165
13422
  # For requests made using the Amazon Web Services Command Line
@@ -13172,7 +13429,7 @@ module Aws::S3
13172
13429
  # @return [String]
13173
13430
  #
13174
13431
  # @!attribute [rw] checksum_algorithm
13175
- # Indicates the algorithm used to create the checksum for the object
13432
+ # Indicates the algorithm used to create the checksum for the request
13176
13433
  # when you use the SDK. This header will not provide any additional
13177
13434
  # functionality if you don't use the SDK. When you send this header,
13178
13435
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13228,8 +13485,8 @@ module Aws::S3
13228
13485
  # @return [String]
13229
13486
  #
13230
13487
  # @!attribute [rw] content_md5
13231
- # The base64-encoded 128-bit MD5 digest of the server-side encryption
13232
- # configuration.
13488
+ # The Base64 encoded 128-bit `MD5` digest of the server-side
13489
+ # encryption configuration.
13233
13490
  #
13234
13491
  # For requests made using the Amazon Web Services Command Line
13235
13492
  # Interface (CLI) or Amazon Web Services SDKs, this field is
@@ -13241,7 +13498,7 @@ module Aws::S3
13241
13498
  # @return [String]
13242
13499
  #
13243
13500
  # @!attribute [rw] checksum_algorithm
13244
- # Indicates the algorithm used to create the checksum for the object
13501
+ # Indicates the algorithm used to create the checksum for the request
13245
13502
  # when you use the SDK. This header will not provide any additional
13246
13503
  # functionality if you don't use the SDK. When you send this header,
13247
13504
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13382,7 +13639,7 @@ module Aws::S3
13382
13639
  # @return [String]
13383
13640
  #
13384
13641
  # @!attribute [rw] checksum_algorithm
13385
- # Indicates the algorithm used to create the checksum for the object
13642
+ # Indicates the algorithm used to create the checksum for the request
13386
13643
  # when you use the SDK. This header will not provide any additional
13387
13644
  # functionality if you don't use the SDK. When you send this header,
13388
13645
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13459,7 +13716,7 @@ module Aws::S3
13459
13716
  # @return [String]
13460
13717
  #
13461
13718
  # @!attribute [rw] checksum_algorithm
13462
- # Indicates the algorithm used to create the checksum for the object
13719
+ # Indicates the algorithm used to create the checksum for the request
13463
13720
  # when you use the SDK. This header will not provide any additional
13464
13721
  # functionality if you don't use the SDK. When you send this header,
13465
13722
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13514,7 +13771,7 @@ module Aws::S3
13514
13771
  # @return [String]
13515
13772
  #
13516
13773
  # @!attribute [rw] checksum_algorithm
13517
- # Indicates the algorithm used to create the checksum for the object
13774
+ # Indicates the algorithm used to create the checksum for the request
13518
13775
  # when you use the SDK. This header will not provide any additional
13519
13776
  # functionality if you don't use the SDK. When you send this header,
13520
13777
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13627,7 +13884,7 @@ module Aws::S3
13627
13884
  # @return [String]
13628
13885
  #
13629
13886
  # @!attribute [rw] checksum_algorithm
13630
- # Indicates the algorithm used to create the checksum for the object
13887
+ # Indicates the algorithm used to create the checksum for the request
13631
13888
  # when you use the SDK. This header will not provide any additional
13632
13889
  # functionality if you don't use the SDK. When you send this header,
13633
13890
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13734,7 +13991,7 @@ module Aws::S3
13734
13991
  # @return [String]
13735
13992
  #
13736
13993
  # @!attribute [rw] checksum_algorithm
13737
- # Indicates the algorithm used to create the checksum for the object
13994
+ # Indicates the algorithm used to create the checksum for the request
13738
13995
  # when you use the SDK. This header will not provide any additional
13739
13996
  # functionality if you don't use the SDK. When you send this header,
13740
13997
  # there must be a corresponding `x-amz-checksum-algorithm ` or
@@ -13748,6 +14005,8 @@ module Aws::S3
13748
14005
  #
13749
14006
  # * `CRC32C`
13750
14007
  #
14008
+ # * `CRC64NVME`
14009
+ #
13751
14010
  # * `SHA1`
13752
14011
  #
13753
14012
  # * `SHA256`
@@ -13757,10 +14016,8 @@ module Aws::S3
13757
14016
  #
13758
14017
  # If the individual checksum value you provide through
13759
14018
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm
13760
- # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores
13761
- # any provided `ChecksumAlgorithm` parameter and uses the checksum
13762
- # algorithm that matches the provided value in
13763
- # `x-amz-checksum-algorithm `.
14019
+ # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
14020
+ # request with a `BadDigest` error.
13764
14021
  #
13765
14022
  # <note markdown="1"> For directory buckets, when you use Amazon Web Services SDKs,
13766
14023
  # `CRC32` is the default checksum algorithm that's used for
@@ -13820,9 +14077,9 @@ module Aws::S3
13820
14077
  # @return [String]
13821
14078
  #
13822
14079
  # @!attribute [rw] content_md5
13823
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
13824
- # header as a message integrity check to verify that the request body
13825
- # was not corrupted in transit. For more information, see [RFC
14080
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use
14081
+ # this header as a message integrity check to verify that the request
14082
+ # body was not corrupted in transit. For more information, see [RFC
13826
14083
  # 1864][1].
13827
14084
  #
13828
14085
  # For requests made using the Amazon Web Services Command Line
@@ -13835,7 +14092,7 @@ module Aws::S3
13835
14092
  # @return [String]
13836
14093
  #
13837
14094
  # @!attribute [rw] checksum_algorithm
13838
- # Indicates the algorithm used to create the checksum for the object
14095
+ # Indicates the algorithm used to create the checksum for the request
13839
14096
  # when you use the SDK. This header will not provide any additional
13840
14097
  # functionality if you don't use the SDK. When you send this header,
13841
14098
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13885,9 +14142,9 @@ module Aws::S3
13885
14142
  # @return [String]
13886
14143
  #
13887
14144
  # @!attribute [rw] content_md5
13888
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
13889
- # header as a message integrity check to verify that the request body
13890
- # was not corrupted in transit. For more information, see [RFC
14145
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use
14146
+ # this header as a message integrity check to verify that the request
14147
+ # body was not corrupted in transit. For more information, see [RFC
13891
14148
  # 1864][1].
13892
14149
  #
13893
14150
  # For requests made using the Amazon Web Services Command Line
@@ -13900,7 +14157,7 @@ module Aws::S3
13900
14157
  # @return [String]
13901
14158
  #
13902
14159
  # @!attribute [rw] checksum_algorithm
13903
- # Indicates the algorithm used to create the checksum for the object
14160
+ # Indicates the algorithm used to create the checksum for the request
13904
14161
  # when you use the SDK. This header will not provide any additional
13905
14162
  # functionality if you don't use the SDK. When you send this header,
13906
14163
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -13944,9 +14201,9 @@ module Aws::S3
13944
14201
  # @return [String]
13945
14202
  #
13946
14203
  # @!attribute [rw] content_md5
13947
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
13948
- # header as a message integrity check to verify that the request body
13949
- # was not corrupted in transit. For more information, see [RFC
14204
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use
14205
+ # this header as a message integrity check to verify that the request
14206
+ # body was not corrupted in transit. For more information, see [RFC
13950
14207
  # 1864][1].
13951
14208
  #
13952
14209
  # For requests made using the Amazon Web Services Command Line
@@ -13959,7 +14216,7 @@ module Aws::S3
13959
14216
  # @return [String]
13960
14217
  #
13961
14218
  # @!attribute [rw] checksum_algorithm
13962
- # Indicates the algorithm used to create the checksum for the object
14219
+ # Indicates the algorithm used to create the checksum for the request
13963
14220
  # when you use the SDK. This header will not provide any additional
13964
14221
  # functionality if you don't use the SDK. When you send this header,
13965
14222
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -14003,10 +14260,10 @@ module Aws::S3
14003
14260
  # @return [String]
14004
14261
  #
14005
14262
  # @!attribute [rw] content_md5
14006
- # &gt;The base64-encoded 128-bit MD5 digest of the data. You must use
14007
- # this header as a message integrity check to verify that the request
14008
- # body was not corrupted in transit. For more information, see [RFC
14009
- # 1864][1].
14263
+ # &gt;The Base64 encoded 128-bit `MD5` digest of the data. You must
14264
+ # use this header as a message integrity check to verify that the
14265
+ # request body was not corrupted in transit. For more information, see
14266
+ # [RFC 1864][1].
14010
14267
  #
14011
14268
  # For requests made using the Amazon Web Services Command Line
14012
14269
  # Interface (CLI) or Amazon Web Services SDKs, this field is
@@ -14018,7 +14275,7 @@ module Aws::S3
14018
14275
  # @return [String]
14019
14276
  #
14020
14277
  # @!attribute [rw] checksum_algorithm
14021
- # Indicates the algorithm used to create the checksum for the object
14278
+ # Indicates the algorithm used to create the checksum for the request
14022
14279
  # when you use the SDK. This header will not provide any additional
14023
14280
  # functionality if you don't use the SDK. When you send this header,
14024
14281
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -14069,9 +14326,9 @@ module Aws::S3
14069
14326
  # @return [String]
14070
14327
  #
14071
14328
  # @!attribute [rw] content_md5
14072
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
14073
- # header as a message integrity check to verify that the request body
14074
- # was not corrupted in transit. For more information, see [RFC
14329
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use
14330
+ # this header as a message integrity check to verify that the request
14331
+ # body was not corrupted in transit. For more information, see [RFC
14075
14332
  # 1864][1].
14076
14333
  #
14077
14334
  # For requests made using the Amazon Web Services Command Line
@@ -14084,7 +14341,7 @@ module Aws::S3
14084
14341
  # @return [String]
14085
14342
  #
14086
14343
  # @!attribute [rw] checksum_algorithm
14087
- # Indicates the algorithm used to create the checksum for the object
14344
+ # Indicates the algorithm used to create the checksum for the request
14088
14345
  # when you use the SDK. This header will not provide any additional
14089
14346
  # functionality if you don't use the SDK. When you send this header,
14090
14347
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -14169,14 +14426,14 @@ module Aws::S3
14169
14426
  # bucket name. For more information about access point ARNs, see
14170
14427
  # [Using access points][1] in the *Amazon S3 User Guide*.
14171
14428
  #
14172
- # **S3 on Outposts** - When you use this action with Amazon S3 on
14173
- # Outposts, you must direct requests to the S3 on Outposts hostname.
14174
- # The S3 on Outposts hostname takes the form `
14429
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
14430
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
14431
+ # Outposts hostname takes the form `
14175
14432
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
14176
- # When you use this action with S3 on Outposts through the Amazon Web
14177
- # Services SDKs, you provide the Outposts access point ARN in place of
14178
- # the bucket name. For more information about S3 on Outposts ARNs, see
14179
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
14433
+ # When you use this action with S3 on Outposts, the destination bucket
14434
+ # must be the Outposts access point ARN or the access point alias. For
14435
+ # more information about S3 on Outposts, see [What is S3 on
14436
+ # Outposts?][2] in the *Amazon S3 User Guide*.
14180
14437
  #
14181
14438
  #
14182
14439
  #
@@ -14185,9 +14442,9 @@ module Aws::S3
14185
14442
  # @return [String]
14186
14443
  #
14187
14444
  # @!attribute [rw] content_md5
14188
- # The base64-encoded 128-bit MD5 digest of the data. This header must
14189
- # be used as a message integrity check to verify that the request body
14190
- # was not corrupted in transit. For more information, go to [RFC
14445
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header
14446
+ # must be used as a message integrity check to verify that the request
14447
+ # body was not corrupted in transit. For more information, go to [RFC
14191
14448
  # 1864.&gt;][1]
14192
14449
  #
14193
14450
  # For requests made using the Amazon Web Services Command Line
@@ -14548,14 +14805,14 @@ module Aws::S3
14548
14805
  # @return [String]
14549
14806
  #
14550
14807
  # @!attribute [rw] checksum_crc32
14551
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
14552
- # only be present if it was uploaded with the object. When you use an
14553
- # API operation on an object that was uploaded using multipart
14554
- # uploads, this value may not be a direct checksum value of the full
14555
- # object. Instead, it's a calculation based on the checksum values of
14556
- # each individual part. For more information about how checksums are
14557
- # calculated with multipart uploads, see [ Checking object
14558
- # integrity][1] in the *Amazon S3 User Guide*.
14808
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
14809
+ # checksum is only be present if the checksum was uploaded with the
14810
+ # object. When you use an API operation on an object that was uploaded
14811
+ # using multipart uploads, this value may not be a direct checksum
14812
+ # value of the full object. Instead, it's a calculation based on the
14813
+ # checksum values of each individual part. For more information about
14814
+ # how checksums are calculated with multipart uploads, see [ Checking
14815
+ # object integrity][1] in the *Amazon S3 User Guide*.
14559
14816
  #
14560
14817
  #
14561
14818
  #
@@ -14563,24 +14820,38 @@ module Aws::S3
14563
14820
  # @return [String]
14564
14821
  #
14565
14822
  # @!attribute [rw] checksum_crc32c
14566
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
14567
- # only be present if it was uploaded with the object. When you use an
14568
- # API operation on an object that was uploaded using multipart
14569
- # uploads, this value may not be a direct checksum value of the full
14570
- # object. Instead, it's a calculation based on the checksum values of
14571
- # each individual part. For more information about how checksums are
14572
- # calculated with multipart uploads, see [ Checking object
14573
- # integrity][1] in the *Amazon S3 User Guide*.
14823
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
14824
+ # checksum is only present if the checksum was uploaded with the
14825
+ # object. When you use an API operation on an object that was uploaded
14826
+ # using multipart uploads, this value may not be a direct checksum
14827
+ # value of the full object. Instead, it's a calculation based on the
14828
+ # checksum values of each individual part. For more information about
14829
+ # how checksums are calculated with multipart uploads, see [ Checking
14830
+ # object integrity][1] in the *Amazon S3 User Guide*.
14574
14831
  #
14575
14832
  #
14576
14833
  #
14577
14834
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
14578
14835
  # @return [String]
14579
14836
  #
14837
+ # @!attribute [rw] checksum_crc64nvme
14838
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. This
14839
+ # header is present if the object was uploaded with the `CRC64NVME`
14840
+ # checksum algorithm, or if it was uploaded without a checksum (and
14841
+ # Amazon S3 added the default checksum, `CRC64NVME`, to the uploaded
14842
+ # object). For more information about how checksums are calculated
14843
+ # with multipart uploads, see [Checking object integrity in the Amazon
14844
+ # S3 User Guide][1].
14845
+ #
14846
+ #
14847
+ #
14848
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
14849
+ # @return [String]
14850
+ #
14580
14851
  # @!attribute [rw] checksum_sha1
14581
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
14582
- # only be present if it was uploaded with the object. When you use the
14583
- # API operation on an object that was uploaded using multipart
14852
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
14853
+ # only be present if the object was uploaded with the object. When you
14854
+ # use the API operation on an object that was uploaded using multipart
14584
14855
  # uploads, this value may not be a direct checksum value of the full
14585
14856
  # object. Instead, it's a calculation based on the checksum values of
14586
14857
  # each individual part. For more information about how checksums are
@@ -14593,9 +14864,9 @@ module Aws::S3
14593
14864
  # @return [String]
14594
14865
  #
14595
14866
  # @!attribute [rw] checksum_sha256
14596
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
14597
- # only be present if it was uploaded with the object. When you use an
14598
- # API operation on an object that was uploaded using multipart
14867
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
14868
+ # only be present if the object was uploaded with the object. When you
14869
+ # use an API operation on an object that was uploaded using multipart
14599
14870
  # uploads, this value may not be a direct checksum value of the full
14600
14871
  # object. Instead, it's a calculation based on the checksum values of
14601
14872
  # each individual part. For more information about how checksums are
@@ -14607,6 +14878,21 @@ module Aws::S3
14607
14878
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
14608
14879
  # @return [String]
14609
14880
  #
14881
+ # @!attribute [rw] checksum_type
14882
+ # This header specifies the checksum type of the object, which
14883
+ # determines how part-level checksums are combined to create an
14884
+ # object-level checksum for multipart objects. For `PutObject`
14885
+ # uploads, the checksum type is always `FULL_OBJECT`. You can use this
14886
+ # header as a data integrity check to verify that the checksum type
14887
+ # that is received is the same checksum that was specified. For more
14888
+ # information, see [Checking object integrity][1] in the *Amazon S3
14889
+ # User Guide*.
14890
+ #
14891
+ #
14892
+ #
14893
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
14894
+ # @return [String]
14895
+ #
14610
14896
  # @!attribute [rw] server_side_encryption
14611
14897
  # The server-side encryption algorithm used when you store this object
14612
14898
  # in Amazon S3.
@@ -14663,8 +14949,8 @@ module Aws::S3
14663
14949
  #
14664
14950
  # @!attribute [rw] ssekms_encryption_context
14665
14951
  # If present, indicates the Amazon Web Services KMS Encryption Context
14666
- # to use for object encryption. The value of this header is a
14667
- # Base64-encoded string of a UTF-8 encoded JSON, which contains the
14952
+ # to use for object encryption. The value of this header is a Base64
14953
+ # encoded string of a UTF-8 encoded JSON, which contains the
14668
14954
  # encryption context as key-value pairs. This value is stored as
14669
14955
  # object metadata and automatically gets passed on to Amazon Web
14670
14956
  # Services KMS for future `GetObject` operations on this object.
@@ -14677,8 +14963,8 @@ module Aws::S3
14677
14963
  # @return [Boolean]
14678
14964
  #
14679
14965
  # @!attribute [rw] size
14680
- # The size of the object in bytes. This will only be present if you
14681
- # append to an object.
14966
+ # The size of the object in bytes. This value is only be present if
14967
+ # you append to an object.
14682
14968
  #
14683
14969
  # <note markdown="1"> This functionality is only supported for objects in the Amazon S3
14684
14970
  # Express One Zone storage class in directory buckets.
@@ -14702,8 +14988,10 @@ module Aws::S3
14702
14988
  :etag,
14703
14989
  :checksum_crc32,
14704
14990
  :checksum_crc32c,
14991
+ :checksum_crc64nvme,
14705
14992
  :checksum_sha1,
14706
14993
  :checksum_sha256,
14994
+ :checksum_type,
14707
14995
  :server_side_encryption,
14708
14996
  :version_id,
14709
14997
  :sse_customer_algorithm,
@@ -14769,7 +15057,7 @@ module Aws::S3
14769
15057
  # requests are not supported. Directory bucket names must be unique in
14770
15058
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
14771
15059
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
14772
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
15060
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
14773
15061
  # naming restrictions, see [Directory bucket naming rules][1] in the
14774
15062
  # *Amazon S3 User Guide*.
14775
15063
  #
@@ -14789,14 +15077,14 @@ module Aws::S3
14789
15077
  #
14790
15078
  # </note>
14791
15079
  #
14792
- # **S3 on Outposts** - When you use this action with Amazon S3 on
14793
- # Outposts, you must direct requests to the S3 on Outposts hostname.
14794
- # The S3 on Outposts hostname takes the form `
15080
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
15081
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
15082
+ # Outposts hostname takes the form `
14795
15083
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
14796
- # When you use this action with S3 on Outposts through the Amazon Web
14797
- # Services SDKs, you provide the Outposts access point ARN in place of
14798
- # the bucket name. For more information about S3 on Outposts ARNs, see
14799
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
15084
+ # When you use this action with S3 on Outposts, the destination bucket
15085
+ # must be the Outposts access point ARN or the access point alias. For
15086
+ # more information about S3 on Outposts, see [What is S3 on
15087
+ # Outposts?][3] in the *Amazon S3 User Guide*.
14800
15088
  #
14801
15089
  #
14802
15090
  #
@@ -14853,7 +15141,7 @@ module Aws::S3
14853
15141
  # @return [Integer]
14854
15142
  #
14855
15143
  # @!attribute [rw] content_md5
14856
- # The base64-encoded 128-bit MD5 digest of the message (without the
15144
+ # The Base64 encoded 128-bit `MD5` digest of the message (without the
14857
15145
  # headers) according to RFC 1864. This header can be used as a message
14858
15146
  # integrity check to verify that the data is the same data that was
14859
15147
  # originally sent. Although it is optional, we recommend using the
@@ -14904,6 +15192,8 @@ module Aws::S3
14904
15192
  #
14905
15193
  # * `CRC32C`
14906
15194
  #
15195
+ # * `CRC64NVME`
15196
+ #
14907
15197
  # * `SHA1`
14908
15198
  #
14909
15199
  # * `SHA256`
@@ -14913,10 +15203,8 @@ module Aws::S3
14913
15203
  #
14914
15204
  # If the individual checksum value you provide through
14915
15205
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm
14916
- # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores
14917
- # any provided `ChecksumAlgorithm` parameter and uses the checksum
14918
- # algorithm that matches the provided value in
14919
- # `x-amz-checksum-algorithm `.
15206
+ # you set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
15207
+ # request with a `BadDigest` error.
14920
15208
  #
14921
15209
  # <note markdown="1"> The `Content-MD5` or `x-amz-sdk-checksum-algorithm` header is
14922
15210
  # required for any request to upload an object with a retention period
@@ -14939,7 +15227,7 @@ module Aws::S3
14939
15227
  # @!attribute [rw] checksum_crc32
14940
15228
  # This header can be used as a data integrity check to verify that the
14941
15229
  # data received is the same data that was originally sent. This header
14942
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
15230
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
14943
15231
  # For more information, see [Checking object integrity][1] in the
14944
15232
  # *Amazon S3 User Guide*.
14945
15233
  #
@@ -14951,9 +15239,22 @@ module Aws::S3
14951
15239
  # @!attribute [rw] checksum_crc32c
14952
15240
  # This header can be used as a data integrity check to verify that the
14953
15241
  # data received is the same data that was originally sent. This header
14954
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
14955
- # For more information, see [Checking object integrity][1] in the
14956
- # *Amazon S3 User Guide*.
15242
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the
15243
+ # object. For more information, see [Checking object integrity][1] in
15244
+ # the *Amazon S3 User Guide*.
15245
+ #
15246
+ #
15247
+ #
15248
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
15249
+ # @return [String]
15250
+ #
15251
+ # @!attribute [rw] checksum_crc64nvme
15252
+ # This header can be used as a data integrity check to verify that the
15253
+ # data received is the same data that was originally sent. This header
15254
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
15255
+ # object. The `CRC64NVME` checksum is always a full object checksum.
15256
+ # For more information, see [Checking object integrity in the Amazon
15257
+ # S3 User Guide][1].
14957
15258
  #
14958
15259
  #
14959
15260
  #
@@ -14963,7 +15264,7 @@ module Aws::S3
14963
15264
  # @!attribute [rw] checksum_sha1
14964
15265
  # This header can be used as a data integrity check to verify that the
14965
15266
  # data received is the same data that was originally sent. This header
14966
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object.
15267
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object.
14967
15268
  # For more information, see [Checking object integrity][1] in the
14968
15269
  # *Amazon S3 User Guide*.
14969
15270
  #
@@ -14975,7 +15276,7 @@ module Aws::S3
14975
15276
  # @!attribute [rw] checksum_sha256
14976
15277
  # This header can be used as a data integrity check to verify that the
14977
15278
  # data received is the same data that was originally sent. This header
14978
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
15279
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
14979
15280
  # For more information, see [Checking object integrity][1] in the
14980
15281
  # *Amazon S3 User Guide*.
14981
15282
  #
@@ -15260,21 +15561,17 @@ module Aws::S3
15260
15561
  # `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
15261
15562
  # Amazon Web Services managed key (`aws/s3`) to protect the data.
15262
15563
  #
15263
- # **Directory buckets** - If you specify
15264
- # `x-amz-server-side-encryption` with `aws:kms`, the `
15265
- # x-amz-server-side-encryption-aws-kms-key-id` header is implicitly
15266
- # assigned the ID of the KMS symmetric encryption customer managed key
15267
- # that's configured for your directory bucket's default encryption
15268
- # setting. If you want to specify the `
15269
- # x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you
15270
- # can only specify it with the ID (Key ID or Key ARN) of the KMS
15271
- # customer managed key that's configured for your directory bucket's
15272
- # default encryption setting. Otherwise, you get an HTTP `400 Bad
15273
- # Request` error. Only use the key ID or key ARN. The key alias format
15274
- # of the KMS key isn't supported. Your SSE-KMS configuration can only
15275
- # support 1 [customer managed key][1] per directory bucket for the
15276
- # lifetime of the bucket. The [Amazon Web Services managed key][2]
15277
- # (`aws/s3`) isn't supported.
15564
+ # **Directory buckets** - To encrypt data using SSE-KMS, it's
15565
+ # recommended to specify the `x-amz-server-side-encryption` header to
15566
+ # `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
15567
+ # header implicitly uses the bucket's default KMS customer managed
15568
+ # key ID. If you want to explicitly set the `
15569
+ # x-amz-server-side-encryption-aws-kms-key-id` header, it must match
15570
+ # the bucket's default customer managed key (using key ID or ARN, not
15571
+ # alias). Your SSE-KMS configuration can only support 1 [customer
15572
+ # managed key][1] per directory bucket's lifetime. The [Amazon Web
15573
+ # Services managed key][2] (`aws/s3`) isn't supported. Incorrect key
15574
+ # specification results in an HTTP `400 Bad Request` error.
15278
15575
  #
15279
15576
  #
15280
15577
  #
@@ -15285,7 +15582,7 @@ module Aws::S3
15285
15582
  # @!attribute [rw] ssekms_encryption_context
15286
15583
  # Specifies the Amazon Web Services KMS Encryption Context as an
15287
15584
  # additional encryption context to use for object encryption. The
15288
- # value of this header is a Base64-encoded string of a UTF-8 encoded
15585
+ # value of this header is a Base64 encoded string of a UTF-8 encoded
15289
15586
  # JSON, which contains the encryption context as key-value pairs. This
15290
15587
  # value is stored as object metadata and automatically gets passed on
15291
15588
  # to Amazon Web Services KMS for future `GetObject` operations on this
@@ -15415,6 +15712,7 @@ module Aws::S3
15415
15712
  :checksum_algorithm,
15416
15713
  :checksum_crc32,
15417
15714
  :checksum_crc32c,
15715
+ :checksum_crc64nvme,
15418
15716
  :checksum_sha1,
15419
15717
  :checksum_sha256,
15420
15718
  :expires,
@@ -15594,14 +15892,14 @@ module Aws::S3
15594
15892
  # bucket name. For more information about access point ARNs, see
15595
15893
  # [Using access points][1] in the *Amazon S3 User Guide*.
15596
15894
  #
15597
- # **S3 on Outposts** - When you use this action with Amazon S3 on
15598
- # Outposts, you must direct requests to the S3 on Outposts hostname.
15599
- # The S3 on Outposts hostname takes the form `
15895
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
15896
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
15897
+ # Outposts hostname takes the form `
15600
15898
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
15601
- # When you use this action with S3 on Outposts through the Amazon Web
15602
- # Services SDKs, you provide the Outposts access point ARN in place of
15603
- # the bucket name. For more information about S3 on Outposts ARNs, see
15604
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
15899
+ # When you use this action with S3 on Outposts, the destination bucket
15900
+ # must be the Outposts access point ARN or the access point alias. For
15901
+ # more information about S3 on Outposts, see [What is S3 on
15902
+ # Outposts?][2] in the *Amazon S3 User Guide*.
15605
15903
  #
15606
15904
  #
15607
15905
  #
@@ -16288,14 +16586,14 @@ module Aws::S3
16288
16586
  # bucket name. For more information about access point ARNs, see
16289
16587
  # [Using access points][1] in the *Amazon S3 User Guide*.
16290
16588
  #
16291
- # **S3 on Outposts** - When you use this action with Amazon S3 on
16292
- # Outposts, you must direct requests to the S3 on Outposts hostname.
16293
- # The S3 on Outposts hostname takes the form `
16589
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
16590
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
16591
+ # Outposts hostname takes the form `
16294
16592
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
16295
- # When you use this action with S3 on Outposts through the Amazon Web
16296
- # Services SDKs, you provide the Outposts access point ARN in place of
16297
- # the bucket name. For more information about S3 on Outposts ARNs, see
16298
- # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
16593
+ # When you use this action with S3 on Outposts, the destination bucket
16594
+ # must be the Outposts access point ARN or the access point alias. For
16595
+ # more information about S3 on Outposts, see [What is S3 on
16596
+ # Outposts?][2] in the *Amazon S3 User Guide*.
16299
16597
  #
16300
16598
  #
16301
16599
  #
@@ -17015,9 +17313,8 @@ module Aws::S3
17015
17313
  # to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS.
17016
17314
  #
17017
17315
  # * **Directory buckets** - Your SSE-KMS configuration can only support
17018
- # 1 [customer managed key][2] per directory bucket for the lifetime of
17019
- # the bucket. The [Amazon Web Services managed key][3] (`aws/s3`)
17020
- # isn't supported.
17316
+ # 1 [customer managed key][2] per directory bucket's lifetime. The
17317
+ # [Amazon Web Services managed key][3] (`aws/s3`) isn't supported.
17021
17318
  #
17022
17319
  # * **Directory buckets** - For directory buckets, there are only two
17023
17320
  # supported options for server-side encryption: SSE-S3 and SSE-KMS.
@@ -17595,8 +17892,19 @@ module Aws::S3
17595
17892
  #
17596
17893
  # @!attribute [rw] days
17597
17894
  # Indicates the number of days after creation when objects are
17598
- # transitioned to the specified storage class. The value must be a
17599
- # positive integer.
17895
+ # transitioned to the specified storage class. If the specified
17896
+ # storage class is `INTELLIGENT_TIERING`, `GLACIER_IR`, `GLACIER`, or
17897
+ # `DEEP_ARCHIVE`, valid values are `0` or positive integers. If the
17898
+ # specified storage class is `STANDARD_IA` or `ONEZONE_IA`, valid
17899
+ # values are positive integers greater than `30`. Be aware that some
17900
+ # storage classes have a minimum storage duration and that you're
17901
+ # charged for transitioning objects before their minimum storage
17902
+ # duration. For more information, see [ Constraints and considerations
17903
+ # for transitions][1] in the *Amazon S3 User Guide*.
17904
+ #
17905
+ #
17906
+ #
17907
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-transition-general-considerations.html#lifecycle-configuration-constraints
17600
17908
  # @return [Integer]
17601
17909
  #
17602
17910
  # @!attribute [rw] storage_class
@@ -17697,7 +18005,7 @@ module Aws::S3
17697
18005
  # requests are not supported. Directory bucket names must be unique in
17698
18006
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
17699
18007
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
17700
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
18008
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
17701
18009
  # naming restrictions, see [Directory bucket naming rules][1] in the
17702
18010
  # *Amazon S3 User Guide*.
17703
18011
  #
@@ -17725,14 +18033,14 @@ module Aws::S3
17725
18033
  #
17726
18034
  # </note>
17727
18035
  #
17728
- # **S3 on Outposts** - When you use this action with Amazon S3 on
17729
- # Outposts, you must direct requests to the S3 on Outposts hostname.
17730
- # The S3 on Outposts hostname takes the form `
18036
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
18037
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
18038
+ # Outposts hostname takes the form `
17731
18039
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
17732
- # When you use this action with S3 on Outposts through the Amazon Web
17733
- # Services SDKs, you provide the Outposts access point ARN in place of
17734
- # the bucket name. For more information about S3 on Outposts ARNs, see
17735
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
18040
+ # When you use this action with S3 on Outposts, the destination bucket
18041
+ # must be the Outposts access point ARN or the access point alias. For
18042
+ # more information about S3 on Outposts, see [What is S3 on
18043
+ # Outposts?][3] in the *Amazon S3 User Guide*.
17736
18044
  #
17737
18045
  #
17738
18046
  #
@@ -18027,14 +18335,14 @@ module Aws::S3
18027
18335
  # @return [String]
18028
18336
  #
18029
18337
  # @!attribute [rw] checksum_crc32
18030
- # The base64-encoded, 32-bit CRC-32 checksum of the object. This will
18031
- # only be present if it was uploaded with the object. When you use an
18032
- # API operation on an object that was uploaded using multipart
18033
- # uploads, this value may not be a direct checksum value of the full
18034
- # object. Instead, it's a calculation based on the checksum values of
18035
- # each individual part. For more information about how checksums are
18036
- # calculated with multipart uploads, see [ Checking object
18037
- # integrity][1] in the *Amazon S3 User Guide*.
18338
+ # The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
18339
+ # checksum is only be present if the checksum was uploaded with the
18340
+ # object. When you use an API operation on an object that was uploaded
18341
+ # using multipart uploads, this value may not be a direct checksum
18342
+ # value of the full object. Instead, it's a calculation based on the
18343
+ # checksum values of each individual part. For more information about
18344
+ # how checksums are calculated with multipart uploads, see [ Checking
18345
+ # object integrity][1] in the *Amazon S3 User Guide*.
18038
18346
  #
18039
18347
  #
18040
18348
  #
@@ -18042,24 +18350,36 @@ module Aws::S3
18042
18350
  # @return [String]
18043
18351
  #
18044
18352
  # @!attribute [rw] checksum_crc32c
18045
- # The base64-encoded, 32-bit CRC-32C checksum of the object. This will
18046
- # only be present if it was uploaded with the object. When you use an
18047
- # API operation on an object that was uploaded using multipart
18048
- # uploads, this value may not be a direct checksum value of the full
18049
- # object. Instead, it's a calculation based on the checksum values of
18050
- # each individual part. For more information about how checksums are
18051
- # calculated with multipart uploads, see [ Checking object
18052
- # integrity][1] in the *Amazon S3 User Guide*.
18353
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
18354
+ # checksum is only present if the checksum was uploaded with the
18355
+ # object. When you use an API operation on an object that was uploaded
18356
+ # using multipart uploads, this value may not be a direct checksum
18357
+ # value of the full object. Instead, it's a calculation based on the
18358
+ # checksum values of each individual part. For more information about
18359
+ # how checksums are calculated with multipart uploads, see [ Checking
18360
+ # object integrity][1] in the *Amazon S3 User Guide*.
18053
18361
  #
18054
18362
  #
18055
18363
  #
18056
18364
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
18057
18365
  # @return [String]
18058
18366
  #
18367
+ # @!attribute [rw] checksum_crc64nvme
18368
+ # This header can be used as a data integrity check to verify that the
18369
+ # data received is the same data that was originally sent. This header
18370
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
18371
+ # part. For more information, see [Checking object integrity][1] in
18372
+ # the *Amazon S3 User Guide*.
18373
+ #
18374
+ #
18375
+ #
18376
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
18377
+ # @return [String]
18378
+ #
18059
18379
  # @!attribute [rw] checksum_sha1
18060
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will
18061
- # only be present if it was uploaded with the object. When you use the
18062
- # API operation on an object that was uploaded using multipart
18380
+ # The Base64 encoded, 160-bit `SHA1` digest of the object. This will
18381
+ # only be present if the object was uploaded with the object. When you
18382
+ # use the API operation on an object that was uploaded using multipart
18063
18383
  # uploads, this value may not be a direct checksum value of the full
18064
18384
  # object. Instead, it's a calculation based on the checksum values of
18065
18385
  # each individual part. For more information about how checksums are
@@ -18072,9 +18392,9 @@ module Aws::S3
18072
18392
  # @return [String]
18073
18393
  #
18074
18394
  # @!attribute [rw] checksum_sha256
18075
- # The base64-encoded, 256-bit SHA-256 digest of the object. This will
18076
- # only be present if it was uploaded with the object. When you use an
18077
- # API operation on an object that was uploaded using multipart
18395
+ # The Base64 encoded, 256-bit `SHA256` digest of the object. This will
18396
+ # only be present if the object was uploaded with the object. When you
18397
+ # use an API operation on an object that was uploaded using multipart
18078
18398
  # uploads, this value may not be a direct checksum value of the full
18079
18399
  # object. Instead, it's a calculation based on the checksum values of
18080
18400
  # each individual part. For more information about how checksums are
@@ -18134,6 +18454,7 @@ module Aws::S3
18134
18454
  :etag,
18135
18455
  :checksum_crc32,
18136
18456
  :checksum_crc32c,
18457
+ :checksum_crc64nvme,
18137
18458
  :checksum_sha1,
18138
18459
  :checksum_sha256,
18139
18460
  :sse_customer_algorithm,
@@ -18158,7 +18479,7 @@ module Aws::S3
18158
18479
  # requests are not supported. Directory bucket names must be unique in
18159
18480
  # the chosen Zone (Availability Zone or Local Zone). Bucket names must
18160
18481
  # follow the format ` bucket-base-name--zone-id--x-s3` (for example, `
18161
- # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
18482
+ # amzn-s3-demo-bucket--usw2-az1--x-s3`). For information about bucket
18162
18483
  # naming restrictions, see [Directory bucket naming rules][1] in the
18163
18484
  # *Amazon S3 User Guide*.
18164
18485
  #
@@ -18178,14 +18499,14 @@ module Aws::S3
18178
18499
  #
18179
18500
  # </note>
18180
18501
  #
18181
- # **S3 on Outposts** - When you use this action with Amazon S3 on
18182
- # Outposts, you must direct requests to the S3 on Outposts hostname.
18183
- # The S3 on Outposts hostname takes the form `
18502
+ # **S3 on Outposts** - When you use this action with S3 on Outposts,
18503
+ # you must direct requests to the S3 on Outposts hostname. The S3 on
18504
+ # Outposts hostname takes the form `
18184
18505
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
18185
- # When you use this action with S3 on Outposts through the Amazon Web
18186
- # Services SDKs, you provide the Outposts access point ARN in place of
18187
- # the bucket name. For more information about S3 on Outposts ARNs, see
18188
- # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
18506
+ # When you use this action with S3 on Outposts, the destination bucket
18507
+ # must be the Outposts access point ARN or the access point alias. For
18508
+ # more information about S3 on Outposts, see [What is S3 on
18509
+ # Outposts?][3] in the *Amazon S3 User Guide*.
18189
18510
  #
18190
18511
  #
18191
18512
  #
@@ -18200,7 +18521,7 @@ module Aws::S3
18200
18521
  # @return [Integer]
18201
18522
  #
18202
18523
  # @!attribute [rw] content_md5
18203
- # The base64-encoded 128-bit MD5 digest of the part data. This
18524
+ # The Base64 encoded 128-bit MD5 digest of the part data. This
18204
18525
  # parameter is auto-populated when using the command from the CLI.
18205
18526
  # This parameter is required if object lock parameters are specified.
18206
18527
  #
@@ -18232,7 +18553,7 @@ module Aws::S3
18232
18553
  # @!attribute [rw] checksum_crc32
18233
18554
  # This header can be used as a data integrity check to verify that the
18234
18555
  # data received is the same data that was originally sent. This header
18235
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
18556
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
18236
18557
  # For more information, see [Checking object integrity][1] in the
18237
18558
  # *Amazon S3 User Guide*.
18238
18559
  #
@@ -18244,9 +18565,21 @@ module Aws::S3
18244
18565
  # @!attribute [rw] checksum_crc32c
18245
18566
  # This header can be used as a data integrity check to verify that the
18246
18567
  # data received is the same data that was originally sent. This header
18247
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
18248
- # For more information, see [Checking object integrity][1] in the
18249
- # *Amazon S3 User Guide*.
18568
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the
18569
+ # object. For more information, see [Checking object integrity][1] in
18570
+ # the *Amazon S3 User Guide*.
18571
+ #
18572
+ #
18573
+ #
18574
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
18575
+ # @return [String]
18576
+ #
18577
+ # @!attribute [rw] checksum_crc64nvme
18578
+ # This header can be used as a data integrity check to verify that the
18579
+ # data received is the same data that was originally sent. This header
18580
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
18581
+ # part. For more information, see [Checking object integrity][1] in
18582
+ # the *Amazon S3 User Guide*.
18250
18583
  #
18251
18584
  #
18252
18585
  #
@@ -18256,7 +18589,7 @@ module Aws::S3
18256
18589
  # @!attribute [rw] checksum_sha1
18257
18590
  # This header can be used as a data integrity check to verify that the
18258
18591
  # data received is the same data that was originally sent. This header
18259
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object.
18592
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object.
18260
18593
  # For more information, see [Checking object integrity][1] in the
18261
18594
  # *Amazon S3 User Guide*.
18262
18595
  #
@@ -18268,7 +18601,7 @@ module Aws::S3
18268
18601
  # @!attribute [rw] checksum_sha256
18269
18602
  # This header can be used as a data integrity check to verify that the
18270
18603
  # data received is the same data that was originally sent. This header
18271
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
18604
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
18272
18605
  # For more information, see [Checking object integrity][1] in the
18273
18606
  # *Amazon S3 User Guide*.
18274
18607
  #
@@ -18359,6 +18692,7 @@ module Aws::S3
18359
18692
  :checksum_algorithm,
18360
18693
  :checksum_crc32,
18361
18694
  :checksum_crc32c,
18695
+ :checksum_crc64nvme,
18362
18696
  :checksum_sha1,
18363
18697
  :checksum_sha256,
18364
18698
  :key,
@@ -18534,7 +18868,7 @@ module Aws::S3
18534
18868
  # @!attribute [rw] checksum_crc32
18535
18869
  # This header can be used as a data integrity check to verify that the
18536
18870
  # data received is the same data that was originally sent. This
18537
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object
18871
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object
18538
18872
  # returned by the Object Lambda function. This may not match the
18539
18873
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
18540
18874
  # validation of the checksum values only when the original `GetObject`
@@ -18555,7 +18889,7 @@ module Aws::S3
18555
18889
  # @!attribute [rw] checksum_crc32c
18556
18890
  # This header can be used as a data integrity check to verify that the
18557
18891
  # data received is the same data that was originally sent. This
18558
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object
18892
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the object
18559
18893
  # returned by the Object Lambda function. This may not match the
18560
18894
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
18561
18895
  # validation of the checksum values only when the original `GetObject`
@@ -18571,10 +18905,22 @@ module Aws::S3
18571
18905
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
18572
18906
  # @return [String]
18573
18907
  #
18908
+ # @!attribute [rw] checksum_crc64nvme
18909
+ # This header can be used as a data integrity check to verify that the
18910
+ # data received is the same data that was originally sent. This header
18911
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
18912
+ # part. For more information, see [Checking object integrity][1] in
18913
+ # the *Amazon S3 User Guide*.
18914
+ #
18915
+ #
18916
+ #
18917
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
18918
+ # @return [String]
18919
+ #
18574
18920
  # @!attribute [rw] checksum_sha1
18575
18921
  # This header can be used as a data integrity check to verify that the
18576
18922
  # data received is the same data that was originally sent. This
18577
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object
18923
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object
18578
18924
  # returned by the Object Lambda function. This may not match the
18579
18925
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
18580
18926
  # validation of the checksum values only when the original `GetObject`
@@ -18593,7 +18939,7 @@ module Aws::S3
18593
18939
  # @!attribute [rw] checksum_sha256
18594
18940
  # This header can be used as a data integrity check to verify that the
18595
18941
  # data received is the same data that was originally sent. This
18596
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object
18942
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object
18597
18943
  # returned by the Object Lambda function. This may not match the
18598
18944
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
18599
18945
  # validation of the checksum values only when the original `GetObject`
@@ -18611,7 +18957,12 @@ module Aws::S3
18611
18957
  #
18612
18958
  # @!attribute [rw] delete_marker
18613
18959
  # Specifies whether an object stored in Amazon S3 is (`true`) or is
18614
- # not (`false`) a delete marker.
18960
+ # not (`false`) a delete marker. To learn more about delete markers,
18961
+ # see [Working with delete markers][1].
18962
+ #
18963
+ #
18964
+ #
18965
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
18615
18966
  # @return [Boolean]
18616
18967
  #
18617
18968
  # @!attribute [rw] etag
@@ -18767,6 +19118,7 @@ module Aws::S3
18767
19118
  :content_type,
18768
19119
  :checksum_crc32,
18769
19120
  :checksum_crc32c,
19121
+ :checksum_crc64nvme,
18770
19122
  :checksum_sha1,
18771
19123
  :checksum_sha256,
18772
19124
  :delete_marker,