aws-sdk-s3 1.121.0 → 1.122.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.
@@ -501,14 +501,14 @@ module Aws::S3
501
501
  # name. For more information about access point ARNs, see [Using access
502
502
  # points][1] in the *Amazon S3 User Guide*.
503
503
  #
504
- # When using this action with Amazon S3 on Outposts, you must direct
504
+ # When you use this action with Amazon S3 on Outposts, you must direct
505
505
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
506
506
  # takes the form `
507
507
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
508
- # When using this action with S3 on Outposts through the Amazon Web
509
- # Services SDKs, you provide the Outposts bucket ARN in place of the
510
- # bucket name. For more information about S3 on Outposts ARNs, see
511
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
508
+ # When you use this action with S3 on Outposts through the Amazon Web
509
+ # Services SDKs, you provide the Outposts access point ARN in place of
510
+ # the bucket name. For more information about S3 on Outposts ARNs, see
511
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
512
512
  #
513
513
  #
514
514
  #
@@ -596,10 +596,17 @@ module Aws::S3
596
596
  # minutes to complete. After Amazon S3 begins processing the request, it
597
597
  # sends an HTTP response header that specifies a 200 OK response. While
598
598
  # processing is in progress, Amazon S3 periodically sends white space
599
- # characters to keep the connection from timing out. Because a request
600
- # could fail after the initial 200 OK response has been sent, it is
601
- # important that you check the response body to determine whether the
602
- # request succeeded.
599
+ # characters to keep the connection from timing out. A request could
600
+ # fail after the initial 200 OK response has been sent. This means that
601
+ # a `200 OK` response can contain either a success or an error. If you
602
+ # call the S3 API directly, make sure to design your application to
603
+ # parse the contents of the response and handle it appropriately. If you
604
+ # use Amazon Web Services SDKs, SDKs handle this condition. The SDKs
605
+ # detect the embedded error and apply error handling per your
606
+ # configuration settings (including automatically retrying the request
607
+ # as appropriate). If the condition persists, the SDKs throws an
608
+ # exception (or, for the SDKs that don't use exceptions, they return
609
+ # the error).
603
610
  #
604
611
  # Note that if `CompleteMultipartUpload` fails, applications should be
605
612
  # prepared to retry the failed requests. For more information, see
@@ -683,14 +690,14 @@ module Aws::S3
683
690
  # name. For more information about access point ARNs, see [Using access
684
691
  # points][1] in the *Amazon S3 User Guide*.
685
692
  #
686
- # When using this action with Amazon S3 on Outposts, you must direct
693
+ # When you use this action with Amazon S3 on Outposts, you must direct
687
694
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
688
695
  # takes the form `
689
696
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
690
- # When using this action with S3 on Outposts through the Amazon Web
691
- # Services SDKs, you provide the Outposts bucket ARN in place of the
692
- # bucket name. For more information about S3 on Outposts ARNs, see
693
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
697
+ # When you use this action with S3 on Outposts through the Amazon Web
698
+ # Services SDKs, you provide the Outposts access point ARN in place of
699
+ # the bucket name. For more information about S3 on Outposts ARNs, see
700
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
694
701
  #
695
702
  #
696
703
  #
@@ -922,8 +929,14 @@ module Aws::S3
922
929
  # before the copy action starts, you receive a standard Amazon S3 error.
923
930
  # If the error occurs during the copy operation, the error response is
924
931
  # embedded in the `200 OK` response. This means that a `200 OK` response
925
- # can contain either a success or an error. Design your application to
926
- # parse the contents of the response and handle it appropriately.
932
+ # can contain either a success or an error. If you call the S3 API
933
+ # directly, make sure to design your application to parse the contents
934
+ # of the response and handle it appropriately. If you use Amazon Web
935
+ # Services SDKs, SDKs handle this condition. The SDKs detect the
936
+ # embedded error and apply error handling per your configuration
937
+ # settings (including automatically retrying the request as
938
+ # appropriate). If the condition persists, the SDKs throws an exception
939
+ # (or, for the SDKs that don't use exceptions, they return the error).
927
940
  #
928
941
  # If the copy is successful, you receive a response with information
929
942
  # about the copied object.
@@ -943,145 +956,169 @@ module Aws::S3
943
956
  # endpoint, you get a 400 `Bad Request` error. For more information, see
944
957
  # [Transfer Acceleration][4].
945
958
  #
946
- # **Metadata**
947
- #
948
- # When copying an object, you can preserve all metadata (default) or
949
- # specify new metadata. However, the ACL is not preserved and is set to
950
- # private for the user making the request. To override the default ACL
951
- # setting, specify a new ACL when generating a copy request. For more
952
- # information, see [Using ACLs][5].
959
+ # Metadata
953
960
  #
954
- # To specify whether you want the object metadata copied from the source
955
- # object or replaced with metadata provided in the request, you can
956
- # optionally add the `x-amz-metadata-directive` header. When you grant
957
- # permissions, you can use the `s3:x-amz-metadata-directive` condition
958
- # key to enforce certain metadata behavior when objects are uploaded.
959
- # For more information, see [Specifying Conditions in a Policy][6] in
960
- # the *Amazon S3 User Guide*. For a complete list of Amazon S3-specific
961
- # condition keys, see [Actions, Resources, and Condition Keys for Amazon
962
- # S3][7].
961
+ # : When copying an object, you can preserve all metadata (default) or
962
+ # specify new metadata. However, the ACL is not preserved and is set
963
+ # to private for the user making the request. To override the default
964
+ # ACL setting, specify a new ACL when generating a copy request. For
965
+ # more information, see [Using ACLs][5].
963
966
  #
964
- # **x-amz-copy-source-if Headers**
967
+ # To specify whether you want the object metadata copied from the
968
+ # source object or replaced with metadata provided in the request, you
969
+ # can optionally add the `x-amz-metadata-directive` header. When you
970
+ # grant permissions, you can use the `s3:x-amz-metadata-directive`
971
+ # condition key to enforce certain metadata behavior when objects are
972
+ # uploaded. For more information, see [Specifying Conditions in a
973
+ # Policy][6] in the *Amazon S3 User Guide*. For a complete list of
974
+ # Amazon S3-specific condition keys, see [Actions, Resources, and
975
+ # Condition Keys for Amazon S3][7].
965
976
  #
966
- # To only copy an object under certain conditions, such as whether the
967
- # `Etag` matches or whether the object was modified before or after a
968
- # specified date, use the following request parameters:
977
+ # <note markdown="1"> `x-amz-website-redirect-location` is unique to each object and must
978
+ # be specified in the request headers to copy the value.
969
979
  #
970
- # * `x-amz-copy-source-if-match`
971
- #
972
- # * `x-amz-copy-source-if-none-match`
980
+ # </note>
973
981
  #
974
- # * `x-amz-copy-source-if-unmodified-since`
982
+ # x-amz-copy-source-if Headers
975
983
  #
976
- # * `x-amz-copy-source-if-modified-since`
984
+ # : To only copy an object under certain conditions, such as whether the
985
+ # `Etag` matches or whether the object was modified before or after a
986
+ # specified date, use the following request parameters:
977
987
  #
978
- # If both the `x-amz-copy-source-if-match` and
979
- # `x-amz-copy-source-if-unmodified-since` headers are present in the
980
- # request and evaluate as follows, Amazon S3 returns `200 OK` and copies
981
- # the data:
988
+ # * `x-amz-copy-source-if-match`
982
989
  #
983
- # * `x-amz-copy-source-if-match` condition evaluates to true
990
+ # * `x-amz-copy-source-if-none-match`
984
991
  #
985
- # * `x-amz-copy-source-if-unmodified-since` condition evaluates to false
992
+ # * `x-amz-copy-source-if-unmodified-since`
986
993
  #
987
- # If both the `x-amz-copy-source-if-none-match` and
988
- # `x-amz-copy-source-if-modified-since` headers are present in the
989
- # request and evaluate as follows, Amazon S3 returns the `412
990
- # Precondition Failed` response code:
994
+ # * `x-amz-copy-source-if-modified-since`
991
995
  #
992
- # * `x-amz-copy-source-if-none-match` condition evaluates to false
996
+ # If both the `x-amz-copy-source-if-match` and
997
+ # `x-amz-copy-source-if-unmodified-since` headers are present in the
998
+ # request and evaluate as follows, Amazon S3 returns `200 OK` and
999
+ # copies the data:
993
1000
  #
994
- # * `x-amz-copy-source-if-modified-since` condition evaluates to true
1001
+ # * `x-amz-copy-source-if-match` condition evaluates to true
995
1002
  #
996
- # <note markdown="1"> All headers with the `x-amz-` prefix, including `x-amz-copy-source`,
997
- # must be signed.
1003
+ # * `x-amz-copy-source-if-unmodified-since` condition evaluates to
1004
+ # false
998
1005
  #
999
- # </note>
1006
+ # If both the `x-amz-copy-source-if-none-match` and
1007
+ # `x-amz-copy-source-if-modified-since` headers are present in the
1008
+ # request and evaluate as follows, Amazon S3 returns the `412
1009
+ # Precondition Failed` response code:
1000
1010
  #
1001
- # **Server-side encryption**
1011
+ # * `x-amz-copy-source-if-none-match` condition evaluates to false
1002
1012
  #
1003
- # When you perform a CopyObject operation, you can optionally use the
1004
- # appropriate encryption-related headers to encrypt the object using
1005
- # server-side encryption with Amazon Web Services managed encryption
1006
- # keys (SSE-S3 or SSE-KMS) or a customer-provided encryption key. With
1007
- # server-side encryption, Amazon S3 encrypts your data as it writes it
1008
- # to disks in its data centers and decrypts the data when you access it.
1009
- # For more information about server-side encryption, see [Using
1010
- # Server-Side Encryption][8].
1013
+ # * `x-amz-copy-source-if-modified-since` condition evaluates to true
1011
1014
  #
1012
- # If a target object uses SSE-KMS, you can enable an S3 Bucket Key for
1013
- # the object. For more information, see [Amazon S3 Bucket Keys][9] in
1014
- # the *Amazon S3 User Guide*.
1015
+ # <note markdown="1"> All headers with the `x-amz-` prefix, including `x-amz-copy-source`,
1016
+ # must be signed.
1015
1017
  #
1016
- # **Access Control List (ACL)-Specific Request Headers**
1018
+ # </note>
1017
1019
  #
1018
- # When copying an object, you can optionally use headers to grant
1019
- # ACL-based permissions. By default, all objects are private. Only the
1020
- # owner has full access control. When adding a new object, you can grant
1021
- # permissions to individual Amazon Web Services accounts or to
1022
- # predefined groups defined by Amazon S3. These permissions are then
1023
- # added to the ACL on the object. For more information, see [Access
1024
- # Control List (ACL) Overview][10] and [Managing ACLs Using the REST
1025
- # API][11].
1020
+ # Server-side encryption
1021
+ #
1022
+ # : Amazon S3 automatically encrypts all new objects that are copied to
1023
+ # an S3 bucket. When copying an object, if you don't specify
1024
+ # encryption information in your copy request, the encryption setting
1025
+ # of the target object is set to the default encryption configuration
1026
+ # of the destination bucket. By default, all buckets have a base level
1027
+ # of encryption configuration that uses server-side encryption with
1028
+ # Amazon S3 managed keys (SSE-S3). If the destination bucket has a
1029
+ # default encryption configuration that uses server-side encryption
1030
+ # with an Key Management Service (KMS) key (SSE-KMS), or a
1031
+ # customer-provided encryption key (SSE-C), Amazon S3 uses the
1032
+ # corresponding KMS key, or a customer-provided key to encrypt the
1033
+ # target object copy.
1034
+ #
1035
+ # When you perform a CopyObject operation, if you want to use a
1036
+ # different type of encryption setting for the target object, you can
1037
+ # use other appropriate encryption-related headers to encrypt the
1038
+ # target object with a KMS key, an Amazon S3 managed key, or a
1039
+ # customer-provided key. With server-side encryption, Amazon S3
1040
+ # encrypts your data as it writes it to disks in its data centers and
1041
+ # decrypts the data when you access it. If the encryption setting in
1042
+ # your request is different from the default encryption configuration
1043
+ # of the destination bucket, the encryption setting in your request
1044
+ # takes precedence. If the source object for the copy is stored in
1045
+ # Amazon S3 using SSE-C, you must provide the necessary encryption
1046
+ # information in your request so that Amazon S3 can decrypt the object
1047
+ # for copying. For more information about server-side encryption, see
1048
+ # [Using Server-Side Encryption][8].
1049
+ #
1050
+ # If a target object uses SSE-KMS, you can enable an S3 Bucket Key for
1051
+ # the object. For more information, see [Amazon S3 Bucket Keys][9] in
1052
+ # the *Amazon S3 User Guide*.
1053
+ #
1054
+ # Access Control List (ACL)-Specific Request Headers
1055
+ #
1056
+ # : When copying an object, you can optionally use headers to grant
1057
+ # ACL-based permissions. By default, all objects are private. Only the
1058
+ # owner has full access control. When adding a new object, you can
1059
+ # grant permissions to individual Amazon Web Services accounts or to
1060
+ # predefined groups defined by Amazon S3. These permissions are then
1061
+ # added to the ACL on the object. For more information, see [Access
1062
+ # Control List (ACL) Overview][10] and [Managing ACLs Using the REST
1063
+ # API][11].
1026
1064
  #
1027
- # If the bucket that you're copying objects to uses the bucket owner
1028
- # enforced setting for S3 Object Ownership, ACLs are disabled and no
1029
- # longer affect permissions. Buckets that use this setting only accept
1030
- # PUT requests that don't specify an ACL or PUT requests that specify
1031
- # bucket owner full control ACLs, such as the
1032
- # `bucket-owner-full-control` canned ACL or an equivalent form of this
1033
- # ACL expressed in the XML format.
1065
+ # If the bucket that you're copying objects to uses the bucket owner
1066
+ # enforced setting for S3 Object Ownership, ACLs are disabled and no
1067
+ # longer affect permissions. Buckets that use this setting only accept
1068
+ # PUT requests that don't specify an ACL or PUT requests that specify
1069
+ # bucket owner full control ACLs, such as the
1070
+ # `bucket-owner-full-control` canned ACL or an equivalent form of this
1071
+ # ACL expressed in the XML format.
1034
1072
  #
1035
- # For more information, see [ Controlling ownership of objects and
1036
- # disabling ACLs][12] in the *Amazon S3 User Guide*.
1073
+ # For more information, see [ Controlling ownership of objects and
1074
+ # disabling ACLs][12] in the *Amazon S3 User Guide*.
1037
1075
  #
1038
- # <note markdown="1"> If your bucket uses the bucket owner enforced setting for Object
1039
- # Ownership, all objects written to the bucket by any account will be
1040
- # owned by the bucket owner.
1076
+ # <note markdown="1"> If your bucket uses the bucket owner enforced setting for Object
1077
+ # Ownership, all objects written to the bucket by any account will be
1078
+ # owned by the bucket owner.
1041
1079
  #
1042
- # </note>
1080
+ # </note>
1043
1081
  #
1044
- # **Checksums**
1082
+ # Checksums
1045
1083
  #
1046
- # When copying an object, if it has a checksum, that checksum will be
1047
- # copied to the new object by default. When you copy the object over,
1048
- # you may optionally specify a different checksum algorithm to use with
1049
- # the `x-amz-checksum-algorithm` header.
1084
+ # : When copying an object, if it has a checksum, that checksum will be
1085
+ # copied to the new object by default. When you copy the object over,
1086
+ # you may optionally specify a different checksum algorithm to use
1087
+ # with the `x-amz-checksum-algorithm` header.
1050
1088
  #
1051
- # **Storage Class Options**
1089
+ # Storage Class Options
1052
1090
  #
1053
- # You can use the `CopyObject` action to change the storage class of an
1054
- # object that is already stored in Amazon S3 using the `StorageClass`
1055
- # parameter. For more information, see [Storage Classes][13] in the
1056
- # *Amazon S3 User Guide*.
1091
+ # : You can use the `CopyObject` action to change the storage class of
1092
+ # an object that is already stored in Amazon S3 using the
1093
+ # `StorageClass` parameter. For more information, see [Storage
1094
+ # Classes][13] in the *Amazon S3 User Guide*.
1057
1095
  #
1058
- # **Versioning**
1096
+ # If the source object's storage class is GLACIER, you must restore a
1097
+ # copy of this object before you can use it as a source object for the
1098
+ # copy operation. For more information, see [RestoreObject][14]. For
1099
+ # more information, see [Copying Objects][15].
1059
1100
  #
1060
- # By default, `x-amz-copy-source` identifies the current version of an
1061
- # object to copy. If the current version is a delete marker, Amazon S3
1062
- # behaves as if the object was deleted. To copy a different version, use
1063
- # the `versionId` subresource.
1101
+ # Versioning
1064
1102
  #
1065
- # If you enable versioning on the target bucket, Amazon S3 generates a
1066
- # unique version ID for the object being copied. This version ID is
1067
- # different from the version ID of the source object. Amazon S3 returns
1068
- # the version ID of the copied object in the `x-amz-version-id` response
1069
- # header in the response.
1103
+ # : By default, `x-amz-copy-source` identifies the current version of an
1104
+ # object to copy. If the current version is a delete marker, Amazon S3
1105
+ # behaves as if the object was deleted. To copy a different version,
1106
+ # use the `versionId` subresource.
1070
1107
  #
1071
- # If you do not enable versioning or suspend it on the target bucket,
1072
- # the version ID that Amazon S3 generates is always null.
1108
+ # If you enable versioning on the target bucket, Amazon S3 generates a
1109
+ # unique version ID for the object being copied. This version ID is
1110
+ # different from the version ID of the source object. Amazon S3
1111
+ # returns the version ID of the copied object in the
1112
+ # `x-amz-version-id` response header in the response.
1073
1113
  #
1074
- # If the source object's storage class is GLACIER, you must restore a
1075
- # copy of this object before you can use it as a source object for the
1076
- # copy operation. For more information, see [RestoreObject][14].
1114
+ # If you do not enable versioning or suspend it on the target bucket,
1115
+ # the version ID that Amazon S3 generates is always null.
1077
1116
  #
1078
1117
  # The following operations are related to `CopyObject`:
1079
1118
  #
1080
- # * [PutObject][15]
1119
+ # * [PutObject][16]
1081
1120
  #
1082
- # * [GetObject][16]
1083
- #
1084
- # For more information, see [Copying Objects][17].
1121
+ # * [GetObject][17]
1085
1122
  #
1086
1123
  #
1087
1124
  #
@@ -1099,9 +1136,9 @@ module Aws::S3
1099
1136
  # [12]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
1100
1137
  # [13]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
1101
1138
  # [14]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
1102
- # [15]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1103
- # [16]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
1104
- # [17]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
1139
+ # [15]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
1140
+ # [16]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1141
+ # [17]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
1105
1142
  #
1106
1143
  # @option params [String] :acl
1107
1144
  # The canned ACL to apply to the object.
@@ -1119,14 +1156,14 @@ module Aws::S3
1119
1156
  # name. For more information about access point ARNs, see [Using access
1120
1157
  # points][1] in the *Amazon S3 User Guide*.
1121
1158
  #
1122
- # When using this action with Amazon S3 on Outposts, you must direct
1159
+ # When you use this action with Amazon S3 on Outposts, you must direct
1123
1160
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
1124
1161
  # takes the form `
1125
1162
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
1126
- # When using this action with S3 on Outposts through the Amazon Web
1127
- # Services SDKs, you provide the Outposts bucket ARN in place of the
1128
- # bucket name. For more information about S3 on Outposts ARNs, see
1129
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
1163
+ # When you use this action with S3 on Outposts through the Amazon Web
1164
+ # Services SDKs, you provide the Outposts access point ARN in place of
1165
+ # the bucket name. For more information about S3 on Outposts ARNs, see
1166
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
1130
1167
  #
1131
1168
  #
1132
1169
  #
@@ -1260,7 +1297,7 @@ module Aws::S3
1260
1297
  #
1261
1298
  # @option params [String] :server_side_encryption
1262
1299
  # The server-side encryption algorithm used when storing this object in
1263
- # Amazon S3 (for example, AES256, aws:kms).
1300
+ # Amazon S3 (for example, AES256, `aws:kms`).
1264
1301
  #
1265
1302
  # @option params [String] :storage_class
1266
1303
  # By default, Amazon S3 uses the STANDARD Storage Class to store newly
@@ -1277,7 +1314,10 @@ module Aws::S3
1277
1314
  # @option params [String] :website_redirect_location
1278
1315
  # If the bucket is configured as a website, redirects requests for this
1279
1316
  # object to another object in the same bucket or to an external URL.
1280
- # Amazon S3 stores the value of this header in the object metadata.
1317
+ # Amazon S3 stores the value of this header in the object metadata. This
1318
+ # value is unique to each object and is not copied when using the
1319
+ # `x-amz-metadata-directive` header. Instead, you may opt to provide
1320
+ # this header in combination with the directive.
1281
1321
  #
1282
1322
  # @option params [String] :sse_customer_algorithm
1283
1323
  # Specifies the algorithm to use to when encrypting the object (for
@@ -1510,100 +1550,102 @@ module Aws::S3
1510
1550
  #
1511
1551
  # </note>
1512
1552
  #
1513
- # **Access control lists (ACLs)**
1553
+ # Access control lists (ACLs)
1514
1554
  #
1515
- # When creating a bucket using this operation, you can optionally
1516
- # configure the bucket ACL to specify the accounts or groups that should
1517
- # be granted specific permissions on the bucket.
1555
+ # : When creating a bucket using this operation, you can optionally
1556
+ # configure the bucket ACL to specify the accounts or groups that
1557
+ # should be granted specific permissions on the bucket.
1518
1558
  #
1519
- # If your CreateBucket request sets bucket owner enforced for S3 Object
1520
- # Ownership and specifies a bucket ACL that provides access to an
1521
- # external Amazon Web Services account, your request fails with a `400`
1522
- # error and returns the `InvalidBucketAclWithObjectOwnership` error
1523
- # code. For more information, see [Controlling object ownership][5] in
1524
- # the *Amazon S3 User Guide*.
1559
+ # If your CreateBucket request sets bucket owner enforced for S3
1560
+ # Object Ownership and specifies a bucket ACL that provides access to
1561
+ # an external Amazon Web Services account, your request fails with a
1562
+ # `400` error and returns the `InvalidBucketAclWithObjectOwnership`
1563
+ # error code. For more information, see [Controlling object
1564
+ # ownership][5] in the *Amazon S3 User Guide*.
1525
1565
  #
1526
- # There are two ways to grant the appropriate permissions using the
1527
- # request headers.
1566
+ # There are two ways to grant the appropriate permissions using the
1567
+ # request headers.
1528
1568
  #
1529
- # * Specify a canned ACL using the `x-amz-acl` request header. Amazon S3
1530
- # supports a set of predefined ACLs, known as *canned ACLs*. Each
1531
- # canned ACL has a predefined set of grantees and permissions. For
1532
- # more information, see [Canned ACL][6].
1569
+ # * Specify a canned ACL using the `x-amz-acl` request header. Amazon
1570
+ # S3 supports a set of predefined ACLs, known as *canned ACLs*. Each
1571
+ # canned ACL has a predefined set of grantees and permissions. For
1572
+ # more information, see [Canned ACL][6].
1533
1573
  #
1534
- # * Specify access permissions explicitly using the `x-amz-grant-read`,
1535
- # `x-amz-grant-write`, `x-amz-grant-read-acp`,
1536
- # `x-amz-grant-write-acp`, and `x-amz-grant-full-control` headers.
1537
- # These headers map to the set of permissions Amazon S3 supports in an
1538
- # ACL. For more information, see [Access control list (ACL)
1539
- # overview][7].
1574
+ # * Specify access permissions explicitly using the
1575
+ # `x-amz-grant-read`, `x-amz-grant-write`, `x-amz-grant-read-acp`,
1576
+ # `x-amz-grant-write-acp`, and `x-amz-grant-full-control` headers.
1577
+ # These headers map to the set of permissions Amazon S3 supports in
1578
+ # an ACL. For more information, see [Access control list (ACL)
1579
+ # overview][7].
1540
1580
  #
1541
- # You specify each grantee as a type=value pair, where the type is one
1542
- # of the following:
1581
+ # You specify each grantee as a type=value pair, where the type is
1582
+ # one of the following:
1543
1583
  #
1544
- # * `id` – if the value specified is the canonical user ID of an
1545
- # Amazon Web Services account
1584
+ # * `id` – if the value specified is the canonical user ID of an
1585
+ # Amazon Web Services account
1546
1586
  #
1547
- # * `uri` – if you are granting permissions to a predefined group
1587
+ # * `uri` – if you are granting permissions to a predefined group
1548
1588
  #
1549
- # * `emailAddress` – if the value specified is the email address of an
1550
- # Amazon Web Services account
1589
+ # * `emailAddress` – if the value specified is the email address of
1590
+ # an Amazon Web Services account
1551
1591
  #
1552
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in
1553
- # the following Amazon Web Services Regions:
1592
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
1593
+ # the following Amazon Web Services Regions:
1554
1594
  #
1555
- # * US East (N. Virginia)
1595
+ # * US East (N. Virginia)
1556
1596
  #
1557
- # * US West (N. California)
1597
+ # * US West (N. California)
1558
1598
  #
1559
- # * US West (Oregon)
1599
+ # * US West (Oregon)
1560
1600
  #
1561
- # * Asia Pacific (Singapore)
1601
+ # * Asia Pacific (Singapore)
1562
1602
  #
1563
- # * Asia Pacific (Sydney)
1603
+ # * Asia Pacific (Sydney)
1564
1604
  #
1565
- # * Asia Pacific (Tokyo)
1605
+ # * Asia Pacific (Tokyo)
1566
1606
  #
1567
- # * Europe (Ireland)
1607
+ # * Europe (Ireland)
1568
1608
  #
1569
- # * South America (São Paulo)
1609
+ # * South America (São Paulo)
1570
1610
  #
1571
- # For a list of all the Amazon S3 supported Regions and endpoints,
1572
- # see [Regions and Endpoints][8] in the Amazon Web Services General
1573
- # Reference.
1611
+ # For a list of all the Amazon S3 supported Regions and endpoints,
1612
+ # see [Regions and Endpoints][8] in the Amazon Web Services
1613
+ # General Reference.
1574
1614
  #
1575
- # </note>
1615
+ # </note>
1576
1616
  #
1577
- # For example, the following `x-amz-grant-read` header grants the
1578
- # Amazon Web Services accounts identified by account IDs permissions
1579
- # to read object data and its metadata:
1617
+ # For example, the following `x-amz-grant-read` header grants the
1618
+ # Amazon Web Services accounts identified by account IDs permissions
1619
+ # to read object data and its metadata:
1580
1620
  #
1581
- # `x-amz-grant-read: id="11112222333", id="444455556666" `
1621
+ # `x-amz-grant-read: id="11112222333", id="444455556666" `
1582
1622
  #
1583
- # <note markdown="1"> You can use either a canned ACL or specify access permissions
1584
- # explicitly. You cannot do both.
1623
+ # <note markdown="1"> You can use either a canned ACL or specify access permissions
1624
+ # explicitly. You cannot do both.
1585
1625
  #
1586
- # </note>
1626
+ # </note>
1587
1627
  #
1588
- # **Permissions**
1628
+ # Permissions
1589
1629
  #
1590
- # In addition to `s3:CreateBucket`, the following permissions are
1591
- # required when your CreateBucket includes specific headers:
1630
+ # : In addition to `s3:CreateBucket`, the following permissions are
1631
+ # required when your CreateBucket includes specific headers:
1592
1632
  #
1593
- # * **ACLs** - If your `CreateBucket` request specifies ACL permissions
1594
- # and the ACL is public-read, public-read-write, authenticated-read,
1595
- # or if you specify access permissions explicitly through any other
1596
- # ACL, both `s3:CreateBucket` and `s3:PutBucketAcl` permissions are
1597
- # needed. If the ACL the `CreateBucket` request is private or doesn't
1598
- # specify any ACLs, only `s3:CreateBucket` permission is needed.
1633
+ # * **ACLs** - If your `CreateBucket` request specifies ACL
1634
+ # permissions and the ACL is public-read, public-read-write,
1635
+ # authenticated-read, or if you specify access permissions
1636
+ # explicitly through any other ACL, both `s3:CreateBucket` and
1637
+ # `s3:PutBucketAcl` permissions are needed. If the ACL the
1638
+ # `CreateBucket` request is private or doesn't specify any ACLs,
1639
+ # only `s3:CreateBucket` permission is needed.
1599
1640
  #
1600
- # * **Object Lock** - If `ObjectLockEnabledForBucket` is set to true in
1601
- # your `CreateBucket` request, `s3:PutBucketObjectLockConfiguration`
1602
- # and `s3:PutBucketVersioning` permissions are required.
1641
+ # * **Object Lock** - If `ObjectLockEnabledForBucket` is set to true
1642
+ # in your `CreateBucket` request,
1643
+ # `s3:PutBucketObjectLockConfiguration` and `s3:PutBucketVersioning`
1644
+ # permissions are required.
1603
1645
  #
1604
- # * **S3 Object Ownership** - If your CreateBucket request includes the
1605
- # the `x-amz-object-ownership` header, `s3:PutBucketOwnershipControls`
1606
- # permission is required.
1646
+ # * **S3 Object Ownership** - If your CreateBucket request includes
1647
+ # the `x-amz-object-ownership` header,
1648
+ # `s3:PutBucketOwnershipControls` permission is required.
1607
1649
  #
1608
1650
  # The following operations are related to `CreateBucket`:
1609
1651
  #
@@ -1679,33 +1721,33 @@ module Aws::S3
1679
1721
  # * {Types::CreateBucketOutput#location #location} => String
1680
1722
  #
1681
1723
  #
1682
- # @example Example: To create a bucket in a specific region
1724
+ # @example Example: To create a bucket
1683
1725
  #
1684
- # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1726
+ # # The following example creates a bucket.
1685
1727
  #
1686
1728
  # resp = client.create_bucket({
1687
1729
  # bucket: "examplebucket",
1688
- # create_bucket_configuration: {
1689
- # location_constraint: "eu-west-1",
1690
- # },
1691
1730
  # })
1692
1731
  #
1693
1732
  # resp.to_h outputs the following:
1694
1733
  # {
1695
- # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1734
+ # location: "/examplebucket",
1696
1735
  # }
1697
1736
  #
1698
- # @example Example: To create a bucket
1737
+ # @example Example: To create a bucket in a specific region
1699
1738
  #
1700
- # # The following example creates a bucket.
1739
+ # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1701
1740
  #
1702
1741
  # resp = client.create_bucket({
1703
1742
  # bucket: "examplebucket",
1743
+ # create_bucket_configuration: {
1744
+ # location_constraint: "eu-west-1",
1745
+ # },
1704
1746
  # })
1705
1747
  #
1706
1748
  # resp.to_h outputs the following:
1707
1749
  # {
1708
- # location: "/examplebucket",
1750
+ # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1709
1751
  # }
1710
1752
  #
1711
1753
  # @example Request syntax with placeholder values
@@ -1753,7 +1795,8 @@ module Aws::S3
1753
1795
  # in the bucket lifecycle configuration. Otherwise, the incomplete
1754
1796
  # multipart upload becomes eligible for an abort action and Amazon S3
1755
1797
  # aborts the multipart upload. For more information, see [Aborting
1756
- # Incomplete Multipart Uploads Using a Bucket Lifecycle Policy][3].
1798
+ # Incomplete Multipart Uploads Using a Bucket Lifecycle
1799
+ # Configuration][3].
1757
1800
  #
1758
1801
  # For information about the permissions required to use the multipart
1759
1802
  # upload API, see [Multipart Upload and Permissions][4].
@@ -1774,22 +1817,42 @@ module Aws::S3
1774
1817
  #
1775
1818
  # </note>
1776
1819
  #
1777
- # You can optionally request server-side encryption. For server-side
1778
- # encryption, Amazon S3 encrypts your data as it writes it to disks in
1779
- # its data centers and decrypts it when you access it. You can provide
1780
- # your own encryption key, or use Amazon Web Services KMS keys or Amazon
1781
- # S3-managed encryption keys. If you choose to provide your own
1782
- # encryption key, the request headers you provide in [UploadPart][1] and
1783
- # [UploadPartCopy][6] requests must match the headers you used in the
1784
- # request to initiate the upload by using `CreateMultipartUpload`.
1785
- #
1786
- # To perform a multipart upload with encryption using an Amazon Web
1820
+ # Server-side encryption is for data encryption at rest. Amazon S3
1821
+ # encrypts your data as it writes it to disks in its data centers and
1822
+ # decrypts it when you access it. Amazon S3 automatically encrypts all
1823
+ # new objects that are uploaded to an S3 bucket. When doing a multipart
1824
+ # upload, if you don't specify encryption information in your request,
1825
+ # the encryption setting of the uploaded parts is set to the default
1826
+ # encryption configuration of the destination bucket. By default, all
1827
+ # buckets have a base level of encryption configuration that uses
1828
+ # server-side encryption with Amazon S3 managed keys (SSE-S3). If the
1829
+ # destination bucket has a default encryption configuration that uses
1830
+ # server-side encryption with an Key Management Service (KMS) key
1831
+ # (SSE-KMS), or a customer-provided encryption key (SSE-C), Amazon S3
1832
+ # uses the corresponding KMS key, or a customer-provided key to encrypt
1833
+ # the uploaded parts. When you perform a CreateMultipartUpload
1834
+ # operation, if you want to use a different type of encryption setting
1835
+ # for the uploaded parts, you can request that Amazon S3 encrypts the
1836
+ # object with a KMS key, an Amazon S3 managed key, or a
1837
+ # customer-provided key. If the encryption setting in your request is
1838
+ # different from the default encryption configuration of the destination
1839
+ # bucket, the encryption setting in your request takes precedence. If
1840
+ # you choose to provide your own encryption key, the request headers you
1841
+ # provide in [UploadPart][1] and [UploadPartCopy][6] requests must match
1842
+ # the headers you used in the request to initiate the upload by using
1843
+ # `CreateMultipartUpload`. You can request that Amazon S3 save the
1844
+ # uploaded parts encrypted with server-side encryption with an Amazon S3
1845
+ # managed key (SSE-S3), an Key Management Service (KMS) key (SSE-KMS),
1846
+ # or a customer-provided encryption key (SSE-C).
1847
+ #
1848
+ # To perform a multipart upload with encryption by using an Amazon Web
1787
1849
  # Services KMS key, the requester must have permission to the
1788
1850
  # `kms:Decrypt` and `kms:GenerateDataKey*` actions on the key. These
1789
1851
  # permissions are required because Amazon S3 must decrypt and read data
1790
1852
  # from the encrypted file parts before it completes the multipart
1791
1853
  # upload. For more information, see [Multipart upload API and
1792
- # permissions][7] in the *Amazon S3 User Guide*.
1854
+ # permissions][7] and [Protecting data using server-side encryption with
1855
+ # Amazon Web Services KMS][8] in the *Amazon S3 User Guide*.
1793
1856
  #
1794
1857
  # If your Identity and Access Management (IAM) user or role is in the
1795
1858
  # same Amazon Web Services account as the KMS key, then you must have
@@ -1798,7 +1861,7 @@ module Aws::S3
1798
1861
  # permissions on both the key policy and your IAM user or role.
1799
1862
  #
1800
1863
  # For more information, see [Protecting Data Using Server-Side
1801
- # Encryption][8].
1864
+ # Encryption][9].
1802
1865
  #
1803
1866
  # Access Permissions
1804
1867
  #
@@ -1808,31 +1871,33 @@ module Aws::S3
1808
1871
  # request headers:
1809
1872
  #
1810
1873
  # * Specify a canned ACL with the `x-amz-acl` request header. For more
1811
- # information, see [Canned ACL][9].
1874
+ # information, see [Canned ACL][10].
1812
1875
  #
1813
1876
  # * Specify access permissions explicitly with the `x-amz-grant-read`,
1814
1877
  # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
1815
1878
  # `x-amz-grant-full-control` headers. These parameters map to the
1816
1879
  # set of permissions that Amazon S3 supports in an ACL. For more
1817
- # information, see [Access Control List (ACL) Overview][10].
1880
+ # information, see [Access Control List (ACL) Overview][11].
1818
1881
  #
1819
1882
  # You can use either a canned ACL or specify access permissions
1820
1883
  # explicitly. You cannot do both.
1821
1884
  #
1822
1885
  # Server-Side- Encryption-Specific Request Headers
1823
1886
  #
1824
- # : You can optionally tell Amazon S3 to encrypt data at rest using
1825
- # server-side encryption. Server-side encryption is for data
1826
- # encryption at rest. Amazon S3 encrypts your data as it writes it to
1827
- # disks in its data centers and decrypts it when you access it. The
1828
- # option you use depends on whether you want to use Amazon Web
1829
- # Services managed encryption keys or provide your own encryption key.
1830
- #
1831
- # * Use encryption keys managed by Amazon S3 or customer managed key
1832
- # stored in Amazon Web Services Key Management Service (Amazon Web
1833
- # Services KMS) If you want Amazon Web Services to manage the keys
1834
- # used to encrypt data, specify the following headers in the
1835
- # request.
1887
+ # : Amazon S3 encrypts data by using server-side encryption with an
1888
+ # Amazon S3 managed key (SSE-S3) by default. Server-side encryption is
1889
+ # for data encryption at rest. Amazon S3 encrypts your data as it
1890
+ # writes it to disks in its data centers and decrypts it when you
1891
+ # access it. You can request that Amazon S3 encrypts data at rest by
1892
+ # using server-side encryption with other key options. The option you
1893
+ # use depends on whether you want to use KMS keys (SSE-KMS) or provide
1894
+ # your own encryption keys (SSE-C).
1895
+ #
1896
+ # * Use KMS keys (SSE-KMS) that include the Amazon Web Services
1897
+ # managed key (`aws/s3`) and KMS customer managed keys stored in Key
1898
+ # Management Service (KMS) – If you want Amazon Web Services to
1899
+ # manage the keys used to encrypt data, specify the following
1900
+ # headers in the request.
1836
1901
  #
1837
1902
  # * `x-amz-server-side-encryption`
1838
1903
  #
@@ -1842,22 +1907,22 @@ module Aws::S3
1842
1907
  #
1843
1908
  # <note markdown="1"> If you specify `x-amz-server-side-encryption:aws:kms`, but don't
1844
1909
  # provide `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3
1845
- # uses the Amazon Web Services managed key in Amazon Web Services
1846
- # KMS to protect the data.
1910
+ # uses the Amazon Web Services managed key (`aws/s3` key) in KMS to
1911
+ # protect the data.
1847
1912
  #
1848
1913
  # </note>
1849
1914
  #
1850
- # All GET and PUT requests for an object protected by Amazon Web
1851
- # Services KMS fail if you don't make them with SSL or by using
1852
- # SigV4.
1915
+ # All `GET` and `PUT` requests for an object protected by KMS fail
1916
+ # if you don't make them by using Secure Sockets Layer (SSL),
1917
+ # Transport Layer Security (TLS), or Signature Version 4.
1853
1918
  #
1854
- # For more information about server-side encryption with KMS key
1919
+ # For more information about server-side encryption with KMS keys
1855
1920
  # (SSE-KMS), see [Protecting Data Using Server-Side Encryption with
1856
- # KMS keys][11].
1921
+ # KMS keys][8].
1857
1922
  #
1858
- # * Use customer-provided encryption keys – If you want to manage your
1859
- # own encryption keys, provide all the following headers in the
1860
- # request.
1923
+ # * Use customer-provided encryption keys (SSE-C) – If you want to
1924
+ # manage your own encryption keys, provide all the following headers
1925
+ # in the request.
1861
1926
  #
1862
1927
  # * `x-amz-server-side-encryption-customer-algorithm`
1863
1928
  #
@@ -1865,9 +1930,10 @@ module Aws::S3
1865
1930
  #
1866
1931
  # * `x-amz-server-side-encryption-customer-key-MD5`
1867
1932
  #
1868
- # For more information about server-side encryption with KMS keys
1869
- # (SSE-KMS), see [Protecting Data Using Server-Side Encryption with
1870
- # KMS keys][11].
1933
+ # For more information about server-side encryption with
1934
+ # customer-provided encryption keys (SSE-C), see [ Protecting data
1935
+ # using server-side encryption with customer-provided encryption
1936
+ # keys (SSE-C)][12].
1871
1937
  #
1872
1938
  # Access-Control-List (ACL)-Specific Request Headers
1873
1939
  #
@@ -1877,19 +1943,19 @@ module Aws::S3
1877
1943
  # permissions to individual Amazon Web Services accounts or to
1878
1944
  # predefined groups defined by Amazon S3. These permissions are then
1879
1945
  # added to the access control list (ACL) on the object. For more
1880
- # information, see [Using ACLs][12]. With this operation, you can
1946
+ # information, see [Using ACLs][13]. With this operation, you can
1881
1947
  # grant access permissions using one of the following two methods:
1882
1948
  #
1883
1949
  # * Specify a canned ACL (`x-amz-acl`) — Amazon S3 supports a set of
1884
1950
  # predefined ACLs, known as *canned ACLs*. Each canned ACL has a
1885
1951
  # predefined set of grantees and permissions. For more information,
1886
- # see [Canned ACL][9].
1952
+ # see [Canned ACL][10].
1887
1953
  #
1888
1954
  # * Specify access permissions explicitly — To explicitly grant access
1889
1955
  # permissions to specific Amazon Web Services accounts or groups,
1890
1956
  # use the following headers. Each header maps to specific
1891
1957
  # permissions that Amazon S3 supports in an ACL. For more
1892
- # information, see [Access Control List (ACL) Overview][10]. In the
1958
+ # information, see [Access Control List (ACL) Overview][11]. In the
1893
1959
  # header, you specify a list of grantees who get the specific
1894
1960
  # permission. To grant permissions explicitly, use:
1895
1961
  #
@@ -1934,7 +2000,7 @@ module Aws::S3
1934
2000
  # * South America (São Paulo)
1935
2001
  #
1936
2002
  # For a list of all the Amazon S3 supported Regions and endpoints,
1937
- # see [Regions and Endpoints][13] in the Amazon Web Services
2003
+ # see [Regions and Endpoints][14] in the Amazon Web Services
1938
2004
  # General Reference.
1939
2005
  #
1940
2006
  # </note>
@@ -1949,13 +2015,13 @@ module Aws::S3
1949
2015
  #
1950
2016
  # * [UploadPart][1]
1951
2017
  #
1952
- # * [CompleteMultipartUpload][14]
2018
+ # * [CompleteMultipartUpload][15]
1953
2019
  #
1954
- # * [AbortMultipartUpload][15]
2020
+ # * [AbortMultipartUpload][16]
1955
2021
  #
1956
- # * [ListParts][16]
2022
+ # * [ListParts][17]
1957
2023
  #
1958
- # * [ListMultipartUploads][17]
2024
+ # * [ListMultipartUploads][18]
1959
2025
  #
1960
2026
  #
1961
2027
  #
@@ -1966,16 +2032,17 @@ module Aws::S3
1966
2032
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html
1967
2033
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
1968
2034
  # [7]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions
1969
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
1970
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
1971
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
1972
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html
1973
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
1974
- # [13]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
1975
- # [14]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
1976
- # [15]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
1977
- # [16]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
1978
- # [17]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
2035
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html
2036
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
2037
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
2038
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
2039
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html
2040
+ # [13]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
2041
+ # [14]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
2042
+ # [15]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
2043
+ # [16]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
2044
+ # [17]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
2045
+ # [18]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
1979
2046
  #
1980
2047
  # @option params [String] :acl
1981
2048
  # The canned ACL to apply to the object.
@@ -1993,14 +2060,14 @@ module Aws::S3
1993
2060
  # name. For more information about access point ARNs, see [Using access
1994
2061
  # points][1] in the *Amazon S3 User Guide*.
1995
2062
  #
1996
- # When using this action with Amazon S3 on Outposts, you must direct
2063
+ # When you use this action with Amazon S3 on Outposts, you must direct
1997
2064
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
1998
2065
  # takes the form `
1999
2066
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
2000
- # When using this action with S3 on Outposts through the Amazon Web
2001
- # Services SDKs, you provide the Outposts bucket ARN in place of the
2002
- # bucket name. For more information about S3 on Outposts ARNs, see
2003
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
2067
+ # When you use this action with S3 on Outposts through the Amazon Web
2068
+ # Services SDKs, you provide the Outposts access point ARN in place of
2069
+ # the bucket name. For more information about S3 on Outposts ARNs, see
2070
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
2004
2071
  #
2005
2072
  #
2006
2073
  #
@@ -2056,7 +2123,7 @@ module Aws::S3
2056
2123
  #
2057
2124
  # @option params [String] :server_side_encryption
2058
2125
  # The server-side encryption algorithm used when storing this object in
2059
- # Amazon S3 (for example, AES256, aws:kms).
2126
+ # Amazon S3 (for example, AES256, `aws:kms`).
2060
2127
  #
2061
2128
  # @option params [String] :storage_class
2062
2129
  # By default, Amazon S3 uses the STANDARD Storage Class to store newly
@@ -2092,13 +2159,13 @@ module Aws::S3
2092
2159
  # ensure that the encryption key was transmitted without error.
2093
2160
  #
2094
2161
  # @option params [String] :ssekms_key_id
2095
- # Specifies the ID of the symmetric customer managed key to use for
2096
- # object encryption. All GET and PUT requests for an object protected by
2097
- # Amazon Web Services KMS will fail if not made via SSL or using SigV4.
2098
- # For information about configuring using any of the officially
2099
- # supported Amazon Web Services SDKs and Amazon Web Services CLI, see
2100
- # [Specifying the Signature Version in Request Authentication][1] in the
2101
- # *Amazon S3 User Guide*.
2162
+ # Specifies the ID of the symmetric encryption customer managed key to
2163
+ # use for object encryption. All GET and PUT requests for an object
2164
+ # protected by Amazon Web Services KMS will fail if not made via SSL or
2165
+ # using SigV4. For information about configuring using any of the
2166
+ # officially supported Amazon Web Services SDKs and Amazon Web Services
2167
+ # CLI, see [Specifying the Signature Version in Request
2168
+ # Authentication][1] in the *Amazon S3 User Guide*.
2102
2169
  #
2103
2170
  #
2104
2171
  #
@@ -2257,7 +2324,7 @@ module Aws::S3
2257
2324
  # delete markers) in the bucket must be deleted before the bucket itself
2258
2325
  # can be deleted.
2259
2326
  #
2260
- # **Related Resources**
2327
+ # The following operations are related to `DeleteBucket`:
2261
2328
  #
2262
2329
  # * [CreateBucket][1]
2263
2330
  #
@@ -2374,7 +2441,7 @@ module Aws::S3
2374
2441
  # For information about `cors`, see [Enabling Cross-Origin Resource
2375
2442
  # Sharing][1] in the *Amazon S3 User Guide*.
2376
2443
  #
2377
- # **Related Resources:**
2444
+ # The following operations are related to `DeleteBucketCors`:
2378
2445
  #
2379
2446
  # * [PutBucketCors][2]
2380
2447
  #
@@ -2421,10 +2488,11 @@ module Aws::S3
2421
2488
  req.send_request(options)
2422
2489
  end
2423
2490
 
2424
- # This implementation of the DELETE action removes default encryption
2425
- # from the bucket. For information about the Amazon S3 default
2426
- # encryption feature, see [Amazon S3 Default Bucket Encryption][1] in
2427
- # the *Amazon S3 User Guide*.
2491
+ # This implementation of the DELETE action resets the default encryption
2492
+ # for the bucket as server-side encryption with Amazon S3 managed keys
2493
+ # (SSE-S3). For information about the bucket default encryption feature,
2494
+ # see [Amazon S3 Bucket Default Encryption][1] in the *Amazon S3 User
2495
+ # Guide*.
2428
2496
  #
2429
2497
  # To use this operation, you must have permissions to perform the
2430
2498
  # `s3:PutEncryptionConfiguration` action. The bucket owner has this
@@ -2434,7 +2502,7 @@ module Aws::S3
2434
2502
  # Permissions to your Amazon S3 Resources][3] in the *Amazon S3 User
2435
2503
  # Guide*.
2436
2504
  #
2437
- # **Related Resources**
2505
+ # The following operations are related to `DeleteBucketEncryption`:
2438
2506
  #
2439
2507
  # * [PutBucketEncryption][4]
2440
2508
  #
@@ -2701,7 +2769,9 @@ module Aws::S3
2701
2769
  # The name of the bucket containing the metrics configuration to delete.
2702
2770
  #
2703
2771
  # @option params [required, String] :id
2704
- # The ID used to identify the metrics configuration.
2772
+ # The ID used to identify the metrics configuration. The ID has a 64
2773
+ # character limit and can only contain letters, numbers, periods,
2774
+ # dashes, and underscores.
2705
2775
  #
2706
2776
  # @option params [String] :expected_bucket_owner
2707
2777
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -2785,10 +2855,14 @@ module Aws::S3
2785
2855
  # you're not using an identity that belongs to the bucket owner's
2786
2856
  # account, Amazon S3 returns a `405 Method Not Allowed` error.
2787
2857
  #
2788
- # As a security precaution, the root user of the Amazon Web Services
2789
- # account that owns a bucket can always use this operation, even if the
2790
- # policy explicitly denies the root user the ability to perform this
2791
- # action.
2858
+ # To ensure that bucket owners don't inadvertently lock themselves out
2859
+ # of their own buckets, the root principal in a bucket owner's Amazon
2860
+ # Web Services account can perform the `GetBucketPolicy`,
2861
+ # `PutBucketPolicy`, and `DeleteBucketPolicy` API actions, even if their
2862
+ # bucket policy explicitly denies the root principal's access. Bucket
2863
+ # owner root principals can only be blocked from performing these API
2864
+ # actions by VPC endpoint policies and Amazon Web Services Organizations
2865
+ # policies.
2792
2866
  #
2793
2867
  # For more information about bucket policies, see [Using Bucket Policies
2794
2868
  # and UserPolicies][1].
@@ -3027,11 +3101,10 @@ module Aws::S3
3027
3101
  # there isn't a null version, Amazon S3 does not remove any objects but
3028
3102
  # will still respond that the command was successful.
3029
3103
  #
3030
- # To remove a specific version, you must be the bucket owner and you
3031
- # must use the version Id subresource. Using this subresource
3032
- # permanently deletes the version. If the object deleted is a delete
3033
- # marker, Amazon S3 sets the response header, `x-amz-delete-marker`, to
3034
- # true.
3104
+ # To remove a specific version, you must use the version Id subresource.
3105
+ # Using this subresource permanently deletes the version. If the object
3106
+ # deleted is a delete marker, Amazon S3 sets the response header,
3107
+ # `x-amz-delete-marker`, to true.
3035
3108
  #
3036
3109
  # If the object you want to delete is in a bucket where the bucket
3037
3110
  # versioning configuration is MFA Delete enabled, you must include the
@@ -3072,14 +3145,14 @@ module Aws::S3
3072
3145
  # name. For more information about access point ARNs, see [Using access
3073
3146
  # points][1] in the *Amazon S3 User Guide*.
3074
3147
  #
3075
- # When using this action with Amazon S3 on Outposts, you must direct
3148
+ # When you use this action with Amazon S3 on Outposts, you must direct
3076
3149
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
3077
3150
  # takes the form `
3078
3151
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
3079
- # When using this action with S3 on Outposts through the Amazon Web
3080
- # Services SDKs, you provide the Outposts bucket ARN in place of the
3081
- # bucket name. For more information about S3 on Outposts ARNs, see
3082
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
3152
+ # When you use this action with S3 on Outposts through the Amazon Web
3153
+ # Services SDKs, you provide the Outposts access point ARN in place of
3154
+ # the bucket name. For more information about S3 on Outposts ARNs, see
3155
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
3083
3156
  #
3084
3157
  #
3085
3158
  #
@@ -3126,6 +3199,15 @@ module Aws::S3
3126
3199
  # * {Types::DeleteObjectOutput#request_charged #request_charged} => String
3127
3200
  #
3128
3201
  #
3202
+ # @example Example: To delete an object (from a non-versioned bucket)
3203
+ #
3204
+ # # The following example deletes an object from a non-versioned bucket.
3205
+ #
3206
+ # resp = client.delete_object({
3207
+ # bucket: "ExampleBucket",
3208
+ # key: "HappyFace.jpg",
3209
+ # })
3210
+ #
3129
3211
  # @example Example: To delete an object
3130
3212
  #
3131
3213
  # # The following example deletes an object from an S3 bucket.
@@ -3139,15 +3221,6 @@ module Aws::S3
3139
3221
  # {
3140
3222
  # }
3141
3223
  #
3142
- # @example Example: To delete an object (from a non-versioned bucket)
3143
- #
3144
- # # The following example deletes an object from a non-versioned bucket.
3145
- #
3146
- # resp = client.delete_object({
3147
- # bucket: "ExampleBucket",
3148
- # key: "HappyFace.jpg",
3149
- # })
3150
- #
3151
3224
  # @example Request syntax with placeholder values
3152
3225
  #
3153
3226
  # resp = client.delete_object({
@@ -3185,8 +3258,7 @@ module Aws::S3
3185
3258
  # parameter in the request. You will need permission for the
3186
3259
  # `s3:DeleteObjectVersionTagging` action.
3187
3260
  #
3188
- # The following operations are related to
3189
- # `DeleteBucketMetricsConfiguration`:
3261
+ # The following operations are related to `DeleteObjectTagging`:
3190
3262
  #
3191
3263
  # * [PutObjectTagging][2]
3192
3264
  #
@@ -3209,14 +3281,14 @@ module Aws::S3
3209
3281
  # name. For more information about access point ARNs, see [Using access
3210
3282
  # points][1] in the *Amazon S3 User Guide*.
3211
3283
  #
3212
- # When using this action with Amazon S3 on Outposts, you must direct
3284
+ # When you use this action with Amazon S3 on Outposts, you must direct
3213
3285
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
3214
3286
  # takes the form `
3215
3287
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
3216
- # When using this action with S3 on Outposts through the Amazon Web
3217
- # Services SDKs, you provide the Outposts bucket ARN in place of the
3218
- # bucket name. For more information about S3 on Outposts ARNs, see
3219
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
3288
+ # When you use this action with S3 on Outposts through the Amazon Web
3289
+ # Services SDKs, you provide the Outposts access point ARN in place of
3290
+ # the bucket name. For more information about S3 on Outposts ARNs, see
3291
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
3220
3292
  #
3221
3293
  #
3222
3294
  #
@@ -3240,35 +3312,35 @@ module Aws::S3
3240
3312
  # * {Types::DeleteObjectTaggingOutput#version_id #version_id} => String
3241
3313
  #
3242
3314
  #
3243
- # @example Example: To remove tag set from an object
3315
+ # @example Example: To remove tag set from an object version
3244
3316
  #
3245
- # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
3246
- # # operation removes tag set from the latest object version.
3317
+ # # The following example removes tag set associated with the specified object version. The request specifies both the
3318
+ # # object key and object version.
3247
3319
  #
3248
3320
  # resp = client.delete_object_tagging({
3249
3321
  # bucket: "examplebucket",
3250
3322
  # key: "HappyFace.jpg",
3323
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
3251
3324
  # })
3252
3325
  #
3253
3326
  # resp.to_h outputs the following:
3254
3327
  # {
3255
- # version_id: "null",
3328
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
3256
3329
  # }
3257
3330
  #
3258
- # @example Example: To remove tag set from an object version
3331
+ # @example Example: To remove tag set from an object
3259
3332
  #
3260
- # # The following example removes tag set associated with the specified object version. The request specifies both the
3261
- # # object key and object version.
3333
+ # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
3334
+ # # operation removes tag set from the latest object version.
3262
3335
  #
3263
3336
  # resp = client.delete_object_tagging({
3264
3337
  # bucket: "examplebucket",
3265
3338
  # key: "HappyFace.jpg",
3266
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
3267
3339
  # })
3268
3340
  #
3269
3341
  # resp.to_h outputs the following:
3270
3342
  # {
3271
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
3343
+ # version_id: "null",
3272
3344
  # }
3273
3345
  #
3274
3346
  # @example Request syntax with placeholder values
@@ -3357,14 +3429,14 @@ module Aws::S3
3357
3429
  # name. For more information about access point ARNs, see [Using access
3358
3430
  # points][1] in the *Amazon S3 User Guide*.
3359
3431
  #
3360
- # When using this action with Amazon S3 on Outposts, you must direct
3432
+ # When you use this action with Amazon S3 on Outposts, you must direct
3361
3433
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
3362
3434
  # takes the form `
3363
3435
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
3364
- # When using this action with S3 on Outposts through the Amazon Web
3365
- # Services SDKs, you provide the Outposts bucket ARN in place of the
3366
- # bucket name. For more information about S3 on Outposts ARNs, see
3367
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
3436
+ # When you use this action with S3 on Outposts through the Amazon Web
3437
+ # Services SDKs, you provide the Outposts access point ARN in place of
3438
+ # the bucket name. For more information about S3 on Outposts ARNs, see
3439
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
3368
3440
  #
3369
3441
  #
3370
3442
  #
@@ -3427,20 +3499,22 @@ module Aws::S3
3427
3499
  # * {Types::DeleteObjectsOutput#errors #errors} => Array&lt;Types::Error&gt;
3428
3500
  #
3429
3501
  #
3430
- # @example Example: To delete multiple objects from a versioned bucket
3502
+ # @example Example: To delete multiple object versions from a versioned bucket
3431
3503
  #
3432
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3433
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3504
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3505
+ # # versions and returns the key and versions of deleted objects in the response.
3434
3506
  #
3435
3507
  # resp = client.delete_objects({
3436
3508
  # bucket: "examplebucket",
3437
3509
  # delete: {
3438
3510
  # objects: [
3439
3511
  # {
3440
- # key: "objectkey1",
3512
+ # key: "HappyFace.jpg",
3513
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3441
3514
  # },
3442
3515
  # {
3443
- # key: "objectkey2",
3516
+ # key: "HappyFace.jpg",
3517
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3444
3518
  # },
3445
3519
  # ],
3446
3520
  # quiet: false,
@@ -3451,34 +3525,30 @@ module Aws::S3
3451
3525
  # {
3452
3526
  # deleted: [
3453
3527
  # {
3454
- # delete_marker: true,
3455
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3456
- # key: "objectkey1",
3528
+ # key: "HappyFace.jpg",
3529
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3457
3530
  # },
3458
3531
  # {
3459
- # delete_marker: true,
3460
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3461
- # key: "objectkey2",
3532
+ # key: "HappyFace.jpg",
3533
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3462
3534
  # },
3463
3535
  # ],
3464
3536
  # }
3465
3537
  #
3466
- # @example Example: To delete multiple object versions from a versioned bucket
3538
+ # @example Example: To delete multiple objects from a versioned bucket
3467
3539
  #
3468
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3469
- # # versions and returns the key and versions of deleted objects in the response.
3540
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3541
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3470
3542
  #
3471
3543
  # resp = client.delete_objects({
3472
3544
  # bucket: "examplebucket",
3473
3545
  # delete: {
3474
3546
  # objects: [
3475
3547
  # {
3476
- # key: "HappyFace.jpg",
3477
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3548
+ # key: "objectkey1",
3478
3549
  # },
3479
3550
  # {
3480
- # key: "HappyFace.jpg",
3481
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3551
+ # key: "objectkey2",
3482
3552
  # },
3483
3553
  # ],
3484
3554
  # quiet: false,
@@ -3489,12 +3559,14 @@ module Aws::S3
3489
3559
  # {
3490
3560
  # deleted: [
3491
3561
  # {
3492
- # key: "HappyFace.jpg",
3493
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3562
+ # delete_marker: true,
3563
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3564
+ # key: "objectkey1",
3494
3565
  # },
3495
3566
  # {
3496
- # key: "HappyFace.jpg",
3497
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3567
+ # delete_marker: true,
3568
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3569
+ # key: "objectkey2",
3498
3570
  # },
3499
3571
  # ],
3500
3572
  # }
@@ -3620,7 +3692,8 @@ module Aws::S3
3620
3692
  # For more information about transfer acceleration, see [Transfer
3621
3693
  # Acceleration][4] in the Amazon S3 User Guide.
3622
3694
  #
3623
- # **Related Resources**
3695
+ # The following operations are related to
3696
+ # `GetBucketAccelerateConfiguration`:
3624
3697
  #
3625
3698
  # * [PutBucketAccelerateConfiguration][3]
3626
3699
  #
@@ -3673,28 +3746,53 @@ module Aws::S3
3673
3746
  # can return the ACL of the bucket without using an authorization
3674
3747
  # header.
3675
3748
  #
3749
+ # To use this API operation against an access point, provide the alias
3750
+ # of the access point in place of the bucket name.
3751
+ #
3752
+ # To use this API operation against an Object Lambda access point,
3753
+ # provide the alias of the Object Lambda access point in place of the
3754
+ # bucket name. If the Object Lambda access point alias in a request is
3755
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
3756
+ # For more information about `InvalidAccessPointAliasError`, see [List
3757
+ # of Error Codes][1].
3758
+ #
3676
3759
  # <note markdown="1"> If your bucket uses the bucket owner enforced setting for S3 Object
3677
3760
  # Ownership, requests to read ACLs are still supported and return the
3678
3761
  # `bucket-owner-full-control` ACL with the owner being the account that
3679
3762
  # created the bucket. For more information, see [ Controlling object
3680
- # ownership and disabling ACLs][1] in the *Amazon S3 User Guide*.
3763
+ # ownership and disabling ACLs][2] in the *Amazon S3 User Guide*.
3681
3764
  #
3682
3765
  # </note>
3683
3766
  #
3684
- # **Related Resources**
3767
+ # The following operations are related to `GetBucketAcl`:
3685
3768
  #
3686
- # * [ListObjects][2]
3769
+ # * [ListObjects][3]
3687
3770
  #
3688
3771
  # ^
3689
3772
  #
3690
3773
  #
3691
3774
  #
3692
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
3693
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html
3775
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
3776
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
3777
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html
3694
3778
  #
3695
3779
  # @option params [required, String] :bucket
3696
3780
  # Specifies the S3 bucket whose ACL is being requested.
3697
3781
  #
3782
+ # To use this API operation against an access point, provide the alias
3783
+ # of the access point in place of the bucket name.
3784
+ #
3785
+ # To use this API operation against an Object Lambda access point,
3786
+ # provide the alias of the Object Lambda access point in place of the
3787
+ # bucket name. If the Object Lambda access point alias in a request is
3788
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
3789
+ # For more information about `InvalidAccessPointAliasError`, see [List
3790
+ # of Error Codes][1].
3791
+ #
3792
+ #
3793
+ #
3794
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
3795
+ #
3698
3796
  # @option params [String] :expected_bucket_owner
3699
3797
  # The account ID of the expected bucket owner. If the bucket is owned by
3700
3798
  # a different account, the request fails with the HTTP status code `403
@@ -3748,7 +3846,8 @@ module Aws::S3
3748
3846
  # For information about Amazon S3 analytics feature, see [Amazon S3
3749
3847
  # Analytics – Storage Class Analysis][3] in the *Amazon S3 User Guide*.
3750
3848
  #
3751
- # **Related Resources**
3849
+ # The following operations are related to
3850
+ # `GetBucketAnalyticsConfiguration`:
3752
3851
  #
3753
3852
  # * [DeleteBucketAnalyticsConfiguration][4]
3754
3853
  #
@@ -3821,24 +3920,49 @@ module Aws::S3
3821
3920
  # `s3:GetBucketCORS` action. By default, the bucket owner has this
3822
3921
  # permission and can grant it to others.
3823
3922
  #
3923
+ # To use this API operation against an access point, provide the alias
3924
+ # of the access point in place of the bucket name.
3925
+ #
3926
+ # To use this API operation against an Object Lambda access point,
3927
+ # provide the alias of the Object Lambda access point in place of the
3928
+ # bucket name. If the Object Lambda access point alias in a request is
3929
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
3930
+ # For more information about `InvalidAccessPointAliasError`, see [List
3931
+ # of Error Codes][1].
3932
+ #
3824
3933
  # For more information about CORS, see [ Enabling Cross-Origin Resource
3825
- # Sharing][1].
3934
+ # Sharing][2].
3826
3935
  #
3827
3936
  # The following operations are related to `GetBucketCors`:
3828
3937
  #
3829
- # * [PutBucketCors][2]
3938
+ # * [PutBucketCors][3]
3830
3939
  #
3831
- # * [DeleteBucketCors][3]
3940
+ # * [DeleteBucketCors][4]
3832
3941
  #
3833
3942
  #
3834
3943
  #
3835
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
3836
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html
3837
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html
3944
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
3945
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
3946
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html
3947
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html
3838
3948
  #
3839
3949
  # @option params [required, String] :bucket
3840
3950
  # The bucket name for which to get the cors configuration.
3841
3951
  #
3952
+ # To use this API operation against an access point, provide the alias
3953
+ # of the access point in place of the bucket name.
3954
+ #
3955
+ # To use this API operation against an Object Lambda access point,
3956
+ # provide the alias of the Object Lambda access point in place of the
3957
+ # bucket name. If the Object Lambda access point alias in a request is
3958
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
3959
+ # For more information about `InvalidAccessPointAliasError`, see [List
3960
+ # of Error Codes][1].
3961
+ #
3962
+ #
3963
+ #
3964
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
3965
+ #
3842
3966
  # @option params [String] :expected_bucket_owner
3843
3967
  # The account ID of the expected bucket owner. If the bucket is owned by
3844
3968
  # a different account, the request fails with the HTTP status code `403
@@ -3906,12 +4030,10 @@ module Aws::S3
3906
4030
  end
3907
4031
 
3908
4032
  # Returns the default encryption configuration for an Amazon S3 bucket.
3909
- # If the bucket does not have a default encryption configuration,
3910
- # GetBucketEncryption returns
3911
- # `ServerSideEncryptionConfigurationNotFoundError`.
3912
- #
3913
- # For information about the Amazon S3 default encryption feature, see
3914
- # [Amazon S3 Default Bucket Encryption][1].
4033
+ # By default, all buckets have a default encryption configuration that
4034
+ # uses server-side encryption with Amazon S3 managed keys (SSE-S3). For
4035
+ # information about the bucket default encryption feature, see [Amazon
4036
+ # S3 Bucket Default Encryption][1] in the *Amazon S3 User Guide*.
3915
4037
  #
3916
4038
  # To use this operation, you must have permission to perform the
3917
4039
  # `s3:GetEncryptionConfiguration` action. The bucket owner has this
@@ -4383,26 +4505,52 @@ module Aws::S3
4383
4505
  # using the `LocationConstraint` request parameter in a `CreateBucket`
4384
4506
  # request. For more information, see [CreateBucket][1].
4385
4507
  #
4386
- # To use this implementation of the operation, you must be the bucket
4387
- # owner.
4508
+ # To use this API operation against an access point, provide the alias
4509
+ # of the access point in place of the bucket name.
4388
4510
  #
4389
- # To use this API against an access point, provide the alias of the
4390
- # access point in place of the bucket name.
4511
+ # To use this API operation against an Object Lambda access point,
4512
+ # provide the alias of the Object Lambda access point in place of the
4513
+ # bucket name. If the Object Lambda access point alias in a request is
4514
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4515
+ # For more information about `InvalidAccessPointAliasError`, see [List
4516
+ # of Error Codes][2].
4517
+ #
4518
+ # <note markdown="1"> We recommend that you use [HeadBucket][3] to return the Region that a
4519
+ # bucket resides in. For backward compatibility, Amazon S3 continues to
4520
+ # support GetBucketLocation.
4521
+ #
4522
+ # </note>
4391
4523
  #
4392
4524
  # The following operations are related to `GetBucketLocation`:
4393
4525
  #
4394
- # * [GetObject][2]
4526
+ # * [GetObject][4]
4395
4527
  #
4396
4528
  # * [CreateBucket][1]
4397
4529
  #
4398
4530
  #
4399
4531
  #
4400
4532
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
4401
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
4533
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4534
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html
4535
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
4402
4536
  #
4403
4537
  # @option params [required, String] :bucket
4404
4538
  # The name of the bucket for which to get the location.
4405
4539
  #
4540
+ # To use this API operation against an access point, provide the alias
4541
+ # of the access point in place of the bucket name.
4542
+ #
4543
+ # To use this API operation against an Object Lambda access point,
4544
+ # provide the alias of the Object Lambda access point in place of the
4545
+ # bucket name. If the Object Lambda access point alias in a request is
4546
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4547
+ # For more information about `InvalidAccessPointAliasError`, see [List
4548
+ # of Error Codes][1].
4549
+ #
4550
+ #
4551
+ #
4552
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4553
+ #
4406
4554
  # @option params [String] :expected_bucket_owner
4407
4555
  # The account ID of the expected bucket owner. If the bucket is owned by
4408
4556
  # a different account, the request fails with the HTTP status code `403
@@ -4447,8 +4595,7 @@ module Aws::S3
4447
4595
  end
4448
4596
 
4449
4597
  # Returns the logging status of a bucket and the permissions users have
4450
- # to view and modify that status. To use GET, you must be the bucket
4451
- # owner.
4598
+ # to view and modify that status.
4452
4599
  #
4453
4600
  # The following operations are related to `GetBucketLogging`:
4454
4601
  #
@@ -4540,7 +4687,9 @@ module Aws::S3
4540
4687
  # retrieve.
4541
4688
  #
4542
4689
  # @option params [required, String] :id
4543
- # The ID used to identify the metrics configuration.
4690
+ # The ID used to identify the metrics configuration. The ID has a 64
4691
+ # character limit and can only contain letters, numbers, periods,
4692
+ # dashes, and underscores.
4544
4693
  #
4545
4694
  # @option params [String] :expected_bucket_owner
4546
4695
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -4591,6 +4740,20 @@ module Aws::S3
4591
4740
  # The name of the bucket for which to get the notification
4592
4741
  # configuration.
4593
4742
  #
4743
+ # To use this API operation against an access point, provide the alias
4744
+ # of the access point in place of the bucket name.
4745
+ #
4746
+ # To use this API operation against an Object Lambda access point,
4747
+ # provide the alias of the Object Lambda access point in place of the
4748
+ # bucket name. If the Object Lambda access point alias in a request is
4749
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4750
+ # For more information about `InvalidAccessPointAliasError`, see [List
4751
+ # of Error Codes][1].
4752
+ #
4753
+ #
4754
+ #
4755
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4756
+ #
4594
4757
  # @option params [String] :expected_bucket_owner
4595
4758
  # The account ID of the expected bucket owner. If the bucket is owned by
4596
4759
  # a different account, the request fails with the HTTP status code `403
@@ -4704,27 +4867,52 @@ module Aws::S3
4704
4867
  # policy to grant permission to other users to read this configuration
4705
4868
  # with the `s3:GetBucketNotification` permission.
4706
4869
  #
4870
+ # To use this API operation against an access point, provide the alias
4871
+ # of the access point in place of the bucket name.
4872
+ #
4873
+ # To use this API operation against an Object Lambda access point,
4874
+ # provide the alias of the Object Lambda access point in place of the
4875
+ # bucket name. If the Object Lambda access point alias in a request is
4876
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4877
+ # For more information about `InvalidAccessPointAliasError`, see [List
4878
+ # of Error Codes][1].
4879
+ #
4707
4880
  # For more information about setting and reading the notification
4708
4881
  # configuration on a bucket, see [Setting Up Notification of Bucket
4709
- # Events][1]. For more information about bucket policies, see [Using
4710
- # Bucket Policies][2].
4882
+ # Events][2]. For more information about bucket policies, see [Using
4883
+ # Bucket Policies][3].
4711
4884
  #
4712
4885
  # The following action is related to `GetBucketNotification`:
4713
4886
  #
4714
- # * [PutBucketNotification][3]
4887
+ # * [PutBucketNotification][4]
4715
4888
  #
4716
4889
  # ^
4717
4890
  #
4718
4891
  #
4719
4892
  #
4720
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
4721
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
4722
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html
4893
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4894
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
4895
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
4896
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html
4723
4897
  #
4724
4898
  # @option params [required, String] :bucket
4725
4899
  # The name of the bucket for which to get the notification
4726
4900
  # configuration.
4727
4901
  #
4902
+ # To use this API operation against an access point, provide the alias
4903
+ # of the access point in place of the bucket name.
4904
+ #
4905
+ # To use this API operation against an Object Lambda access point,
4906
+ # provide the alias of the Object Lambda access point in place of the
4907
+ # bucket name. If the Object Lambda access point alias in a request is
4908
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4909
+ # For more information about `InvalidAccessPointAliasError`, see [List
4910
+ # of Error Codes][1].
4911
+ #
4912
+ #
4913
+ #
4914
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4915
+ #
4728
4916
  # @option params [String] :expected_bucket_owner
4729
4917
  # The account ID of the expected bucket owner. If the bucket is owned by
4730
4918
  # a different account, the request fails with the HTTP status code `403
@@ -4844,28 +5032,57 @@ module Aws::S3
4844
5032
  # you're not using an identity that belongs to the bucket owner's
4845
5033
  # account, Amazon S3 returns a `405 Method Not Allowed` error.
4846
5034
  #
4847
- # As a security precaution, the root user of the Amazon Web Services
4848
- # account that owns a bucket can always use this operation, even if the
4849
- # policy explicitly denies the root user the ability to perform this
4850
- # action.
5035
+ # To ensure that bucket owners don't inadvertently lock themselves out
5036
+ # of their own buckets, the root principal in a bucket owner's Amazon
5037
+ # Web Services account can perform the `GetBucketPolicy`,
5038
+ # `PutBucketPolicy`, and `DeleteBucketPolicy` API actions, even if their
5039
+ # bucket policy explicitly denies the root principal's access. Bucket
5040
+ # owner root principals can only be blocked from performing these API
5041
+ # actions by VPC endpoint policies and Amazon Web Services Organizations
5042
+ # policies.
5043
+ #
5044
+ # To use this API operation against an access point, provide the alias
5045
+ # of the access point in place of the bucket name.
5046
+ #
5047
+ # To use this API operation against an Object Lambda access point,
5048
+ # provide the alias of the Object Lambda access point in place of the
5049
+ # bucket name. If the Object Lambda access point alias in a request is
5050
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
5051
+ # For more information about `InvalidAccessPointAliasError`, see [List
5052
+ # of Error Codes][1].
4851
5053
  #
4852
5054
  # For more information about bucket policies, see [Using Bucket Policies
4853
- # and User Policies][1].
5055
+ # and User Policies][2].
4854
5056
  #
4855
5057
  # The following action is related to `GetBucketPolicy`:
4856
5058
  #
4857
- # * [GetObject][2]
5059
+ # * [GetObject][3]
4858
5060
  #
4859
5061
  # ^
4860
5062
  #
4861
5063
  #
4862
5064
  #
4863
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
4864
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
5065
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
5066
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
5067
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
4865
5068
  #
4866
5069
  # @option params [required, String] :bucket
4867
5070
  # The bucket name for which to get the bucket policy.
4868
5071
  #
5072
+ # To use this API operation against an access point, provide the alias
5073
+ # of the access point in place of the bucket name.
5074
+ #
5075
+ # To use this API operation against an Object Lambda access point,
5076
+ # provide the alias of the Object Lambda access point in place of the
5077
+ # bucket name. If the Object Lambda access point alias in a request is
5078
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
5079
+ # For more information about `InvalidAccessPointAliasError`, see [List
5080
+ # of Error Codes][1].
5081
+ #
5082
+ #
5083
+ #
5084
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
5085
+ #
4869
5086
  # @option params [String] :expected_bucket_owner
4870
5087
  # The account ID of the expected bucket owner. If the bucket is owned by
4871
5088
  # a different account, the request fails with the HTTP status code `403
@@ -5317,7 +5534,7 @@ module Aws::S3
5317
5534
  # the website configuration by writing a bucket policy granting them the
5318
5535
  # `S3:GetBucketWebsite` permission.
5319
5536
  #
5320
- # The following operations are related to `DeleteBucketWebsite`:
5537
+ # The following operations are related to `GetBucketWebsite`:
5321
5538
  #
5322
5539
  # * [DeleteBucketWebsite][2]
5323
5540
  #
@@ -5421,7 +5638,7 @@ module Aws::S3
5421
5638
  # Glacier Deep Archive storage class, or S3 Intelligent-Tiering Archive
5422
5639
  # or S3 Intelligent-Tiering Deep Archive tiers, before you can retrieve
5423
5640
  # the object you must first restore a copy using [RestoreObject][3].
5424
- # Otherwise, this action returns an `InvalidObjectStateError` error. For
5641
+ # Otherwise, this action returns an `InvalidObjectState` error. For
5425
5642
  # information about restoring archived objects, see [Restoring Archived
5426
5643
  # Objects][4].
5427
5644
  #
@@ -5451,86 +5668,88 @@ module Aws::S3
5451
5668
  # [GetObjectTagging][6] to retrieve the tag set associated with an
5452
5669
  # object.
5453
5670
  #
5454
- # **Permissions**
5671
+ # Permissions
5455
5672
  #
5456
- # You need the relevant read object (or version) permission for this
5457
- # operation. For more information, see [Specifying Permissions in a
5458
- # Policy][7]. If the object you request does not exist, the error Amazon
5459
- # S3 returns depends on whether you also have the `s3:ListBucket`
5460
- # permission.
5673
+ # : You need the relevant read object (or version) permission for this
5674
+ # operation. For more information, see [Specifying Permissions in a
5675
+ # Policy][7]. If the object you request does not exist, the error
5676
+ # Amazon S3 returns depends on whether you also have the
5677
+ # `s3:ListBucket` permission.
5461
5678
  #
5462
- # * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
5463
- # will return an HTTP status code 404 ("no such key") error.
5679
+ # * If you have the `s3:ListBucket` permission on the bucket, Amazon
5680
+ # S3 will return an HTTP status code 404 ("no such key") error.
5464
5681
  #
5465
- # * If you don’t have the `s3:ListBucket` permission, Amazon S3 will
5466
- # return an HTTP status code 403 ("access denied") error.
5682
+ # * If you don’t have the `s3:ListBucket` permission, Amazon S3 will
5683
+ # return an HTTP status code 403 ("access denied") error.
5467
5684
  #
5468
- # **Versioning**
5685
+ # Versioning
5469
5686
  #
5470
- # By default, the GET action returns the current version of an object.
5471
- # To return a different version, use the `versionId` subresource.
5687
+ # : By default, the GET action returns the current version of an object.
5688
+ # To return a different version, use the `versionId` subresource.
5472
5689
  #
5473
- # <note markdown="1"> * If you supply a `versionId`, you need the `s3:GetObjectVersion`
5474
- # permission to access a specific version of an object. If you request
5475
- # a specific version, you do not need to have the `s3:GetObject`
5476
- # permission.
5690
+ # <note markdown="1"> * If you supply a `versionId`, you need the `s3:GetObjectVersion`
5691
+ # permission to access a specific version of an object. If you
5692
+ # request a specific version, you do not need to have the
5693
+ # `s3:GetObject` permission. If you request the current version
5694
+ # without a specific version ID, only `s3:GetObject` permission is
5695
+ # required. `s3:GetObjectVersion` permission won't be required.
5477
5696
  #
5478
- # * If the current version of the object is a delete marker, Amazon S3
5479
- # behaves as if the object was deleted and includes
5480
- # `x-amz-delete-marker: true` in the response.
5697
+ # * If the current version of the object is a delete marker, Amazon S3
5698
+ # behaves as if the object was deleted and includes
5699
+ # `x-amz-delete-marker: true` in the response.
5481
5700
  #
5482
- # </note>
5701
+ # </note>
5483
5702
  #
5484
- # For more information about versioning, see [PutBucketVersioning][8].
5703
+ # For more information about versioning, see [PutBucketVersioning][8].
5485
5704
  #
5486
- # **Overriding Response Header Values**
5705
+ # Overriding Response Header Values
5487
5706
  #
5488
- # There are times when you want to override certain response header
5489
- # values in a GET response. For example, you might override the
5490
- # `Content-Disposition` response header value in your GET request.
5707
+ # : There are times when you want to override certain response header
5708
+ # values in a GET response. For example, you might override the
5709
+ # `Content-Disposition` response header value in your GET request.
5491
5710
  #
5492
- # You can override values for a set of response headers using the
5493
- # following query parameters. These response header values are sent only
5494
- # on a successful request, that is, when status code 200 OK is returned.
5495
- # The set of headers you can override using these parameters is a subset
5496
- # of the headers that Amazon S3 accepts when you create an object. The
5497
- # response headers that you can override for the GET response are
5498
- # `Content-Type`, `Content-Language`, `Expires`, `Cache-Control`,
5499
- # `Content-Disposition`, and `Content-Encoding`. To override these
5500
- # header values in the GET response, you use the following request
5501
- # parameters.
5711
+ # You can override values for a set of response headers using the
5712
+ # following query parameters. These response header values are sent
5713
+ # only on a successful request, that is, when status code 200 OK is
5714
+ # returned. The set of headers you can override using these parameters
5715
+ # is a subset of the headers that Amazon S3 accepts when you create an
5716
+ # object. The response headers that you can override for the GET
5717
+ # response are `Content-Type`, `Content-Language`, `Expires`,
5718
+ # `Cache-Control`, `Content-Disposition`, and `Content-Encoding`. To
5719
+ # override these header values in the GET response, you use the
5720
+ # following request parameters.
5502
5721
  #
5503
- # <note markdown="1"> You must sign the request, either using an Authorization header or a
5504
- # presigned URL, when using these parameters. They cannot be used with
5505
- # an unsigned (anonymous) request.
5722
+ # <note markdown="1"> You must sign the request, either using an Authorization header or a
5723
+ # presigned URL, when using these parameters. They cannot be used with
5724
+ # an unsigned (anonymous) request.
5506
5725
  #
5507
- # </note>
5726
+ # </note>
5508
5727
  #
5509
- # * `response-content-type`
5728
+ # * `response-content-type`
5510
5729
  #
5511
- # * `response-content-language`
5730
+ # * `response-content-language`
5512
5731
  #
5513
- # * `response-expires`
5732
+ # * `response-expires`
5514
5733
  #
5515
- # * `response-cache-control`
5734
+ # * `response-cache-control`
5516
5735
  #
5517
- # * `response-content-disposition`
5736
+ # * `response-content-disposition`
5518
5737
  #
5519
- # * `response-content-encoding`
5738
+ # * `response-content-encoding`
5520
5739
  #
5521
- # **Additional Considerations about Request Headers**
5740
+ # Overriding Response Header Values
5522
5741
  #
5523
- # If both of the `If-Match` and `If-Unmodified-Since` headers are
5524
- # present in the request as follows: `If-Match` condition evaluates to
5525
- # `true`, and; `If-Unmodified-Since` condition evaluates to `false`;
5526
- # then, S3 returns 200 OK and the data requested.
5742
+ # : If both of the `If-Match` and `If-Unmodified-Since` headers are
5743
+ # present in the request as follows: `If-Match` condition evaluates to
5744
+ # `true`, and; `If-Unmodified-Since` condition evaluates to `false`;
5745
+ # then, S3 returns 200 OK and the data requested.
5527
5746
  #
5528
- # If both of the `If-None-Match` and `If-Modified-Since` headers are
5529
- # present in the request as follows:` If-None-Match` condition evaluates
5530
- # to `false`, and; `If-Modified-Since` condition evaluates to `true`;
5531
- # then, S3 returns 304 Not Modified response code.
5747
+ # If both of the `If-None-Match` and `If-Modified-Since` headers are
5748
+ # present in the request as follows:` If-None-Match` condition
5749
+ # evaluates to `false`, and; `If-Modified-Since` condition evaluates
5750
+ # to `true`; then, S3 returns 304 Not Modified response code.
5532
5751
  #
5533
- # For more information about conditional requests, see [RFC 7232][9].
5752
+ # For more information about conditional requests, see [RFC 7232][9].
5534
5753
  #
5535
5754
  # The following operations are related to `GetObject`:
5536
5755
  #
@@ -5568,14 +5787,14 @@ module Aws::S3
5568
5787
  # When using an Object Lambda access point the hostname takes the form
5569
5788
  # *AccessPointName*-*AccountId*.s3-object-lambda.*Region*.amazonaws.com.
5570
5789
  #
5571
- # When using this action with Amazon S3 on Outposts, you must direct
5790
+ # When you use this action with Amazon S3 on Outposts, you must direct
5572
5791
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
5573
5792
  # takes the form `
5574
5793
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
5575
- # When using this action with S3 on Outposts through the Amazon Web
5576
- # Services SDKs, you provide the Outposts bucket ARN in place of the
5577
- # bucket name. For more information about S3 on Outposts ARNs, see
5578
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
5794
+ # When you use this action with S3 on Outposts through the Amazon Web
5795
+ # Services SDKs, you provide the Outposts access point ARN in place of
5796
+ # the bucket name. For more information about S3 on Outposts ARNs, see
5797
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
5579
5798
  #
5580
5799
  #
5581
5800
  #
@@ -5604,7 +5823,7 @@ module Aws::S3
5604
5823
  # @option params [String] :range
5605
5824
  # Downloads the specified range bytes of an object. For more information
5606
5825
  # about the HTTP Range header, see
5607
- # [https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35][1].
5826
+ # [https://www.rfc-editor.org/rfc/rfc9110.html#name-range][1].
5608
5827
  #
5609
5828
  # <note markdown="1"> Amazon S3 doesn't support retrieving multiple ranges of data per
5610
5829
  # `GET` request.
@@ -5613,7 +5832,7 @@ module Aws::S3
5613
5832
  #
5614
5833
  #
5615
5834
  #
5616
- # [1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
5835
+ # [1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-range
5617
5836
  #
5618
5837
  # @option params [String] :response_cache_control
5619
5838
  # Sets the `Cache-Control` header of the response.
@@ -5877,8 +6096,6 @@ module Aws::S3
5877
6096
  #
5878
6097
  # This action is not supported by Amazon S3 on Outposts.
5879
6098
  #
5880
- # **Versioning**
5881
- #
5882
6099
  # By default, GET returns ACL information about the current version of
5883
6100
  # an object. To return ACL information about a different version, use
5884
6101
  # the versionId subresource.
@@ -6043,9 +6260,7 @@ module Aws::S3
6043
6260
  # object's metadata. To use `GetObjectAttributes`, you must have READ
6044
6261
  # access to the object.
6045
6262
  #
6046
- # `GetObjectAttributes` combines the functionality of `GetObjectAcl`,
6047
- # `GetObjectLegalHold`, `GetObjectLockConfiguration`,
6048
- # `GetObjectRetention`, `GetObjectTagging`, `HeadObject`, and
6263
+ # `GetObjectAttributes` combines the functionality of `HeadObject` and
6049
6264
  # `ListParts`. All of the data returned with each of those individual
6050
6265
  # calls can be returned with a single call to `GetObjectAttributes`.
6051
6266
  #
@@ -6067,9 +6282,8 @@ module Aws::S3
6067
6282
  # should not be sent for GET requests if your object uses server-side
6068
6283
  # encryption with Amazon Web Services KMS keys stored in Amazon Web
6069
6284
  # Services Key Management Service (SSE-KMS) or server-side encryption
6070
- # with Amazon S3 managed encryption keys (SSE-S3). If your object does
6071
- # use these types of keys, you'll get an HTTP `400 Bad Request`
6072
- # error.
6285
+ # with Amazon S3 managed keys (SSE-S3). If your object does use these
6286
+ # types of keys, you'll get an HTTP `400 Bad Request` error.
6073
6287
  #
6074
6288
  # * The last modified property in this case is the creation date of the
6075
6289
  # object.
@@ -6096,23 +6310,26 @@ module Aws::S3
6096
6310
  #
6097
6311
  # For more information about conditional requests, see [RFC 7232][2].
6098
6312
  #
6099
- # **Permissions**
6313
+ # Permissions
6100
6314
  #
6101
- # The permissions that you need to use this operation depend on whether
6102
- # the bucket is versioned. If the bucket is versioned, you need both the
6103
- # `s3:GetObjectVersion` and `s3:GetObjectVersionAttributes` permissions
6104
- # for this operation. If the bucket is not versioned, you need the
6105
- # `s3:GetObject` and `s3:GetObjectAttributes` permissions. For more
6106
- # information, see [Specifying Permissions in a Policy][3] in the
6107
- # *Amazon S3 User Guide*. If the object that you request does not exist,
6108
- # the error Amazon S3 returns depends on whether you also have the
6109
- # `s3:ListBucket` permission.
6315
+ # : The permissions that you need to use this operation depend on
6316
+ # whether the bucket is versioned. If the bucket is versioned, you
6317
+ # need both the `s3:GetObjectVersion` and
6318
+ # `s3:GetObjectVersionAttributes` permissions for this operation. If
6319
+ # the bucket is not versioned, you need the `s3:GetObject` and
6320
+ # `s3:GetObjectAttributes` permissions. For more information, see
6321
+ # [Specifying Permissions in a Policy][3] in the *Amazon S3 User
6322
+ # Guide*. If the object that you request does not exist, the error
6323
+ # Amazon S3 returns depends on whether you also have the
6324
+ # `s3:ListBucket` permission.
6110
6325
  #
6111
- # * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
6112
- # returns an HTTP status code `404 Not Found` ("no such key") error.
6326
+ # * If you have the `s3:ListBucket` permission on the bucket, Amazon
6327
+ # S3 returns an HTTP status code `404 Not Found` ("no such key")
6328
+ # error.
6113
6329
  #
6114
- # * If you don't have the `s3:ListBucket` permission, Amazon S3 returns
6115
- # an HTTP status code `403 Forbidden` ("access denied") error.
6330
+ # * If you don't have the `s3:ListBucket` permission, Amazon S3
6331
+ # returns an HTTP status code `403 Forbidden` ("access denied")
6332
+ # error.
6116
6333
  #
6117
6334
  # The following actions are related to `GetObjectAttributes`:
6118
6335
  #
@@ -6157,14 +6374,14 @@ module Aws::S3
6157
6374
  # name. For more information about access point ARNs, see [Using access
6158
6375
  # points][1] in the *Amazon S3 User Guide*.
6159
6376
  #
6160
- # When using this action with Amazon S3 on Outposts, you must direct
6377
+ # When you use this action with Amazon S3 on Outposts, you must direct
6161
6378
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6162
6379
  # takes the form `
6163
6380
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
6164
- # When using this action with S3 on Outposts through the Amazon Web
6165
- # Services SDKs, you provide the Outposts bucket ARN in place of the
6166
- # bucket name. For more information about S3 on Outposts ARNs, see
6167
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
6381
+ # When you use this action with S3 on Outposts through the Amazon Web
6382
+ # Services SDKs, you provide the Outposts access point ARN in place of
6383
+ # the bucket name. For more information about S3 on Outposts ARNs, see
6384
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
6168
6385
  #
6169
6386
  #
6170
6387
  #
@@ -6557,14 +6774,14 @@ module Aws::S3
6557
6774
  # name. For more information about access point ARNs, see [Using access
6558
6775
  # points][1] in the *Amazon S3 User Guide*.
6559
6776
  #
6560
- # When using this action with Amazon S3 on Outposts, you must direct
6777
+ # When you use this action with Amazon S3 on Outposts, you must direct
6561
6778
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6562
6779
  # takes the form `
6563
6780
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
6564
- # When using this action with S3 on Outposts through the Amazon Web
6565
- # Services SDKs, you provide the Outposts bucket ARN in place of the
6566
- # bucket name. For more information about S3 on Outposts ARNs, see
6567
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
6781
+ # When you use this action with S3 on Outposts through the Amazon Web
6782
+ # Services SDKs, you provide the Outposts access point ARN in place of
6783
+ # the bucket name. For more information about S3 on Outposts ARNs, see
6784
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
6568
6785
  #
6569
6786
  #
6570
6787
  #
@@ -6671,8 +6888,7 @@ module Aws::S3
6671
6888
  end
6672
6889
 
6673
6890
  # Returns torrent files from a bucket. BitTorrent can save you bandwidth
6674
- # when you're distributing large files. For more information about
6675
- # BitTorrent, see [Using BitTorrent with Amazon S3][1].
6891
+ # when you're distributing large files.
6676
6892
  #
6677
6893
  # <note markdown="1"> You can get torrent only for objects that are less than 5 GB in size,
6678
6894
  # and that are not encrypted using server-side encryption with a
@@ -6686,14 +6902,13 @@ module Aws::S3
6686
6902
  #
6687
6903
  # The following action is related to `GetObjectTorrent`:
6688
6904
  #
6689
- # * [GetObject][2]
6905
+ # * [GetObject][1]
6690
6906
  #
6691
6907
  # ^
6692
6908
  #
6693
6909
  #
6694
6910
  #
6695
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html
6696
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
6911
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
6697
6912
  #
6698
6913
  # @option params [String, IO] :response_target
6699
6914
  # Where to write response data, file path, or IO object.
@@ -6839,9 +7054,9 @@ module Aws::S3
6839
7054
  # exists and you have permission to access it.
6840
7055
  #
6841
7056
  # If the bucket does not exist or you do not have permission to access
6842
- # it, the `HEAD` request returns a generic `404 Not Found` or `403
6843
- # Forbidden` code. A message body is not included, so you cannot
6844
- # determine the exception beyond these error codes.
7057
+ # it, the `HEAD` request returns a generic `400 Bad Request`, `403
7058
+ # Forbidden` or `404 Not Found` code. A message body is not included, so
7059
+ # you cannot determine the exception beyond these error codes.
6845
7060
  #
6846
7061
  # To use this operation, you must have permissions to perform the
6847
7062
  # `s3:ListBucket` action. The bucket owner has this permission by
@@ -6850,19 +7065,29 @@ module Aws::S3
6850
7065
  # Operations][1] and [Managing Access Permissions to Your Amazon S3
6851
7066
  # Resources][2].
6852
7067
  #
6853
- # To use this API against an access point, you must provide the alias of
6854
- # the access point in place of the bucket name or specify the access
6855
- # point ARN. When using the access point ARN, you must direct requests
6856
- # to the access point hostname. The access point hostname takes the form
6857
- # AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When
6858
- # using the Amazon Web Services SDKs, you provide the ARN in place of
6859
- # the bucket name. For more information see, [Using access points][3].
7068
+ # To use this API operation against an access point, you must provide
7069
+ # the alias of the access point in place of the bucket name or specify
7070
+ # the access point ARN. When using the access point ARN, you must direct
7071
+ # requests to the access point hostname. The access point hostname takes
7072
+ # the form
7073
+ # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7074
+ # When using the Amazon Web Services SDKs, you provide the ARN in place
7075
+ # of the bucket name. For more information, see [Using access
7076
+ # points][3].
7077
+ #
7078
+ # To use this API operation against an Object Lambda access point,
7079
+ # provide the alias of the Object Lambda access point in place of the
7080
+ # bucket name. If the Object Lambda access point alias in a request is
7081
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
7082
+ # For more information about `InvalidAccessPointAliasError`, see [List
7083
+ # of Error Codes][4].
6860
7084
  #
6861
7085
  #
6862
7086
  #
6863
7087
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
6864
7088
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
6865
7089
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
7090
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
6866
7091
  #
6867
7092
  # @option params [required, String] :bucket
6868
7093
  # The bucket name.
@@ -6875,19 +7100,27 @@ module Aws::S3
6875
7100
  # name. For more information about access point ARNs, see [Using access
6876
7101
  # points][1] in the *Amazon S3 User Guide*.
6877
7102
  #
6878
- # When using this action with Amazon S3 on Outposts, you must direct
7103
+ # When you use this action with an Object Lambda access point, provide
7104
+ # the alias of the Object Lambda access point in place of the bucket
7105
+ # name. If the Object Lambda access point alias in a request is not
7106
+ # valid, the error code `InvalidAccessPointAliasError` is returned. For
7107
+ # more information about `InvalidAccessPointAliasError`, see [List of
7108
+ # Error Codes][2].
7109
+ #
7110
+ # When you use this action with Amazon S3 on Outposts, you must direct
6879
7111
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6880
7112
  # takes the form `
6881
7113
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
6882
- # When using this action with S3 on Outposts through the Amazon Web
6883
- # Services SDKs, you provide the Outposts bucket ARN in place of the
6884
- # bucket name. For more information about S3 on Outposts ARNs, see
6885
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
7114
+ # When you use this action with S3 on Outposts through the Amazon Web
7115
+ # Services SDKs, you provide the Outposts access point ARN in place of
7116
+ # the bucket name. For more information about S3 on Outposts ARNs, see
7117
+ # [What is S3 on Outposts][3] in the *Amazon S3 User Guide*.
6886
7118
  #
6887
7119
  #
6888
7120
  #
6889
7121
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
6890
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
7122
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
7123
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
6891
7124
  #
6892
7125
  # @option params [String] :expected_bucket_owner
6893
7126
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -6935,9 +7168,9 @@ module Aws::S3
6935
7168
  # A `HEAD` request has the same options as a `GET` action on an object.
6936
7169
  # The response is identical to the `GET` response except that there is
6937
7170
  # no response body. Because of this, if the `HEAD` request generates an
6938
- # error, it returns a generic `404 Not Found` or `403 Forbidden` code.
6939
- # It is not possible to retrieve the exact exception beyond these error
6940
- # codes.
7171
+ # error, it returns a generic `400 Bad Request`, `403 Forbidden` or `404
7172
+ # Not Found` code. It is not possible to retrieve the exact exception
7173
+ # beyond these error codes.
6941
7174
  #
6942
7175
  # If you encrypt an object by using server-side encryption with
6943
7176
  # customer-provided encryption keys (SSE-C) when you store the object in
@@ -6989,19 +7222,19 @@ module Aws::S3
6989
7222
  #
6990
7223
  # For more information about conditional requests, see [RFC 7232][3].
6991
7224
  #
6992
- # **Permissions**
7225
+ # Permissions
6993
7226
  #
6994
- # You need the relevant read object (or version) permission for this
6995
- # operation. For more information, see [Specifying Permissions in a
6996
- # Policy][4]. If the object you request does not exist, the error Amazon
6997
- # S3 returns depends on whether you also have the s3:ListBucket
6998
- # permission.
7227
+ # : You need the relevant read object (or version) permission for this
7228
+ # operation. For more information, see [Actions, resources, and
7229
+ # condition keys for Amazon S3][4]. If the object you request does not
7230
+ # exist, the error Amazon S3 returns depends on whether you also have
7231
+ # the s3:ListBucket permission.
6999
7232
  #
7000
- # * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
7001
- # returns an HTTP status code 404 ("no such key") error.
7233
+ # * If you have the `s3:ListBucket` permission on the bucket, Amazon
7234
+ # S3 returns an HTTP status code 404 ("no such key") error.
7002
7235
  #
7003
- # * If you don’t have the `s3:ListBucket` permission, Amazon S3 returns
7004
- # an HTTP status code 403 ("access denied") error.
7236
+ # * If you don’t have the `s3:ListBucket` permission, Amazon S3
7237
+ # returns an HTTP status code 403 ("access denied") error.
7005
7238
  #
7006
7239
  # The following actions are related to `HeadObject`:
7007
7240
  #
@@ -7014,7 +7247,7 @@ module Aws::S3
7014
7247
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
7015
7248
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html
7016
7249
  # [3]: https://tools.ietf.org/html/rfc7232
7017
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
7250
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html
7018
7251
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
7019
7252
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
7020
7253
  #
@@ -7029,14 +7262,14 @@ module Aws::S3
7029
7262
  # name. For more information about access point ARNs, see [Using access
7030
7263
  # points][1] in the *Amazon S3 User Guide*.
7031
7264
  #
7032
- # When using this action with Amazon S3 on Outposts, you must direct
7265
+ # When you use this action with Amazon S3 on Outposts, you must direct
7033
7266
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
7034
7267
  # takes the form `
7035
7268
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
7036
- # When using this action with S3 on Outposts through the Amazon Web
7037
- # Services SDKs, you provide the Outposts bucket ARN in place of the
7038
- # bucket name. For more information about S3 on Outposts ARNs, see
7039
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
7269
+ # When you use this action with S3 on Outposts through the Amazon Web
7270
+ # Services SDKs, you provide the Outposts access point ARN in place of
7271
+ # the bucket name. For more information about S3 on Outposts ARNs, see
7272
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
7040
7273
  #
7041
7274
  #
7042
7275
  #
@@ -7063,8 +7296,10 @@ module Aws::S3
7063
7296
  # The object key.
7064
7297
  #
7065
7298
  # @option params [String] :range
7066
- # Because `HeadObject` returns only the metadata for an object, this
7067
- # parameter has no effect.
7299
+ # HeadObject returns only the metadata for an object. If the Range is
7300
+ # satisfiable, only the `ContentLength` is affected in the response. If
7301
+ # the Range is not satisfiable, S3 returns a `416 - Requested Range Not
7302
+ # Satisfiable` error.
7068
7303
  #
7069
7304
  # @option params [String] :version_id
7070
7305
  # VersionId used to reference a specific version of the object.
@@ -7634,17 +7869,22 @@ module Aws::S3
7634
7869
  # request. To use this operation, you must have the
7635
7870
  # `s3:ListAllMyBuckets` permission.
7636
7871
  #
7872
+ # For information about Amazon S3 buckets, see [Creating, configuring,
7873
+ # and working with Amazon S3 buckets][1].
7874
+ #
7875
+ #
7876
+ #
7877
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html
7878
+ #
7637
7879
  # @return [Types::ListBucketsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7638
7880
  #
7639
7881
  # * {Types::ListBucketsOutput#buckets #buckets} => Array&lt;Types::Bucket&gt;
7640
7882
  # * {Types::ListBucketsOutput#owner #owner} => Types::Owner
7641
7883
  #
7642
7884
  #
7643
- # @example Example: To list object versions
7885
+ # @example Example: To list all buckets
7644
7886
  #
7645
- # # The following example return versions of an object with specific key name prefix. The request limits the number of items
7646
- # # returned to two. If there are are more than two object version, S3 returns NextToken in the response. You can specify
7647
- # # this token value in your next request to fetch next set of object versions.
7887
+ # # The following example returns all the buckets owned by the sender of this request.
7648
7888
  #
7649
7889
  # resp = client.list_buckets({
7650
7890
  # })
@@ -7653,15 +7893,15 @@ module Aws::S3
7653
7893
  # {
7654
7894
  # buckets: [
7655
7895
  # {
7656
- # creation_date: Time.parse("2012-02-15T21: 03: 02.000Z"),
7896
+ # creation_date: Time.parse("2012-02-15T21:03:02.000Z"),
7657
7897
  # name: "examplebucket",
7658
7898
  # },
7659
7899
  # {
7660
- # creation_date: Time.parse("2011-07-24T19: 33: 50.000Z"),
7900
+ # creation_date: Time.parse("2011-07-24T19:33:50.000Z"),
7661
7901
  # name: "examplebucket2",
7662
7902
  # },
7663
7903
  # {
7664
- # creation_date: Time.parse("2010-12-17T00: 56: 49.000Z"),
7904
+ # creation_date: Time.parse("2010-12-17T00:56:49.000Z"),
7665
7905
  # name: "examplebucket3",
7666
7906
  # },
7667
7907
  # ],
@@ -7747,14 +7987,14 @@ module Aws::S3
7747
7987
  # name. For more information about access point ARNs, see [Using access
7748
7988
  # points][1] in the *Amazon S3 User Guide*.
7749
7989
  #
7750
- # When using this action with Amazon S3 on Outposts, you must direct
7990
+ # When you use this action with Amazon S3 on Outposts, you must direct
7751
7991
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
7752
7992
  # takes the form `
7753
7993
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
7754
- # When using this action with S3 on Outposts through the Amazon Web
7755
- # Services SDKs, you provide the Outposts bucket ARN in place of the
7756
- # bucket name. For more information about S3 on Outposts ARNs, see
7757
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
7994
+ # When you use this action with S3 on Outposts through the Amazon Web
7995
+ # Services SDKs, you provide the Outposts access point ARN in place of
7996
+ # the bucket name. For more information about S3 on Outposts ARNs, see
7997
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
7758
7998
  #
7759
7999
  #
7760
8000
  #
@@ -8215,14 +8455,14 @@ module Aws::S3
8215
8455
  # name. For more information about access point ARNs, see [Using access
8216
8456
  # points][1] in the *Amazon S3 User Guide*.
8217
8457
  #
8218
- # When using this action with Amazon S3 on Outposts, you must direct
8458
+ # When you use this action with Amazon S3 on Outposts, you must direct
8219
8459
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
8220
8460
  # takes the form `
8221
8461
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8222
- # When using this action with S3 on Outposts through the Amazon Web
8223
- # Services SDKs, you provide the Outposts bucket ARN in place of the
8224
- # bucket name. For more information about S3 on Outposts ARNs, see
8225
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
8462
+ # When you use this action with S3 on Outposts through the Amazon Web
8463
+ # Services SDKs, you provide the Outposts access point ARN in place of
8464
+ # the bucket name. For more information about S3 on Outposts ARNs, see
8465
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
8226
8466
  #
8227
8467
  #
8228
8468
  #
@@ -8417,14 +8657,14 @@ module Aws::S3
8417
8657
  # name. For more information about access point ARNs, see [Using access
8418
8658
  # points][1] in the *Amazon S3 User Guide*.
8419
8659
  #
8420
- # When using this action with Amazon S3 on Outposts, you must direct
8660
+ # When you use this action with Amazon S3 on Outposts, you must direct
8421
8661
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
8422
8662
  # takes the form `
8423
8663
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8424
- # When using this action with S3 on Outposts through the Amazon Web
8425
- # Services SDKs, you provide the Outposts bucket ARN in place of the
8426
- # bucket name. For more information about S3 on Outposts ARNs, see
8427
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
8664
+ # When you use this action with S3 on Outposts through the Amazon Web
8665
+ # Services SDKs, you provide the Outposts access point ARN in place of
8666
+ # the bucket name. For more information about S3 on Outposts ARNs, see
8667
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
8428
8668
  #
8429
8669
  #
8430
8670
  #
@@ -8494,7 +8734,7 @@ module Aws::S3
8494
8734
  # # keys.
8495
8735
  #
8496
8736
  # resp = client.list_objects_v2({
8497
- # bucket: "examplebucket",
8737
+ # bucket: "DOC-EXAMPLE-BUCKET",
8498
8738
  # max_keys: 2,
8499
8739
  # })
8500
8740
  #
@@ -8519,7 +8759,7 @@ module Aws::S3
8519
8759
  # is_truncated: true,
8520
8760
  # key_count: 2,
8521
8761
  # max_keys: 2,
8522
- # name: "examplebucket",
8762
+ # name: "DOC-EXAMPLE-BUCKET",
8523
8763
  # next_continuation_token: "1w41l63U0xa8q7smH50vCxyTQqdxo69O3EmK28Bi5PcROI4wI/EyIJg==",
8524
8764
  # prefix: "",
8525
8765
  # }
@@ -8632,14 +8872,14 @@ module Aws::S3
8632
8872
  # name. For more information about access point ARNs, see [Using access
8633
8873
  # points][1] in the *Amazon S3 User Guide*.
8634
8874
  #
8635
- # When using this action with Amazon S3 on Outposts, you must direct
8875
+ # When you use this action with Amazon S3 on Outposts, you must direct
8636
8876
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
8637
8877
  # takes the form `
8638
8878
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
8639
- # When using this action with S3 on Outposts through the Amazon Web
8640
- # Services SDKs, you provide the Outposts bucket ARN in place of the
8641
- # bucket name. For more information about S3 on Outposts ARNs, see
8642
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
8879
+ # When you use this action with S3 on Outposts through the Amazon Web
8880
+ # Services SDKs, you provide the Outposts access point ARN in place of
8881
+ # the bucket name. For more information about S3 on Outposts ARNs, see
8882
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
8643
8883
  #
8644
8884
  #
8645
8885
  #
@@ -8940,127 +9180,128 @@ module Aws::S3
8940
9180
  # still supported. For more information, see [Controlling object
8941
9181
  # ownership][2] in the *Amazon S3 User Guide*.
8942
9182
  #
8943
- # **Access Permissions**
9183
+ # Permissions
8944
9184
  #
8945
- # You can set access permissions using one of the following methods:
9185
+ # : You can set access permissions using one of the following methods:
8946
9186
  #
8947
- # * Specify a canned ACL with the `x-amz-acl` request header. Amazon S3
8948
- # supports a set of predefined ACLs, known as *canned ACLs*. Each
8949
- # canned ACL has a predefined set of grantees and permissions. Specify
8950
- # the canned ACL name as the value of `x-amz-acl`. If you use this
8951
- # header, you cannot use other access control-specific headers in your
8952
- # request. For more information, see [Canned ACL][3].
9187
+ # * Specify a canned ACL with the `x-amz-acl` request header. Amazon
9188
+ # S3 supports a set of predefined ACLs, known as *canned ACLs*. Each
9189
+ # canned ACL has a predefined set of grantees and permissions.
9190
+ # Specify the canned ACL name as the value of `x-amz-acl`. If you
9191
+ # use this header, you cannot use other access control-specific
9192
+ # headers in your request. For more information, see [Canned
9193
+ # ACL][3].
8953
9194
  #
8954
- # * Specify access permissions explicitly with the `x-amz-grant-read`,
8955
- # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
8956
- # `x-amz-grant-full-control` headers. When using these headers, you
8957
- # specify explicit access permissions and grantees (Amazon Web
8958
- # Services accounts or Amazon S3 groups) who will receive the
8959
- # permission. If you use these ACL-specific headers, you cannot use
8960
- # the `x-amz-acl` header to set a canned ACL. These parameters map to
8961
- # the set of permissions that Amazon S3 supports in an ACL. For more
8962
- # information, see [Access Control List (ACL) Overview][4].
9195
+ # * Specify access permissions explicitly with the `x-amz-grant-read`,
9196
+ # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
9197
+ # `x-amz-grant-full-control` headers. When using these headers, you
9198
+ # specify explicit access permissions and grantees (Amazon Web
9199
+ # Services accounts or Amazon S3 groups) who will receive the
9200
+ # permission. If you use these ACL-specific headers, you cannot use
9201
+ # the `x-amz-acl` header to set a canned ACL. These parameters map
9202
+ # to the set of permissions that Amazon S3 supports in an ACL. For
9203
+ # more information, see [Access Control List (ACL) Overview][4].
8963
9204
  #
8964
- # You specify each grantee as a type=value pair, where the type is one
8965
- # of the following:
9205
+ # You specify each grantee as a type=value pair, where the type is
9206
+ # one of the following:
8966
9207
  #
8967
- # * `id` – if the value specified is the canonical user ID of an
8968
- # Amazon Web Services account
9208
+ # * `id` – if the value specified is the canonical user ID of an
9209
+ # Amazon Web Services account
8969
9210
  #
8970
- # * `uri` – if you are granting permissions to a predefined group
9211
+ # * `uri` – if you are granting permissions to a predefined group
8971
9212
  #
8972
- # * `emailAddress` – if the value specified is the email address of an
8973
- # Amazon Web Services account
9213
+ # * `emailAddress` – if the value specified is the email address of
9214
+ # an Amazon Web Services account
8974
9215
  #
8975
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in
8976
- # the following Amazon Web Services Regions:
9216
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
9217
+ # the following Amazon Web Services Regions:
8977
9218
  #
8978
- # * US East (N. Virginia)
9219
+ # * US East (N. Virginia)
8979
9220
  #
8980
- # * US West (N. California)
9221
+ # * US West (N. California)
8981
9222
  #
8982
- # * US West (Oregon)
9223
+ # * US West (Oregon)
8983
9224
  #
8984
- # * Asia Pacific (Singapore)
9225
+ # * Asia Pacific (Singapore)
8985
9226
  #
8986
- # * Asia Pacific (Sydney)
9227
+ # * Asia Pacific (Sydney)
8987
9228
  #
8988
- # * Asia Pacific (Tokyo)
9229
+ # * Asia Pacific (Tokyo)
8989
9230
  #
8990
- # * Europe (Ireland)
9231
+ # * Europe (Ireland)
8991
9232
  #
8992
- # * South America (São Paulo)
9233
+ # * South America (São Paulo)
8993
9234
  #
8994
- # For a list of all the Amazon S3 supported Regions and endpoints,
8995
- # see [Regions and Endpoints][5] in the Amazon Web Services General
8996
- # Reference.
9235
+ # For a list of all the Amazon S3 supported Regions and endpoints,
9236
+ # see [Regions and Endpoints][5] in the Amazon Web Services
9237
+ # General Reference.
8997
9238
  #
8998
- # </note>
9239
+ # </note>
8999
9240
  #
9000
- # For example, the following `x-amz-grant-write` header grants create,
9001
- # overwrite, and delete objects permission to LogDelivery group
9002
- # predefined by Amazon S3 and two Amazon Web Services accounts
9003
- # identified by their email addresses.
9241
+ # For example, the following `x-amz-grant-write` header grants
9242
+ # create, overwrite, and delete objects permission to LogDelivery
9243
+ # group predefined by Amazon S3 and two Amazon Web Services accounts
9244
+ # identified by their email addresses.
9004
9245
  #
9005
- # `x-amz-grant-write:
9006
- # uri="http://acs.amazonaws.com/groups/s3/LogDelivery",
9007
- # id="111122223333", id="555566667777" `
9246
+ # `x-amz-grant-write:
9247
+ # uri="http://acs.amazonaws.com/groups/s3/LogDelivery",
9248
+ # id="111122223333", id="555566667777" `
9008
9249
  #
9009
- # You can use either a canned ACL or specify access permissions
9010
- # explicitly. You cannot do both.
9250
+ # You can use either a canned ACL or specify access permissions
9251
+ # explicitly. You cannot do both.
9011
9252
  #
9012
- # **Grantee Values**
9253
+ # Grantee Values
9013
9254
  #
9014
- # You can specify the person (grantee) to whom you're assigning access
9015
- # rights (using request elements) in the following ways:
9255
+ # : You can specify the person (grantee) to whom you're assigning
9256
+ # access rights (using request elements) in the following ways:
9016
9257
  #
9017
- # * By the person's ID:
9258
+ # * By the person's ID:
9018
9259
  #
9019
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9020
- # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
9021
- # </Grantee>`
9260
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9261
+ # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
9262
+ # </Grantee>`
9022
9263
  #
9023
- # DisplayName is optional and ignored in the request
9264
+ # DisplayName is optional and ignored in the request
9024
9265
  #
9025
- # * By URI:
9266
+ # * By URI:
9026
9267
  #
9027
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9028
- # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
9268
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9269
+ # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
9029
9270
  #
9030
- # * By Email address:
9271
+ # * By Email address:
9031
9272
  #
9032
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9033
- # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress>lt;/Grantee>`
9273
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9274
+ # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress>&</Grantee>`
9034
9275
  #
9035
- # The grantee is resolved to the CanonicalUser and, in a response to a
9036
- # GET Object acl request, appears as the CanonicalUser.
9276
+ # The grantee is resolved to the CanonicalUser and, in a response to
9277
+ # a GET Object acl request, appears as the CanonicalUser.
9037
9278
  #
9038
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in the
9039
- # following Amazon Web Services Regions:
9279
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
9280
+ # the following Amazon Web Services Regions:
9040
9281
  #
9041
- # * US East (N. Virginia)
9282
+ # * US East (N. Virginia)
9042
9283
  #
9043
- # * US West (N. California)
9284
+ # * US West (N. California)
9044
9285
  #
9045
- # * US West (Oregon)
9286
+ # * US West (Oregon)
9046
9287
  #
9047
- # * Asia Pacific (Singapore)
9288
+ # * Asia Pacific (Singapore)
9048
9289
  #
9049
- # * Asia Pacific (Sydney)
9290
+ # * Asia Pacific (Sydney)
9050
9291
  #
9051
- # * Asia Pacific (Tokyo)
9292
+ # * Asia Pacific (Tokyo)
9052
9293
  #
9053
- # * Europe (Ireland)
9294
+ # * Europe (Ireland)
9054
9295
  #
9055
- # * South America (São Paulo)
9296
+ # * South America (São Paulo)
9056
9297
  #
9057
- # For a list of all the Amazon S3 supported Regions and endpoints, see
9058
- # [Regions and Endpoints][5] in the Amazon Web Services General
9059
- # Reference.
9298
+ # For a list of all the Amazon S3 supported Regions and endpoints,
9299
+ # see [Regions and Endpoints][5] in the Amazon Web Services General
9300
+ # Reference.
9060
9301
  #
9061
- # </note>
9302
+ # </note>
9062
9303
  #
9063
- # **Related Resources**
9304
+ # The following operations are related to `PutBucketAcl`:
9064
9305
  #
9065
9306
  # * [CreateBucket][6]
9066
9307
  #
@@ -9226,7 +9467,7 @@ module Aws::S3
9226
9467
  # Related to Bucket Subresource Operations][3] and [Managing Access
9227
9468
  # Permissions to Your Amazon S3 Resources][4].
9228
9469
  #
9229
- # **Special Errors**
9470
+ # `PutBucketAnalyticsConfiguration` has the following special errors:
9230
9471
  #
9231
9472
  # * * *HTTP Error: HTTP 400 Bad Request*
9232
9473
  #
@@ -9249,7 +9490,8 @@ module Aws::S3
9249
9490
  # not have the s3:PutAnalyticsConfiguration bucket permission to set
9250
9491
  # the configuration on the bucket.*
9251
9492
  #
9252
- # **Related Resources**
9493
+ # The following operations are related to
9494
+ # `PutBucketAnalyticsConfiguration`:
9253
9495
  #
9254
9496
  # * [GetBucketAnalyticsConfiguration][5]
9255
9497
  #
@@ -9370,7 +9612,7 @@ module Aws::S3
9370
9612
  # For more information about CORS, go to [Enabling Cross-Origin Resource
9371
9613
  # Sharing][1] in the *Amazon S3 User Guide*.
9372
9614
  #
9373
- # **Related Resources**
9615
+ # The following operations are related to `PutBucketCors`:
9374
9616
  #
9375
9617
  # * [GetBucketCors][2]
9376
9618
  #
@@ -9508,18 +9750,18 @@ module Aws::S3
9508
9750
  end
9509
9751
 
9510
9752
  # This action uses the `encryption` subresource to configure default
9511
- # encryption and Amazon S3 Bucket Key for an existing bucket.
9512
- #
9513
- # Default encryption for a bucket can use server-side encryption with
9514
- # Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). If
9515
- # you specify default encryption using SSE-KMS, you can also configure
9516
- # Amazon S3 Bucket Key. When the default encryption is SSE-KMS, if you
9517
- # upload an object to the bucket and do not specify the KMS key to use
9518
- # for encryption, Amazon S3 uses the default Amazon Web Services managed
9519
- # KMS key for your account. For information about default encryption,
9520
- # see [Amazon S3 default bucket encryption][1] in the *Amazon S3 User
9521
- # Guide*. For more information about S3 Bucket Keys, see [Amazon S3
9522
- # Bucket Keys][2] in the *Amazon S3 User Guide*.
9753
+ # encryption and Amazon S3 Bucket Keys for an existing bucket.
9754
+ #
9755
+ # By default, all buckets have a default encryption configuration that
9756
+ # uses server-side encryption with Amazon S3 managed keys (SSE-S3). You
9757
+ # can optionally configure default encryption for a bucket by using
9758
+ # server-side encryption with an Amazon Web Services KMS key (SSE-KMS)
9759
+ # or a customer-provided key (SSE-C). If you specify default encryption
9760
+ # by using SSE-KMS, you can also configure Amazon S3 Bucket Keys. For
9761
+ # information about bucket default encryption, see [Amazon S3 bucket
9762
+ # default encryption][1] in the *Amazon S3 User Guide*. For more
9763
+ # information about S3 Bucket Keys, see [Amazon S3 Bucket Keys][2] in
9764
+ # the *Amazon S3 User Guide*.
9523
9765
  #
9524
9766
  # This action requires Amazon Web Services Signature Version 4. For more
9525
9767
  # information, see [ Authenticating Requests (Amazon Web Services
@@ -9530,10 +9772,10 @@ module Aws::S3
9530
9772
  # permission by default. The bucket owner can grant this permission to
9531
9773
  # others. For more information about permissions, see [Permissions
9532
9774
  # Related to Bucket Subresource Operations][4] and [Managing Access
9533
- # Permissions to Your Amazon S3 Resources][5] in the Amazon S3 User
9534
- # Guide.
9775
+ # Permissions to Your Amazon S3 Resources][5] in the *Amazon S3 User
9776
+ # Guide*.
9535
9777
  #
9536
- # **Related Resources**
9778
+ # The following operations are related to `PutBucketEncryption`:
9537
9779
  #
9538
9780
  # * [GetBucketEncryption][6]
9539
9781
  #
@@ -9551,10 +9793,13 @@ module Aws::S3
9551
9793
  #
9552
9794
  # @option params [required, String] :bucket
9553
9795
  # Specifies default encryption for a bucket using server-side encryption
9554
- # with Amazon S3-managed keys (SSE-S3) or customer managed keys
9555
- # (SSE-KMS). For information about the Amazon S3 default encryption
9556
- # feature, see [Amazon S3 Default Bucket Encryption][1] in the *Amazon
9557
- # S3 User Guide*.
9796
+ # with different key options. By default, all buckets have a default
9797
+ # encryption configuration that uses server-side encryption with Amazon
9798
+ # S3 managed keys (SSE-S3). You can optionally configure default
9799
+ # encryption for a bucket by using server-side encryption with an Amazon
9800
+ # Web Services KMS key (SSE-KMS) or a customer-provided key (SSE-C). For
9801
+ # information about the bucket default encryption feature, see [Amazon
9802
+ # S3 Bucket Default Encryption][1] in the *Amazon S3 User Guide*.
9558
9803
  #
9559
9804
  #
9560
9805
  #
@@ -9661,28 +9906,27 @@ module Aws::S3
9661
9906
  #
9662
9907
  # </note>
9663
9908
  #
9664
- # **Special Errors**
9909
+ # `PutBucketIntelligentTieringConfiguration` has the following special
9910
+ # errors:
9665
9911
  #
9666
- # * **HTTP 400 Bad Request Error**
9912
+ # HTTP 400 Bad Request Error
9667
9913
  #
9668
- # * *Code:* InvalidArgument
9914
+ # : *Code:* InvalidArgument
9669
9915
  #
9670
- # * *Cause:* Invalid Argument
9916
+ # *Cause:* Invalid Argument
9671
9917
  #
9672
- # * **HTTP 400 Bad Request Error**
9918
+ # HTTP 400 Bad Request Error
9673
9919
  #
9674
- # * *Code:* TooManyConfigurations
9920
+ # : *Code:* TooManyConfigurations
9675
9921
  #
9676
- # * *Cause:* You are attempting to create a new configuration but have
9677
- # already reached the 1,000-configuration limit.
9922
+ # *Cause:* You are attempting to create a new configuration but have
9923
+ # already reached the 1,000-configuration limit.
9678
9924
  #
9679
- # * **HTTP 403 Forbidden Error**
9925
+ # HTTP 403 Forbidden Error
9680
9926
  #
9681
- # * *Code:* AccessDenied
9682
- #
9683
- # * *Cause:* You are not the owner of the specified bucket, or you do
9684
- # not have the `s3:PutIntelligentTieringConfiguration` bucket
9685
- # permission to set the configuration on the bucket.
9927
+ # : *Cause:* You are not the owner of the specified bucket, or you do
9928
+ # not have the `s3:PutIntelligentTieringConfiguration` bucket
9929
+ # permission to set the configuration on the bucket.
9686
9930
  #
9687
9931
  #
9688
9932
  #
@@ -9768,53 +10012,69 @@ module Aws::S3
9768
10012
  # location. For an example policy, see [ Granting Permissions for Amazon
9769
10013
  # S3 Inventory and Storage Class Analysis][2].
9770
10014
  #
9771
- # To use this operation, you must have permissions to perform the
9772
- # `s3:PutInventoryConfiguration` action. The bucket owner has this
9773
- # permission by default and can grant this permission to others. For
9774
- # more information about permissions, see [Permissions Related to Bucket
9775
- # Subresource Operations][3] and [Managing Access Permissions to Your
9776
- # Amazon S3 Resources][4] in the Amazon S3 User Guide.
10015
+ # Permissions
9777
10016
  #
9778
- # **Special Errors**
10017
+ # : To use this operation, you must have permission to perform the
10018
+ # `s3:PutInventoryConfiguration` action. The bucket owner has this
10019
+ # permission by default and can grant this permission to others.
9779
10020
  #
9780
- # * **HTTP 400 Bad Request Error**
10021
+ # The `s3:PutInventoryConfiguration` permission allows a user to
10022
+ # create an [S3 Inventory][3] report that includes all object metadata
10023
+ # fields available and to specify the destination bucket to store the
10024
+ # inventory. A user with read access to objects in the destination
10025
+ # bucket can also access all object metadata fields that are available
10026
+ # in the inventory report.
9781
10027
  #
9782
- # * *Code:* InvalidArgument
10028
+ # To restrict access to an inventory report, see [Restricting access
10029
+ # to an Amazon S3 Inventory report][4] in the *Amazon S3 User Guide*.
10030
+ # For more information about the metadata fields available in S3
10031
+ # Inventory, see [Amazon S3 Inventory lists][5] in the *Amazon S3 User
10032
+ # Guide*. For more information about permissions, see [Permissions
10033
+ # related to bucket subresource operations][6] and [Identity and
10034
+ # access management in Amazon S3][7] in the *Amazon S3 User Guide*.
9783
10035
  #
9784
- # * *Cause:* Invalid Argument
10036
+ # `PutBucketInventoryConfiguration` has the following special errors:
9785
10037
  #
9786
- # * **HTTP 400 Bad Request Error**
10038
+ # HTTP 400 Bad Request Error
9787
10039
  #
9788
- # * *Code:* TooManyConfigurations
10040
+ # : *Code:* InvalidArgument
9789
10041
  #
9790
- # * *Cause:* You are attempting to create a new configuration but have
9791
- # already reached the 1,000-configuration limit.
10042
+ # *Cause:* Invalid Argument
9792
10043
  #
9793
- # * **HTTP 403 Forbidden Error**
10044
+ # HTTP 400 Bad Request Error
9794
10045
  #
9795
- # * *Code:* AccessDenied
10046
+ # : *Code:* TooManyConfigurations
9796
10047
  #
9797
- # * *Cause:* You are not the owner of the specified bucket, or you do
9798
- # not have the `s3:PutInventoryConfiguration` bucket permission to
9799
- # set the configuration on the bucket.
10048
+ # *Cause:* You are attempting to create a new configuration but have
10049
+ # already reached the 1,000-configuration limit.
9800
10050
  #
9801
- # **Related Resources**
10051
+ # HTTP 403 Forbidden Error
9802
10052
  #
9803
- # * [GetBucketInventoryConfiguration][5]
10053
+ # : *Cause:* You are not the owner of the specified bucket, or you do
10054
+ # not have the `s3:PutInventoryConfiguration` bucket permission to set
10055
+ # the configuration on the bucket.
9804
10056
  #
9805
- # * [DeleteBucketInventoryConfiguration][6]
10057
+ # The following operations are related to
10058
+ # `PutBucketInventoryConfiguration`:
10059
+ #
10060
+ # * [GetBucketInventoryConfiguration][8]
9806
10061
  #
9807
- # * [ListBucketInventoryConfigurations][7]
10062
+ # * [DeleteBucketInventoryConfiguration][9]
10063
+ #
10064
+ # * [ListBucketInventoryConfigurations][10]
9808
10065
  #
9809
10066
  #
9810
10067
  #
9811
10068
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html
9812
10069
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9
9813
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
9814
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
9815
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html
9816
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html
9817
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html
10070
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-inventory.html
10071
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html#example-bucket-policies-use-case-10
10072
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-inventory.html#storage-inventory-contents
10073
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
10074
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
10075
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html
10076
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html
10077
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html
9818
10078
  #
9819
10079
  # @option params [required, String] :bucket
9820
10080
  # The name of the bucket where the inventory configuration will be
@@ -9914,7 +10174,7 @@ module Aws::S3
9914
10174
  # STANDARD\_IA or ONEZONE\_IA, see [Examples of Lifecycle
9915
10175
  # Configuration][4].
9916
10176
  #
9917
- # **Related Resources**
10177
+ # The following operations are related to `PutBucketLifecycle`:
9918
10178
  #
9919
10179
  # * [GetBucketLifecycle][5](Deprecated)
9920
10180
  #
@@ -10041,56 +10301,58 @@ module Aws::S3
10041
10301
  #
10042
10302
  # </note>
10043
10303
  #
10044
- # **Rules**
10304
+ # Rules
10045
10305
  #
10046
- # You specify the lifecycle configuration in your request body. The
10047
- # lifecycle configuration is specified as XML consisting of one or more
10048
- # rules. An Amazon S3 Lifecycle configuration can have up to 1,000
10049
- # rules. This limit is not adjustable. Each rule consists of the
10050
- # following:
10306
+ # : You specify the lifecycle configuration in your request body. The
10307
+ # lifecycle configuration is specified as XML consisting of one or
10308
+ # more rules. An Amazon S3 Lifecycle configuration can have up to
10309
+ # 1,000 rules. This limit is not adjustable. Each rule consists of the
10310
+ # following:
10051
10311
  #
10052
- # * Filter identifying a subset of objects to which the rule applies.
10053
- # The filter can be based on a key name prefix, object tags, or a
10054
- # combination of both.
10312
+ # * Filter identifying a subset of objects to which the rule applies.
10313
+ # The filter can be based on a key name prefix, object tags, or a
10314
+ # combination of both.
10055
10315
  #
10056
- # * Status whether the rule is in effect.
10316
+ # * Status whether the rule is in effect.
10057
10317
  #
10058
- # * One or more lifecycle transition and expiration actions that you
10059
- # want Amazon S3 to perform on the objects identified by the filter.
10060
- # If the state of your bucket is versioning-enabled or
10061
- # versioning-suspended, you can have many versions of the same object
10062
- # (one current version and zero or more noncurrent versions). Amazon
10063
- # S3 provides predefined actions that you can specify for current and
10064
- # noncurrent object versions.
10318
+ # * One or more lifecycle transition and expiration actions that you
10319
+ # want Amazon S3 to perform on the objects identified by the filter.
10320
+ # If the state of your bucket is versioning-enabled or
10321
+ # versioning-suspended, you can have many versions of the same
10322
+ # object (one current version and zero or more noncurrent versions).
10323
+ # Amazon S3 provides predefined actions that you can specify for
10324
+ # current and noncurrent object versions.
10065
10325
  #
10066
- # For more information, see [Object Lifecycle Management][3] and
10067
- # [Lifecycle Configuration Elements][4].
10326
+ # For more information, see [Object Lifecycle Management][3] and
10327
+ # [Lifecycle Configuration Elements][4].
10068
10328
  #
10069
- # **Permissions**
10329
+ # Permissions
10070
10330
  #
10071
- # By default, all Amazon S3 resources are private, including buckets,
10072
- # objects, and related subresources (for example, lifecycle
10073
- # configuration and website configuration). Only the resource owner
10074
- # (that is, the Amazon Web Services account that created it) can access
10075
- # the resource. The resource owner can optionally grant access
10076
- # permissions to others by writing an access policy. For this operation,
10077
- # a user must get the `s3:PutLifecycleConfiguration` permission.
10331
+ # : By default, all Amazon S3 resources are private, including buckets,
10332
+ # objects, and related subresources (for example, lifecycle
10333
+ # configuration and website configuration). Only the resource owner
10334
+ # (that is, the Amazon Web Services account that created it) can
10335
+ # access the resource. The resource owner can optionally grant access
10336
+ # permissions to others by writing an access policy. For this
10337
+ # operation, a user must get the `s3:PutLifecycleConfiguration`
10338
+ # permission.
10078
10339
  #
10079
- # You can also explicitly deny permissions. Explicit deny also
10080
- # supersedes any other permissions. If you want to block users or
10081
- # accounts from removing or deleting objects from your bucket, you must
10082
- # deny them permissions for the following actions:
10340
+ # You can also explicitly deny permissions. Explicit deny also
10341
+ # supersedes any other permissions. If you want to block users or
10342
+ # accounts from removing or deleting objects from your bucket, you
10343
+ # must deny them permissions for the following actions:
10083
10344
  #
10084
- # * `s3:DeleteObject`
10345
+ # * `s3:DeleteObject`
10085
10346
  #
10086
- # * `s3:DeleteObjectVersion`
10347
+ # * `s3:DeleteObjectVersion`
10087
10348
  #
10088
- # * `s3:PutLifecycleConfiguration`
10349
+ # * `s3:PutLifecycleConfiguration`
10089
10350
  #
10090
- # For more information about permissions, see [Managing Access
10091
- # Permissions to Your Amazon S3 Resources][5].
10351
+ # For more information about permissions, see [Managing Access
10352
+ # Permissions to Your Amazon S3 Resources][5].
10092
10353
  #
10093
- # The following are related to `PutBucketLifecycleConfiguration`:
10354
+ # The following operations are related to
10355
+ # `PutBucketLifecycleConfiguration`:
10094
10356
  #
10095
10357
  # * [Examples of Lifecycle Configuration][6]
10096
10358
  #
@@ -10255,31 +10517,31 @@ module Aws::S3
10255
10517
  # using policies. For more information, see [Permissions for server
10256
10518
  # access log delivery][1] in the *Amazon S3 User Guide*.
10257
10519
  #
10258
- # **Grantee Values**
10520
+ # Grantee Values
10259
10521
  #
10260
- # You can specify the person (grantee) to whom you're assigning access
10261
- # rights (using request elements) in the following ways:
10522
+ # : You can specify the person (grantee) to whom you're assigning
10523
+ # access rights (using request elements) in the following ways:
10262
10524
  #
10263
- # * By the person's ID:
10525
+ # * By the person's ID:
10264
10526
  #
10265
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10266
- # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
10267
- # </Grantee>`
10527
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10528
+ # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
10529
+ # </Grantee>`
10268
10530
  #
10269
- # DisplayName is optional and ignored in the request.
10531
+ # DisplayName is optional and ignored in the request.
10270
10532
  #
10271
- # * By Email address:
10533
+ # * By Email address:
10272
10534
  #
10273
- # ` <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10274
- # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress></Grantee>`
10535
+ # ` <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10536
+ # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress></Grantee>`
10275
10537
  #
10276
- # The grantee is resolved to the CanonicalUser and, in a response to a
10277
- # GET Object acl request, appears as the CanonicalUser.
10538
+ # The grantee is resolved to the CanonicalUser and, in a response to
10539
+ # a GET Object acl request, appears as the CanonicalUser.
10278
10540
  #
10279
- # * By URI:
10541
+ # * By URI:
10280
10542
  #
10281
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10282
- # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
10543
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10544
+ # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
10283
10545
  #
10284
10546
  # To enable logging, you use LoggingEnabled and its children request
10285
10547
  # elements. To disable logging, you use an empty BucketLoggingStatus
@@ -10459,7 +10721,9 @@ module Aws::S3
10459
10721
  # The name of the bucket for which the metrics configuration is set.
10460
10722
  #
10461
10723
  # @option params [required, String] :id
10462
- # The ID used to identify the metrics configuration.
10724
+ # The ID used to identify the metrics configuration. The ID has a 64
10725
+ # character limit and can only contain letters, numbers, periods,
10726
+ # dashes, and underscores.
10463
10727
  #
10464
10728
  # @option params [required, Types::MetricsConfiguration] :metrics_configuration
10465
10729
  # Specifies the metrics configuration.
@@ -10642,8 +10906,6 @@ module Aws::S3
10642
10906
  #
10643
10907
  # </note>
10644
10908
  #
10645
- # **Responses**
10646
- #
10647
10909
  # If the configuration in the request body includes only one
10648
10910
  # `TopicConfiguration` specifying only the
10649
10911
  # `s3:ReducedRedundancyLostObject` event type, the response will also
@@ -10849,10 +11111,14 @@ module Aws::S3
10849
11111
  # you're not using an identity that belongs to the bucket owner's
10850
11112
  # account, Amazon S3 returns a `405 Method Not Allowed` error.
10851
11113
  #
10852
- # As a security precaution, the root user of the Amazon Web Services
10853
- # account that owns a bucket can always use this operation, even if the
10854
- # policy explicitly denies the root user the ability to perform this
10855
- # action.
11114
+ # To ensure that bucket owners don't inadvertently lock themselves out
11115
+ # of their own buckets, the root principal in a bucket owner's Amazon
11116
+ # Web Services account can perform the `GetBucketPolicy`,
11117
+ # `PutBucketPolicy`, and `DeleteBucketPolicy` API actions, even if their
11118
+ # bucket policy explicitly denies the root principal's access. Bucket
11119
+ # owner root principals can only be blocked from performing these API
11120
+ # actions by VPC endpoint policies and Amazon Web Services Organizations
11121
+ # policies.
10856
11122
  #
10857
11123
  # For more information, see [Bucket policy examples][1].
10858
11124
  #
@@ -10969,35 +11235,35 @@ module Aws::S3
10969
11235
  # For information about enabling versioning on a bucket, see [Using
10970
11236
  # Versioning][3].
10971
11237
  #
10972
- # **Handling Replication of Encrypted Objects**
11238
+ # Handling Replication of Encrypted Objects
10973
11239
  #
10974
- # By default, Amazon S3 doesn't replicate objects that are stored at
10975
- # rest using server-side encryption with KMS keys. To replicate Amazon
10976
- # Web Services KMS-encrypted objects, add the following:
10977
- # `SourceSelectionCriteria`, `SseKmsEncryptedObjects`, `Status`,
10978
- # `EncryptionConfiguration`, and `ReplicaKmsKeyID`. For information
10979
- # about replication configuration, see [Replicating Objects Created with
10980
- # SSE Using KMS keys][4].
11240
+ # : By default, Amazon S3 doesn't replicate objects that are stored at
11241
+ # rest using server-side encryption with KMS keys. To replicate Amazon
11242
+ # Web Services KMS-encrypted objects, add the following:
11243
+ # `SourceSelectionCriteria`, `SseKmsEncryptedObjects`, `Status`,
11244
+ # `EncryptionConfiguration`, and `ReplicaKmsKeyID`. For information
11245
+ # about replication configuration, see [Replicating Objects Created
11246
+ # with SSE Using KMS keys][4].
10981
11247
  #
10982
- # For information on `PutBucketReplication` errors, see [List of
10983
- # replication-related error codes][5]
11248
+ # For information on `PutBucketReplication` errors, see [List of
11249
+ # replication-related error codes][5]
10984
11250
  #
10985
- # **Permissions**
11251
+ # Permissions
10986
11252
  #
10987
- # To create a `PutBucketReplication` request, you must have
10988
- # `s3:PutReplicationConfiguration` permissions for the bucket.
11253
+ # : To create a `PutBucketReplication` request, you must have
11254
+ # `s3:PutReplicationConfiguration` permissions for the bucket.
10989
11255
  #
10990
- # By default, a resource owner, in this case the Amazon Web Services
10991
- # account that created the bucket, can perform this operation. The
10992
- # resource owner can also grant others permissions to perform the
10993
- # operation. For more information about permissions, see [Specifying
10994
- # Permissions in a Policy][6] and [Managing Access Permissions to Your
10995
- # Amazon S3 Resources][7].
11256
+ # By default, a resource owner, in this case the Amazon Web Services
11257
+ # account that created the bucket, can perform this operation. The
11258
+ # resource owner can also grant others permissions to perform the
11259
+ # operation. For more information about permissions, see [Specifying
11260
+ # Permissions in a Policy][6] and [Managing Access Permissions to Your
11261
+ # Amazon S3 Resources][7].
10996
11262
  #
10997
- # <note markdown="1"> To perform this operation, the user or role performing the action must
10998
- # have the [iam:PassRole][8] permission.
11263
+ # <note markdown="1"> To perform this operation, the user or role performing the action
11264
+ # must have the [iam:PassRole][8] permission.
10999
11265
  #
11000
- # </note>
11266
+ # </note>
11001
11267
  #
11002
11268
  # The following operations are related to `PutBucketReplication`:
11003
11269
  #
@@ -11446,16 +11712,16 @@ module Aws::S3
11446
11712
  # header and the `Status` and the `MfaDelete` request elements in a
11447
11713
  # request to set the versioning state of the bucket.
11448
11714
  #
11449
- # If you have an object expiration lifecycle policy in your
11715
+ # If you have an object expiration lifecycle configuration in your
11450
11716
  # non-versioned bucket and you want to maintain the same permanent
11451
11717
  # delete behavior when you enable versioning, you must add a noncurrent
11452
- # expiration policy. The noncurrent expiration lifecycle policy will
11453
- # manage the deletes of the noncurrent object versions in the
11718
+ # expiration policy. The noncurrent expiration lifecycle configuration
11719
+ # will manage the deletes of the noncurrent object versions in the
11454
11720
  # version-enabled bucket. (A version-enabled bucket maintains one
11455
11721
  # current and zero or more noncurrent object versions.) For more
11456
11722
  # information, see [Lifecycle and Versioning][2].
11457
11723
  #
11458
- # **Related Resources**
11724
+ # The following operations are related to `PutBucketVersioning`:
11459
11725
  #
11460
11726
  # * [CreateBucket][3]
11461
11727
  #
@@ -11734,14 +12000,18 @@ module Aws::S3
11734
12000
  # Adds an object to a bucket. You must have WRITE permissions on a
11735
12001
  # bucket to add an object to it.
11736
12002
  #
11737
- # Amazon S3 never adds partial objects; if you receive a success
11738
- # response, Amazon S3 added the entire object to the bucket.
12003
+ # <note markdown="1"> Amazon S3 never adds partial objects; if you receive a success
12004
+ # response, Amazon S3 added the entire object to the bucket. You cannot
12005
+ # use `PutObject` to only update a single piece of metadata for an
12006
+ # existing object. You must put the entire object with updated metadata
12007
+ # if you want to update some values.
12008
+ #
12009
+ # </note>
11739
12010
  #
11740
12011
  # Amazon S3 is a distributed system. If it receives multiple write
11741
12012
  # requests for the same object simultaneously, it overwrites all but the
11742
- # last object written. Amazon S3 does not provide object locking; if you
11743
- # need this, make sure to build it into your application layer or use
11744
- # versioning instead.
12013
+ # last object written. To prevent objects from being deleted or
12014
+ # overwritten, you can use [Amazon S3 Object Lock][1].
11745
12015
  #
11746
12016
  # To ensure that data is not corrupted traversing the network, use the
11747
12017
  # `Content-MD5` header. When you use this header, Amazon S3 checks the
@@ -11756,36 +12026,33 @@ module Aws::S3
11756
12026
  # * To successfully change the objects acl of your `PutObject` request,
11757
12027
  # you must have the `s3:PutObjectAcl` in your IAM permissions.
11758
12028
  #
12029
+ # * To successfully set the tag-set with your `PutObject` request, you
12030
+ # must have the `s3:PutObjectTagging` in your IAM permissions.
12031
+ #
11759
12032
  # * The `Content-MD5` header is required for any request to upload an
11760
12033
  # object with a retention period configured using Amazon S3 Object
11761
12034
  # Lock. For more information about Amazon S3 Object Lock, see [Amazon
11762
- # S3 Object Lock Overview][1] in the *Amazon S3 User Guide*.
12035
+ # S3 Object Lock Overview][2] in the *Amazon S3 User Guide*.
11763
12036
  #
11764
12037
  # </note>
11765
12038
  #
11766
- # **Server-side Encryption**
11767
- #
11768
- # You can optionally request server-side encryption. With server-side
11769
- # encryption, Amazon S3 encrypts your data as it writes it to disks in
11770
- # its data centers and decrypts the data when you access it. You have
11771
- # the option to provide your own encryption key or use Amazon Web
11772
- # Services managed encryption keys (SSE-S3 or SSE-KMS). For more
11773
- # information, see [Using Server-Side Encryption][2].
11774
- #
11775
- # If you request server-side encryption using Amazon Web Services Key
11776
- # Management Service (SSE-KMS), you can enable an S3 Bucket Key at the
11777
- # object-level. For more information, see [Amazon S3 Bucket Keys][3] in
11778
- # the *Amazon S3 User Guide*.
11779
- #
11780
- # **Access Control List (ACL)-Specific Request Headers**
11781
- #
11782
- # You can use headers to grant ACL- based permissions. By default, all
11783
- # objects are private. Only the owner has full access control. When
11784
- # adding a new object, you can grant permissions to individual Amazon
11785
- # Web Services accounts or to predefined groups defined by Amazon S3.
11786
- # These permissions are then added to the ACL on the object. For more
11787
- # information, see [Access Control List (ACL) Overview][4] and [Managing
11788
- # ACLs Using the REST API][5].
12039
+ # You have three mutually exclusive options to protect data using
12040
+ # server-side encryption in Amazon S3, depending on how you choose to
12041
+ # manage the encryption keys. Specifically, the encryption key options
12042
+ # are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys
12043
+ # (SSE-KMS), and customer-provided keys (SSE-C). Amazon S3 encrypts data
12044
+ # with server-side encryption by using Amazon S3 managed keys (SSE-S3)
12045
+ # by default. You can optionally tell Amazon S3 to encrypt data at by
12046
+ # rest using server-side encryption with other key options. For more
12047
+ # information, see [Using Server-Side Encryption][3].
12048
+ #
12049
+ # When adding a new object, you can use headers to grant ACL-based
12050
+ # permissions to individual Amazon Web Services accounts or to
12051
+ # predefined groups defined by Amazon S3. These permissions are then
12052
+ # added to the ACL on the object. By default, all objects are private.
12053
+ # Only the owner has full access control. For more information, see
12054
+ # [Access Control List (ACL) Overview][4] and [Managing ACLs Using the
12055
+ # REST API][5].
11789
12056
  #
11790
12057
  # If the bucket that you're uploading objects to uses the bucket owner
11791
12058
  # enforced setting for S3 Object Ownership, ACLs are disabled and no
@@ -11796,10 +12063,9 @@ module Aws::S3
11796
12063
  # ACL expressed in the XML format. PUT requests that contain other ACLs
11797
12064
  # (for example, custom grants to certain Amazon Web Services accounts)
11798
12065
  # fail and return a `400` error with the error code
11799
- # `AccessControlListNotSupported`.
11800
- #
11801
- # For more information, see [ Controlling ownership of objects and
11802
- # disabling ACLs][6] in the *Amazon S3 User Guide*.
12066
+ # `AccessControlListNotSupported`. For more information, see [
12067
+ # Controlling ownership of objects and disabling ACLs][6] in the *Amazon
12068
+ # S3 User Guide*.
11803
12069
  #
11804
12070
  # <note markdown="1"> If your bucket uses the bucket owner enforced setting for Object
11805
12071
  # Ownership, all objects written to the bucket by any account will be
@@ -11807,8 +12073,6 @@ module Aws::S3
11807
12073
  #
11808
12074
  # </note>
11809
12075
  #
11810
- # **Storage Class Options**
11811
- #
11812
12076
  # By default, Amazon S3 uses the STANDARD Storage Class to store newly
11813
12077
  # created objects. The STANDARD storage class provides high durability
11814
12078
  # and high availability. Depending on performance needs, you can specify
@@ -11816,19 +12080,16 @@ module Aws::S3
11816
12080
  # OUTPOSTS Storage Class. For more information, see [Storage Classes][7]
11817
12081
  # in the *Amazon S3 User Guide*.
11818
12082
  #
11819
- # **Versioning**
11820
- #
11821
12083
  # If you enable versioning for a bucket, Amazon S3 automatically
11822
12084
  # generates a unique version ID for the object being stored. Amazon S3
11823
12085
  # returns this ID in the response. When you enable versioning for a
11824
12086
  # bucket, if Amazon S3 receives multiple write requests for the same
11825
- # object simultaneously, it stores all of the objects.
11826
- #
11827
- # For more information about versioning, see [Adding Objects to
11828
- # Versioning Enabled Buckets][8]. For information about returning the
12087
+ # object simultaneously, it stores all of the objects. For more
12088
+ # information about versioning, see [Adding Objects to
12089
+ # Versioning-Enabled Buckets][8]. For information about returning the
11829
12090
  # versioning state of a bucket, see [GetBucketVersioning][9].
11830
12091
  #
11831
- # **Related Resources**
12092
+ # For more information about related Amazon S3 APIs, see the following:
11832
12093
  #
11833
12094
  # * [CopyObject][10]
11834
12095
  #
@@ -11836,9 +12097,9 @@ module Aws::S3
11836
12097
  #
11837
12098
  #
11838
12099
  #
11839
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html
11840
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
11841
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html
12100
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html
12101
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html
12102
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
11842
12103
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
11843
12104
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html
11844
12105
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
@@ -11872,14 +12133,14 @@ module Aws::S3
11872
12133
  # name. For more information about access point ARNs, see [Using access
11873
12134
  # points][1] in the *Amazon S3 User Guide*.
11874
12135
  #
11875
- # When using this action with Amazon S3 on Outposts, you must direct
12136
+ # When you use this action with Amazon S3 on Outposts, you must direct
11876
12137
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
11877
12138
  # takes the form `
11878
12139
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
11879
- # When using this action with S3 on Outposts through the Amazon Web
11880
- # Services SDKs, you provide the Outposts bucket ARN in place of the
11881
- # bucket name. For more information about S3 on Outposts ARNs, see
11882
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
12140
+ # When you use this action with S3 on Outposts through the Amazon Web
12141
+ # Services SDKs, you provide the Outposts access point ARN in place of
12142
+ # the bucket name. For more information about S3 on Outposts ARNs, see
12143
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
11883
12144
  #
11884
12145
  #
11885
12146
  #
@@ -11898,21 +12159,21 @@ module Aws::S3
11898
12159
  # @option params [String] :content_disposition
11899
12160
  # Specifies presentational information for the object. For more
11900
12161
  # information, see
11901
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1][1].
12162
+ # [https://www.rfc-editor.org/rfc/rfc6266#section-4][1].
11902
12163
  #
11903
12164
  #
11904
12165
  #
11905
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1
12166
+ # [1]: https://www.rfc-editor.org/rfc/rfc6266#section-4
11906
12167
  #
11907
12168
  # @option params [String] :content_encoding
11908
12169
  # Specifies what content encodings have been applied to the object and
11909
12170
  # thus what decoding mechanisms must be applied to obtain the media-type
11910
12171
  # referenced by the Content-Type header field. For more information, see
11911
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11][1].
12172
+ # [https://www.rfc-editor.org/rfc/rfc9110.html#field.content-encoding][1].
11912
12173
  #
11913
12174
  #
11914
12175
  #
11915
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11
12176
+ # [1]: https://www.rfc-editor.org/rfc/rfc9110.html#field.content-encoding
11916
12177
  #
11917
12178
  # @option params [String] :content_language
11918
12179
  # The language the content is in.
@@ -11920,11 +12181,11 @@ module Aws::S3
11920
12181
  # @option params [Integer] :content_length
11921
12182
  # Size of the body in bytes. This parameter is useful when the size of
11922
12183
  # the body cannot be determined automatically. For more information, see
11923
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13][1].
12184
+ # [https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length][1].
11924
12185
  #
11925
12186
  #
11926
12187
  #
11927
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13
12188
+ # [1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length
11928
12189
  #
11929
12190
  # @option params [String] :content_md5
11930
12191
  # The base64-encoded 128-bit MD5 digest of the message (without the
@@ -11942,11 +12203,11 @@ module Aws::S3
11942
12203
  # @option params [String] :content_type
11943
12204
  # A standard MIME type describing the format of the contents. For more
11944
12205
  # information, see
11945
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17][1].
12206
+ # [https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type][1].
11946
12207
  #
11947
12208
  #
11948
12209
  #
11949
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
12210
+ # [1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type
11950
12211
  #
11951
12212
  # @option params [String] :checksum_algorithm
11952
12213
  # Indicates the algorithm used to create the checksum for the object
@@ -12011,11 +12272,11 @@ module Aws::S3
12011
12272
  # @option params [Time,DateTime,Date,Integer,String] :expires
12012
12273
  # The date and time at which the object is no longer cacheable. For more
12013
12274
  # information, see
12014
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21][1].
12275
+ # [https://www.rfc-editor.org/rfc/rfc7234#section-5.3][1].
12015
12276
  #
12016
12277
  #
12017
12278
  #
12018
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21
12279
+ # [1]: https://www.rfc-editor.org/rfc/rfc7234#section-5.3
12019
12280
  #
12020
12281
  # @option params [String] :grant_full_control
12021
12282
  # Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
@@ -12046,7 +12307,7 @@ module Aws::S3
12046
12307
  #
12047
12308
  # @option params [String] :server_side_encryption
12048
12309
  # The server-side encryption algorithm used when storing this object in
12049
- # Amazon S3 (for example, AES256, aws:kms).
12310
+ # Amazon S3 (for example, AES256, `aws:kms`).
12050
12311
  #
12051
12312
  # @option params [String] :storage_class
12052
12313
  # By default, Amazon S3 uses the STANDARD Storage Class to store newly
@@ -12103,9 +12364,9 @@ module Aws::S3
12103
12364
  # ensure that the encryption key was transmitted without error.
12104
12365
  #
12105
12366
  # @option params [String] :ssekms_key_id
12106
- # If `x-amz-server-side-encryption` is present and has the value of
12107
- # `aws:kms`, this header specifies the ID of the Amazon Web Services Key
12108
- # Management Service (Amazon Web Services KMS) symmetrical customer
12367
+ # If `x-amz-server-side-encryption` has a valid value of `aws:kms`, this
12368
+ # header specifies the ID of the Amazon Web Services Key Management
12369
+ # Service (Amazon Web Services KMS) symmetric encryption customer
12109
12370
  # managed key that was used for the object. If you specify
12110
12371
  # `x-amz-server-side-encryption:aws:kms`, but do not provide`
12111
12372
  # x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
@@ -12116,7 +12377,10 @@ module Aws::S3
12116
12377
  # @option params [String] :ssekms_encryption_context
12117
12378
  # Specifies the Amazon Web Services KMS Encryption Context to use for
12118
12379
  # object encryption. The value of this header is a base64-encoded UTF-8
12119
- # string holding JSON with the encryption context key-value pairs.
12380
+ # string holding JSON with the encryption context key-value pairs. This
12381
+ # value is stored as object metadata and automatically gets passed on to
12382
+ # Amazon Web Services KMS for future `GetObject` or `CopyObject`
12383
+ # operations on this object.
12120
12384
  #
12121
12385
  # @option params [Boolean] :bucket_key_enabled
12122
12386
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
@@ -12198,26 +12462,27 @@ module Aws::S3
12198
12462
  # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
12199
12463
  # }
12200
12464
  #
12201
- # @example Example: To upload an object
12465
+ # @example Example: To upload an object and specify canned ACL.
12202
12466
  #
12203
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
12204
- # # syntax. S3 returns VersionId of the newly created object.
12467
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
12468
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
12205
12469
  #
12206
12470
  # resp = client.put_object({
12207
- # body: "HappyFace.jpg",
12471
+ # acl: "authenticated-read",
12472
+ # body: "filetoupload",
12208
12473
  # bucket: "examplebucket",
12209
- # key: "HappyFace.jpg",
12474
+ # key: "exampleobject",
12210
12475
  # })
12211
12476
  #
12212
12477
  # resp.to_h outputs the following:
12213
12478
  # {
12214
12479
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12215
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
12480
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
12216
12481
  # }
12217
12482
  #
12218
12483
  # @example Example: To upload an object and specify server-side encryption and object tags
12219
12484
  #
12220
- # # The following example uploads and object. The request specifies the optional server-side encryption option. The request
12485
+ # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
12221
12486
  # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
12222
12487
  #
12223
12488
  # resp = client.put_object({
@@ -12235,79 +12500,78 @@ module Aws::S3
12235
12500
  # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
12236
12501
  # }
12237
12502
  #
12238
- # @example Example: To upload object and specify user-defined metadata
12503
+ # @example Example: To create an object.
12239
12504
  #
12240
- # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
12241
- # # enabled, S3 returns version ID in response.
12505
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
12242
12506
  #
12243
12507
  # resp = client.put_object({
12244
12508
  # body: "filetoupload",
12245
12509
  # bucket: "examplebucket",
12246
- # key: "exampleobject",
12247
- # metadata: {
12248
- # "metadata1" => "value1",
12249
- # "metadata2" => "value2",
12250
- # },
12510
+ # key: "objectkey",
12251
12511
  # })
12252
12512
  #
12253
12513
  # resp.to_h outputs the following:
12254
12514
  # {
12255
12515
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12256
- # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
12516
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
12257
12517
  # }
12258
12518
  #
12259
- # @example Example: To upload an object (specify optional headers)
12519
+ # @example Example: To upload an object
12260
12520
  #
12261
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
12262
- # # storage class and use server-side encryption.
12521
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
12522
+ # # syntax. S3 returns VersionId of the newly created object.
12263
12523
  #
12264
12524
  # resp = client.put_object({
12265
12525
  # body: "HappyFace.jpg",
12266
12526
  # bucket: "examplebucket",
12267
12527
  # key: "HappyFace.jpg",
12268
- # server_side_encryption: "AES256",
12269
- # storage_class: "STANDARD_IA",
12270
12528
  # })
12271
12529
  #
12272
12530
  # resp.to_h outputs the following:
12273
12531
  # {
12274
12532
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12275
- # server_side_encryption: "AES256",
12276
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
12533
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
12277
12534
  # }
12278
12535
  #
12279
- # @example Example: To upload an object and specify canned ACL.
12536
+ # @example Example: To upload an object (specify optional headers)
12280
12537
  #
12281
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
12282
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
12538
+ # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
12539
+ # # storage class and use server-side encryption.
12283
12540
  #
12284
12541
  # resp = client.put_object({
12285
- # acl: "authenticated-read",
12286
- # body: "filetoupload",
12542
+ # body: "HappyFace.jpg",
12287
12543
  # bucket: "examplebucket",
12288
- # key: "exampleobject",
12544
+ # key: "HappyFace.jpg",
12545
+ # server_side_encryption: "AES256",
12546
+ # storage_class: "STANDARD_IA",
12289
12547
  # })
12290
12548
  #
12291
12549
  # resp.to_h outputs the following:
12292
12550
  # {
12293
12551
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12294
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
12552
+ # server_side_encryption: "AES256",
12553
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
12295
12554
  # }
12296
12555
  #
12297
- # @example Example: To create an object.
12556
+ # @example Example: To upload object and specify user-defined metadata
12298
12557
  #
12299
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
12558
+ # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
12559
+ # # enabled, S3 returns version ID in response.
12300
12560
  #
12301
12561
  # resp = client.put_object({
12302
12562
  # body: "filetoupload",
12303
12563
  # bucket: "examplebucket",
12304
- # key: "objectkey",
12564
+ # key: "exampleobject",
12565
+ # metadata: {
12566
+ # "metadata1" => "value1",
12567
+ # "metadata2" => "value2",
12568
+ # },
12305
12569
  # })
12306
12570
  #
12307
12571
  # resp.to_h outputs the following:
12308
12572
  # {
12309
12573
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12310
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
12574
+ # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
12311
12575
  # }
12312
12576
  #
12313
12577
  # @example Streaming a file from disk
@@ -12409,131 +12673,132 @@ module Aws::S3
12409
12673
  # still supported. For more information, see [Controlling object
12410
12674
  # ownership][3] in the *Amazon S3 User Guide*.
12411
12675
  #
12412
- # **Access Permissions**
12676
+ # Permissions
12413
12677
  #
12414
- # You can set access permissions using one of the following methods:
12678
+ # : You can set access permissions using one of the following methods:
12415
12679
  #
12416
- # * Specify a canned ACL with the `x-amz-acl` request header. Amazon S3
12417
- # supports a set of predefined ACLs, known as canned ACLs. Each canned
12418
- # ACL has a predefined set of grantees and permissions. Specify the
12419
- # canned ACL name as the value of `x-amz-ac`l. If you use this header,
12420
- # you cannot use other access control-specific headers in your
12421
- # request. For more information, see [Canned ACL][4].
12680
+ # * Specify a canned ACL with the `x-amz-acl` request header. Amazon
12681
+ # S3 supports a set of predefined ACLs, known as canned ACLs. Each
12682
+ # canned ACL has a predefined set of grantees and permissions.
12683
+ # Specify the canned ACL name as the value of `x-amz-ac`l. If you
12684
+ # use this header, you cannot use other access control-specific
12685
+ # headers in your request. For more information, see [Canned
12686
+ # ACL][4].
12422
12687
  #
12423
- # * Specify access permissions explicitly with the `x-amz-grant-read`,
12424
- # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
12425
- # `x-amz-grant-full-control` headers. When using these headers, you
12426
- # specify explicit access permissions and grantees (Amazon Web
12427
- # Services accounts or Amazon S3 groups) who will receive the
12428
- # permission. If you use these ACL-specific headers, you cannot use
12429
- # `x-amz-acl` header to set a canned ACL. These parameters map to the
12430
- # set of permissions that Amazon S3 supports in an ACL. For more
12431
- # information, see [Access Control List (ACL) Overview][2].
12688
+ # * Specify access permissions explicitly with the `x-amz-grant-read`,
12689
+ # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
12690
+ # `x-amz-grant-full-control` headers. When using these headers, you
12691
+ # specify explicit access permissions and grantees (Amazon Web
12692
+ # Services accounts or Amazon S3 groups) who will receive the
12693
+ # permission. If you use these ACL-specific headers, you cannot use
12694
+ # `x-amz-acl` header to set a canned ACL. These parameters map to
12695
+ # the set of permissions that Amazon S3 supports in an ACL. For more
12696
+ # information, see [Access Control List (ACL) Overview][2].
12432
12697
  #
12433
- # You specify each grantee as a type=value pair, where the type is one
12434
- # of the following:
12698
+ # You specify each grantee as a type=value pair, where the type is
12699
+ # one of the following:
12435
12700
  #
12436
- # * `id` – if the value specified is the canonical user ID of an
12437
- # Amazon Web Services account
12701
+ # * `id` – if the value specified is the canonical user ID of an
12702
+ # Amazon Web Services account
12438
12703
  #
12439
- # * `uri` – if you are granting permissions to a predefined group
12704
+ # * `uri` – if you are granting permissions to a predefined group
12440
12705
  #
12441
- # * `emailAddress` – if the value specified is the email address of an
12442
- # Amazon Web Services account
12706
+ # * `emailAddress` – if the value specified is the email address of
12707
+ # an Amazon Web Services account
12443
12708
  #
12444
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in
12445
- # the following Amazon Web Services Regions:
12709
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
12710
+ # the following Amazon Web Services Regions:
12446
12711
  #
12447
- # * US East (N. Virginia)
12712
+ # * US East (N. Virginia)
12448
12713
  #
12449
- # * US West (N. California)
12714
+ # * US West (N. California)
12450
12715
  #
12451
- # * US West (Oregon)
12716
+ # * US West (Oregon)
12452
12717
  #
12453
- # * Asia Pacific (Singapore)
12718
+ # * Asia Pacific (Singapore)
12454
12719
  #
12455
- # * Asia Pacific (Sydney)
12720
+ # * Asia Pacific (Sydney)
12456
12721
  #
12457
- # * Asia Pacific (Tokyo)
12722
+ # * Asia Pacific (Tokyo)
12458
12723
  #
12459
- # * Europe (Ireland)
12724
+ # * Europe (Ireland)
12460
12725
  #
12461
- # * South America (São Paulo)
12726
+ # * South America (São Paulo)
12462
12727
  #
12463
- # For a list of all the Amazon S3 supported Regions and endpoints,
12464
- # see [Regions and Endpoints][5] in the Amazon Web Services General
12465
- # Reference.
12728
+ # For a list of all the Amazon S3 supported Regions and endpoints,
12729
+ # see [Regions and Endpoints][5] in the Amazon Web Services
12730
+ # General Reference.
12466
12731
  #
12467
- # </note>
12732
+ # </note>
12468
12733
  #
12469
- # For example, the following `x-amz-grant-read` header grants list
12470
- # objects permission to the two Amazon Web Services accounts
12471
- # identified by their email addresses.
12734
+ # For example, the following `x-amz-grant-read` header grants list
12735
+ # objects permission to the two Amazon Web Services accounts
12736
+ # identified by their email addresses.
12472
12737
  #
12473
- # `x-amz-grant-read: emailAddress="xyz@amazon.com",
12474
- # emailAddress="abc@amazon.com" `
12738
+ # `x-amz-grant-read: emailAddress="xyz@amazon.com",
12739
+ # emailAddress="abc@amazon.com" `
12475
12740
  #
12476
- # You can use either a canned ACL or specify access permissions
12477
- # explicitly. You cannot do both.
12741
+ # You can use either a canned ACL or specify access permissions
12742
+ # explicitly. You cannot do both.
12478
12743
  #
12479
- # **Grantee Values**
12744
+ # Grantee Values
12480
12745
  #
12481
- # You can specify the person (grantee) to whom you're assigning access
12482
- # rights (using request elements) in the following ways:
12746
+ # : You can specify the person (grantee) to whom you're assigning
12747
+ # access rights (using request elements) in the following ways:
12483
12748
  #
12484
- # * By the person's ID:
12749
+ # * By the person's ID:
12485
12750
  #
12486
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12487
- # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
12488
- # </Grantee>`
12751
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12752
+ # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
12753
+ # </Grantee>`
12489
12754
  #
12490
- # DisplayName is optional and ignored in the request.
12755
+ # DisplayName is optional and ignored in the request.
12491
12756
  #
12492
- # * By URI:
12757
+ # * By URI:
12493
12758
  #
12494
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12495
- # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
12759
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12760
+ # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
12496
12761
  #
12497
- # * By Email address:
12762
+ # * By Email address:
12498
12763
  #
12499
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12500
- # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress>lt;/Grantee>`
12764
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12765
+ # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress>lt;/Grantee>`
12501
12766
  #
12502
- # The grantee is resolved to the CanonicalUser and, in a response to a
12503
- # GET Object acl request, appears as the CanonicalUser.
12767
+ # The grantee is resolved to the CanonicalUser and, in a response to
12768
+ # a GET Object acl request, appears as the CanonicalUser.
12504
12769
  #
12505
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in the
12506
- # following Amazon Web Services Regions:
12770
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
12771
+ # the following Amazon Web Services Regions:
12507
12772
  #
12508
- # * US East (N. Virginia)
12773
+ # * US East (N. Virginia)
12509
12774
  #
12510
- # * US West (N. California)
12775
+ # * US West (N. California)
12511
12776
  #
12512
- # * US West (Oregon)
12777
+ # * US West (Oregon)
12513
12778
  #
12514
- # * Asia Pacific (Singapore)
12779
+ # * Asia Pacific (Singapore)
12515
12780
  #
12516
- # * Asia Pacific (Sydney)
12781
+ # * Asia Pacific (Sydney)
12517
12782
  #
12518
- # * Asia Pacific (Tokyo)
12783
+ # * Asia Pacific (Tokyo)
12519
12784
  #
12520
- # * Europe (Ireland)
12785
+ # * Europe (Ireland)
12521
12786
  #
12522
- # * South America (São Paulo)
12787
+ # * South America (São Paulo)
12523
12788
  #
12524
- # For a list of all the Amazon S3 supported Regions and endpoints, see
12525
- # [Regions and Endpoints][5] in the Amazon Web Services General
12526
- # Reference.
12789
+ # For a list of all the Amazon S3 supported Regions and endpoints,
12790
+ # see [Regions and Endpoints][5] in the Amazon Web Services General
12791
+ # Reference.
12527
12792
  #
12528
- # </note>
12793
+ # </note>
12529
12794
  #
12530
- # **Versioning**
12795
+ # Versioning
12531
12796
  #
12532
- # The ACL of an object is set at the object version level. By default,
12533
- # PUT sets the ACL of the current version of an object. To set the ACL
12534
- # of a different version, use the `versionId` subresource.
12797
+ # : The ACL of an object is set at the object version level. By default,
12798
+ # PUT sets the ACL of the current version of an object. To set the ACL
12799
+ # of a different version, use the `versionId` subresource.
12535
12800
  #
12536
- # **Related Resources**
12801
+ # The following operations are related to `PutObjectAcl`:
12537
12802
  #
12538
12803
  # * [CopyObject][6]
12539
12804
  #
@@ -12645,14 +12910,14 @@ module Aws::S3
12645
12910
  # name. For more information about access point ARNs, see [Using access
12646
12911
  # points][1] in the *Amazon S3 User Guide*.
12647
12912
  #
12648
- # When using this action with Amazon S3 on Outposts, you must direct
12913
+ # When you use this action with Amazon S3 on Outposts, you must direct
12649
12914
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
12650
12915
  # takes the form `
12651
12916
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
12652
- # When using this action with S3 on Outposts through the Amazon Web
12653
- # Services SDKs, you provide the Outposts bucket ARN in place of the
12654
- # bucket name. For more information about S3 on Outposts ARNs, see
12655
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
12917
+ # When you use this action with S3 on Outposts through the Amazon Web
12918
+ # Services SDKs, you provide the Outposts access point ARN in place of
12919
+ # the bucket name. For more information about S3 on Outposts ARNs, see
12920
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
12656
12921
  #
12657
12922
  #
12658
12923
  #
@@ -13103,7 +13368,7 @@ module Aws::S3
13103
13368
  # For information about the Amazon S3 object tagging feature, see
13104
13369
  # [Object Tagging][3].
13105
13370
  #
13106
- # **Special Errors**
13371
+ # `PutObjectTagging` has the following special errors:
13107
13372
  #
13108
13373
  # * * <i>Code: InvalidTagError </i>
13109
13374
  #
@@ -13125,7 +13390,7 @@ module Aws::S3
13125
13390
  # * *Cause: The service was unable to apply the provided tag to the
13126
13391
  # object.*
13127
13392
  #
13128
- # **Related Resources**
13393
+ # The following operations are related to `PutObjectTagging`:
13129
13394
  #
13130
13395
  # * [GetObjectTagging][1]
13131
13396
  #
@@ -13149,14 +13414,14 @@ module Aws::S3
13149
13414
  # name. For more information about access point ARNs, see [Using access
13150
13415
  # points][1] in the *Amazon S3 User Guide*.
13151
13416
  #
13152
- # When using this action with Amazon S3 on Outposts, you must direct
13417
+ # When you use this action with Amazon S3 on Outposts, you must direct
13153
13418
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
13154
13419
  # takes the form `
13155
13420
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
13156
- # When using this action with S3 on Outposts through the Amazon Web
13157
- # Services SDKs, you provide the Outposts bucket ARN in place of the
13158
- # bucket name. For more information about S3 on Outposts ARNs, see
13159
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
13421
+ # When you use this action with S3 on Outposts through the Amazon Web
13422
+ # Services SDKs, you provide the Outposts access point ARN in place of
13423
+ # the bucket name. For more information about S3 on Outposts ARNs, see
13424
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
13160
13425
  #
13161
13426
  #
13162
13427
  #
@@ -13291,7 +13556,7 @@ module Aws::S3
13291
13556
  # For more information about when Amazon S3 considers a bucket or an
13292
13557
  # object public, see [The Meaning of "Public"][2].
13293
13558
  #
13294
- # **Related Resources**
13559
+ # The following operations are related to `PutPublicAccessBlock`:
13295
13560
  #
13296
13561
  # * [GetPublicAccessBlock][3]
13297
13562
  #
@@ -13389,69 +13654,37 @@ module Aws::S3
13389
13654
  #
13390
13655
  # * `restore an archive` - Restore an archived object
13391
13656
  #
13392
- # To use this operation, you must have permissions to perform the
13393
- # `s3:RestoreObject` action. The bucket owner has this permission by
13394
- # default and can grant this permission to others. For more information
13395
- # about permissions, see [Permissions Related to Bucket Subresource
13396
- # Operations][1] and [Managing Access Permissions to Your Amazon S3
13397
- # Resources][2] in the *Amazon S3 User Guide*.
13398
- #
13399
- # **Querying Archives with Select Requests**
13400
- #
13401
- # You use a select type of request to perform SQL queries on archived
13402
- # objects. The archived objects that are being queried by the select
13403
- # request must be formatted as uncompressed comma-separated values (CSV)
13404
- # files. You can run queries and custom analytics on your archived data
13405
- # without having to restore your data to a hotter Amazon S3 tier. For an
13406
- # overview about select requests, see [Querying Archived Objects][3] in
13407
- # the *Amazon S3 User Guide*.
13408
- #
13409
- # When making a select request, do the following:
13410
- #
13411
- # * Define an output location for the select query's output. This must
13412
- # be an Amazon S3 bucket in the same Amazon Web Services Region as the
13413
- # bucket that contains the archive object that is being queried. The
13414
- # Amazon Web Services account that initiates the job must have
13415
- # permissions to write to the S3 bucket. You can specify the storage
13416
- # class and encryption for the output objects stored in the bucket.
13417
- # For more information about output, see [Querying Archived
13418
- # Objects][3] in the *Amazon S3 User Guide*.
13419
- #
13420
- # For more information about the `S3` structure in the request body,
13421
- # see the following:
13657
+ # For more information about the `S3` structure in the request body, see
13658
+ # the following:
13422
13659
  #
13423
- # * [PutObject][4]
13660
+ # * [PutObject][1]
13424
13661
  #
13425
- # * [Managing Access with ACLs][5] in the *Amazon S3 User Guide*
13662
+ # * [Managing Access with ACLs][2] in the *Amazon S3 User Guide*
13426
13663
  #
13427
- # * [Protecting Data Using Server-Side Encryption][6] in the *Amazon
13428
- # S3 User Guide*
13664
+ # * [Protecting Data Using Server-Side Encryption][3] in the *Amazon S3
13665
+ # User Guide*
13429
13666
  #
13430
- # * Define the SQL expression for the `SELECT` type of restoration for
13431
- # your query in the request body's `SelectParameters` structure. You
13432
- # can use expressions like the following examples.
13667
+ # Define the SQL expression for the `SELECT` type of restoration for
13668
+ # your query in the request body's `SelectParameters` structure. You
13669
+ # can use expressions like the following examples.
13433
13670
  #
13434
- # * The following expression returns all records from the specified
13435
- # object.
13671
+ # * The following expression returns all records from the specified
13672
+ # object.
13436
13673
  #
13437
- # `SELECT * FROM Object`
13674
+ # `SELECT * FROM Object`
13438
13675
  #
13439
- # * Assuming that you are not using any headers for data stored in the
13440
- # object, you can specify columns with positional headers.
13676
+ # * Assuming that you are not using any headers for data stored in the
13677
+ # object, you can specify columns with positional headers.
13441
13678
  #
13442
- # `SELECT s._1, s._2 FROM Object s WHERE s._3 > 100`
13679
+ # `SELECT s._1, s._2 FROM Object s WHERE s._3 > 100`
13443
13680
  #
13444
- # * If you have headers and you set the `fileHeaderInfo` in the `CSV`
13445
- # structure in the request body to `USE`, you can specify headers in
13446
- # the query. (If you set the `fileHeaderInfo` field to `IGNORE`, the
13447
- # first row is skipped for the query.) You cannot mix ordinal
13448
- # positions with header column names.
13681
+ # * If you have headers and you set the `fileHeaderInfo` in the `CSV`
13682
+ # structure in the request body to `USE`, you can specify headers in
13683
+ # the query. (If you set the `fileHeaderInfo` field to `IGNORE`, the
13684
+ # first row is skipped for the query.) You cannot mix ordinal
13685
+ # positions with header column names.
13449
13686
  #
13450
- # `SELECT s.Id, s.FirstName, s.SSN FROM S3Object s`
13451
- #
13452
- # For more information about using SQL with S3 Glacier Select restore,
13453
- # see [SQL Reference for Amazon S3 Select and S3 Glacier Select][7] in
13454
- # the *Amazon S3 User Guide*.
13687
+ # `SELECT s.Id, s.FirstName, s.SSN FROM S3Object s`
13455
13688
  #
13456
13689
  # When making a select request, you can also do the following:
13457
13690
  #
@@ -13467,155 +13700,168 @@ module Aws::S3
13467
13700
  #
13468
13701
  # * The output results are new Amazon S3 objects. Unlike archive
13469
13702
  # retrievals, they are stored until explicitly deleted-manually or
13470
- # through a lifecycle policy.
13703
+ # through a lifecycle configuration.
13471
13704
  #
13472
13705
  # * You can issue more than one select request on the same Amazon S3
13473
- # object. Amazon S3 doesn't deduplicate requests, so avoid issuing
13706
+ # object. Amazon S3 doesn't duplicate requests, so avoid issuing
13474
13707
  # duplicate requests.
13475
13708
  #
13476
13709
  # * Amazon S3 accepts a select request even if the object has already
13477
13710
  # been restored. A select request doesn’t return error response `409`.
13478
13711
  #
13479
- # **Restoring objects**
13480
- #
13481
- # Objects that you archive to the S3 Glacier or S3 Glacier Deep Archive
13482
- # storage class, and S3 Intelligent-Tiering Archive or S3
13483
- # Intelligent-Tiering Deep Archive tiers are not accessible in real
13484
- # time. For objects in Archive Access or Deep Archive Access tiers you
13485
- # must first initiate a restore request, and then wait until the object
13486
- # is moved into the Frequent Access tier. For objects in S3 Glacier or
13487
- # S3 Glacier Deep Archive storage classes you must first initiate a
13488
- # restore request, and then wait until a temporary copy of the object is
13489
- # available. To access an archived object, you must restore the object
13490
- # for the duration (number of days) that you specify.
13491
- #
13492
- # To restore a specific object version, you can provide a version ID. If
13493
- # you don't provide a version ID, Amazon S3 restores the current
13494
- # version.
13495
- #
13496
- # When restoring an archived object (or using a select request), you can
13497
- # specify one of the following data access tier options in the `Tier`
13498
- # element of the request body:
13499
- #
13500
- # * `Expedited` - Expedited retrievals allow you to quickly access your
13501
- # data stored in the S3 Glacier storage class or S3
13502
- # Intelligent-Tiering Archive tier when occasional urgent requests for
13503
- # a subset of archives are required. For all but the largest archived
13504
- # objects (250 MB+), data accessed using Expedited retrievals is
13505
- # typically made available within 1–5 minutes. Provisioned capacity
13506
- # ensures that retrieval capacity for Expedited retrievals is
13507
- # available when you need it. Expedited retrievals and provisioned
13508
- # capacity are not available for objects stored in the S3 Glacier Deep
13509
- # Archive storage class or S3 Intelligent-Tiering Deep Archive tier.
13510
- #
13511
- # * `Standard` - Standard retrievals allow you to access any of your
13512
- # archived objects within several hours. This is the default option
13513
- # for retrieval requests that do not specify the retrieval option.
13514
- # Standard retrievals typically finish within 3–5 hours for objects
13515
- # stored in the S3 Glacier storage class or S3 Intelligent-Tiering
13516
- # Archive tier. They typically finish within 12 hours for objects
13517
- # stored in the S3 Glacier Deep Archive storage class or S3
13518
- # Intelligent-Tiering Deep Archive tier. Standard retrievals are free
13519
- # for objects stored in S3 Intelligent-Tiering.
13520
- #
13521
- # * `Bulk` - Bulk retrievals are the lowest-cost retrieval option in S3
13522
- # Glacier, enabling you to retrieve large amounts, even petabytes, of
13523
- # data inexpensively. Bulk retrievals typically finish within 5–12
13524
- # hours for objects stored in the S3 Glacier storage class or S3
13525
- # Intelligent-Tiering Archive tier. They typically finish within 48
13526
- # hours for objects stored in the S3 Glacier Deep Archive storage
13527
- # class or S3 Intelligent-Tiering Deep Archive tier. Bulk retrievals
13528
- # are free for objects stored in S3 Intelligent-Tiering.
13529
- #
13530
- # For more information about archive retrieval options and provisioned
13531
- # capacity for `Expedited` data access, see [Restoring Archived
13532
- # Objects][8] in the *Amazon S3 User Guide*.
13533
- #
13534
- # You can use Amazon S3 restore speed upgrade to change the restore
13535
- # speed to a faster speed while it is in progress. For more information,
13536
- # see [ Upgrading the speed of an in-progress restore][9] in the *Amazon
13537
- # S3 User Guide*.
13712
+ # Permissions
13713
+ #
13714
+ # : To use this operation, you must have permissions to perform the
13715
+ # `s3:RestoreObject` action. The bucket owner has this permission by
13716
+ # default and can grant this permission to others. For more
13717
+ # information about permissions, see [Permissions Related to Bucket
13718
+ # Subresource Operations][4] and [Managing Access Permissions to Your
13719
+ # Amazon S3 Resources][5] in the *Amazon S3 User Guide*.
13720
+ #
13721
+ # Restoring objects
13722
+ #
13723
+ # : Objects that you archive to the S3 Glacier Flexible Retrieval or S3
13724
+ # Glacier Deep Archive storage class, and S3 Intelligent-Tiering
13725
+ # Archive or S3 Intelligent-Tiering Deep Archive tiers, are not
13726
+ # accessible in real time. For objects in the S3 Glacier Flexible
13727
+ # Retrieval or S3 Glacier Deep Archive storage classes, you must first
13728
+ # initiate a restore request, and then wait until a temporary copy of
13729
+ # the object is available. If you want a permanent copy of the object,
13730
+ # create a copy of it in the Amazon S3 Standard storage class in your
13731
+ # S3 bucket. To access an archived object, you must restore the object
13732
+ # for the duration (number of days) that you specify. For objects in
13733
+ # the Archive Access or Deep Archive Access tiers of S3
13734
+ # Intelligent-Tiering, you must first initiate a restore request, and
13735
+ # then wait until the object is moved into the Frequent Access tier.
13736
+ #
13737
+ # To restore a specific object version, you can provide a version ID.
13738
+ # If you don't provide a version ID, Amazon S3 restores the current
13739
+ # version.
13740
+ #
13741
+ # When restoring an archived object, you can specify one of the
13742
+ # following data access tier options in the `Tier` element of the
13743
+ # request body:
13744
+ #
13745
+ # * `Expedited` - Expedited retrievals allow you to quickly access
13746
+ # your data stored in the S3 Glacier Flexible Retrieval storage
13747
+ # class or S3 Intelligent-Tiering Archive tier when occasional
13748
+ # urgent requests for restoring archives are required. For all but
13749
+ # the largest archived objects (250 MB+), data accessed using
13750
+ # Expedited retrievals is typically made available within 1–5
13751
+ # minutes. Provisioned capacity ensures that retrieval capacity for
13752
+ # Expedited retrievals is available when you need it. Expedited
13753
+ # retrievals and provisioned capacity are not available for objects
13754
+ # stored in the S3 Glacier Deep Archive storage class or S3
13755
+ # Intelligent-Tiering Deep Archive tier.
13756
+ #
13757
+ # * `Standard` - Standard retrievals allow you to access any of your
13758
+ # archived objects within several hours. This is the default option
13759
+ # for retrieval requests that do not specify the retrieval option.
13760
+ # Standard retrievals typically finish within 3–5 hours for objects
13761
+ # stored in the S3 Glacier Flexible Retrieval storage class or S3
13762
+ # Intelligent-Tiering Archive tier. They typically finish within 12
13763
+ # hours for objects stored in the S3 Glacier Deep Archive storage
13764
+ # class or S3 Intelligent-Tiering Deep Archive tier. Standard
13765
+ # retrievals are free for objects stored in S3 Intelligent-Tiering.
13766
+ #
13767
+ # * `Bulk` - Bulk retrievals free for objects stored in the S3 Glacier
13768
+ # Flexible Retrieval and S3 Intelligent-Tiering storage classes,
13769
+ # enabling you to retrieve large amounts, even petabytes, of data at
13770
+ # no cost. Bulk retrievals typically finish within 5–12 hours for
13771
+ # objects stored in the S3 Glacier Flexible Retrieval storage class
13772
+ # or S3 Intelligent-Tiering Archive tier. Bulk retrievals are also
13773
+ # the lowest-cost retrieval option when restoring objects from S3
13774
+ # Glacier Deep Archive. They typically finish within 48 hours for
13775
+ # objects stored in the S3 Glacier Deep Archive storage class or S3
13776
+ # Intelligent-Tiering Deep Archive tier.
13777
+ #
13778
+ # For more information about archive retrieval options and provisioned
13779
+ # capacity for `Expedited` data access, see [Restoring Archived
13780
+ # Objects][6] in the *Amazon S3 User Guide*.
13781
+ #
13782
+ # You can use Amazon S3 restore speed upgrade to change the restore
13783
+ # speed to a faster speed while it is in progress. For more
13784
+ # information, see [ Upgrading the speed of an in-progress restore][7]
13785
+ # in the *Amazon S3 User Guide*.
13538
13786
  #
13539
- # To get the status of object restoration, you can send a `HEAD`
13540
- # request. Operations return the `x-amz-restore` header, which provides
13541
- # information about the restoration status, in the response. You can use
13542
- # Amazon S3 event notifications to notify you when a restore is
13543
- # initiated or completed. For more information, see [Configuring Amazon
13544
- # S3 Event Notifications][10] in the *Amazon S3 User Guide*.
13787
+ # To get the status of object restoration, you can send a `HEAD`
13788
+ # request. Operations return the `x-amz-restore` header, which
13789
+ # provides information about the restoration status, in the response.
13790
+ # You can use Amazon S3 event notifications to notify you when a
13791
+ # restore is initiated or completed. For more information, see
13792
+ # [Configuring Amazon S3 Event Notifications][8] in the *Amazon S3
13793
+ # User Guide*.
13545
13794
  #
13546
- # After restoring an archived object, you can update the restoration
13547
- # period by reissuing the request with a new period. Amazon S3 updates
13548
- # the restoration period relative to the current time and charges only
13549
- # for the request-there are no data transfer charges. You cannot update
13550
- # the restoration period when Amazon S3 is actively processing your
13551
- # current restore request for the object.
13795
+ # After restoring an archived object, you can update the restoration
13796
+ # period by reissuing the request with a new period. Amazon S3 updates
13797
+ # the restoration period relative to the current time and charges only
13798
+ # for the request-there are no data transfer charges. You cannot
13799
+ # update the restoration period when Amazon S3 is actively processing
13800
+ # your current restore request for the object.
13552
13801
  #
13553
- # If your bucket has a lifecycle configuration with a rule that includes
13554
- # an expiration action, the object expiration overrides the life span
13555
- # that you specify in a restore request. For example, if you restore an
13556
- # object copy for 10 days, but the object is scheduled to expire in 3
13557
- # days, Amazon S3 deletes the object in 3 days. For more information
13558
- # about lifecycle configuration, see
13559
- # [PutBucketLifecycleConfiguration][11] and [Object Lifecycle
13560
- # Management][12] in *Amazon S3 User Guide*.
13802
+ # If your bucket has a lifecycle configuration with a rule that
13803
+ # includes an expiration action, the object expiration overrides the
13804
+ # life span that you specify in a restore request. For example, if you
13805
+ # restore an object copy for 10 days, but the object is scheduled to
13806
+ # expire in 3 days, Amazon S3 deletes the object in 3 days. For more
13807
+ # information about lifecycle configuration, see
13808
+ # [PutBucketLifecycleConfiguration][9] and [Object Lifecycle
13809
+ # Management][10] in *Amazon S3 User Guide*.
13561
13810
  #
13562
- # **Responses**
13811
+ # Responses
13563
13812
  #
13564
- # A successful action returns either the `200 OK` or `202 Accepted`
13565
- # status code.
13813
+ # : A successful action returns either the `200 OK` or `202 Accepted`
13814
+ # status code.
13566
13815
  #
13567
- # * If the object is not previously restored, then Amazon S3 returns
13568
- # `202 Accepted` in the response.
13816
+ # * If the object is not previously restored, then Amazon S3 returns
13817
+ # `202 Accepted` in the response.
13569
13818
  #
13570
- # * If the object is previously restored, Amazon S3 returns `200 OK` in
13571
- # the response.
13819
+ # * If the object is previously restored, Amazon S3 returns `200 OK`
13820
+ # in the response.
13821
+ # ^
13572
13822
  #
13573
- # **Special Errors**
13823
+ # * Special errors:
13574
13824
  #
13575
- # * * *Code: RestoreAlreadyInProgress*
13825
+ # * *Code: RestoreAlreadyInProgress*
13576
13826
  #
13577
- # * *Cause: Object restore is already in progress. (This error does
13578
- # not apply to SELECT type requests.)*
13827
+ # * *Cause: Object restore is already in progress. (This error does
13828
+ # not apply to SELECT type requests.)*
13579
13829
  #
13580
- # * *HTTP Status Code: 409 Conflict*
13830
+ # * *HTTP Status Code: 409 Conflict*
13581
13831
  #
13582
- # * *SOAP Fault Code Prefix: Client*
13832
+ # * *SOAP Fault Code Prefix: Client*
13583
13833
  #
13584
- # * * *Code: GlacierExpeditedRetrievalNotAvailable*
13834
+ # * * *Code: GlacierExpeditedRetrievalNotAvailable*
13585
13835
  #
13586
- # * *Cause: expedited retrievals are currently not available. Try
13587
- # again later. (Returned if there is insufficient capacity to
13588
- # process the Expedited request. This error applies only to
13589
- # Expedited retrievals and not to S3 Standard or Bulk retrievals.)*
13836
+ # * *Cause: expedited retrievals are currently not available. Try
13837
+ # again later. (Returned if there is insufficient capacity to
13838
+ # process the Expedited request. This error applies only to
13839
+ # Expedited retrievals and not to S3 Standard or Bulk
13840
+ # retrievals.)*
13590
13841
  #
13591
- # * *HTTP Status Code: 503*
13842
+ # * *HTTP Status Code: 503*
13592
13843
  #
13593
- # * *SOAP Fault Code Prefix: N/A*
13844
+ # * *SOAP Fault Code Prefix: N/A*
13594
13845
  #
13595
- # **Related Resources**
13846
+ # The following operations are related to `RestoreObject`:
13596
13847
  #
13597
- # * [PutBucketLifecycleConfiguration][11]
13848
+ # * [PutBucketLifecycleConfiguration][9]
13598
13849
  #
13599
- # * [GetBucketNotificationConfiguration][13]
13850
+ # * [GetBucketNotificationConfiguration][11]
13600
13851
  #
13601
- # * [SQL Reference for Amazon S3 Select and S3 Glacier Select ][7] in
13602
- # the *Amazon S3 User Guide*
13603
13852
  #
13604
13853
  #
13605
- #
13606
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
13607
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
13608
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html
13609
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
13610
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
13611
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
13612
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html
13613
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
13614
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html
13615
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
13616
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
13617
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
13618
- # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html
13854
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
13855
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
13856
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
13857
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
13858
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
13859
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
13860
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html
13861
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
13862
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
13863
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
13864
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html
13619
13865
  #
13620
13866
  # @option params [required, String] :bucket
13621
13867
  # The bucket name containing the object to restore.
@@ -13628,14 +13874,14 @@ module Aws::S3
13628
13874
  # name. For more information about access point ARNs, see [Using access
13629
13875
  # points][1] in the *Amazon S3 User Guide*.
13630
13876
  #
13631
- # When using this action with Amazon S3 on Outposts, you must direct
13877
+ # When you use this action with Amazon S3 on Outposts, you must direct
13632
13878
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
13633
13879
  # takes the form `
13634
13880
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
13635
- # When using this action with S3 on Outposts through the Amazon Web
13636
- # Services SDKs, you provide the Outposts bucket ARN in place of the
13637
- # bucket name. For more information about S3 on Outposts ARNs, see
13638
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
13881
+ # When you use this action with S3 on Outposts through the Amazon Web
13882
+ # Services SDKs, you provide the Outposts access point ARN in place of
13883
+ # the bucket name. For more information about S3 on Outposts ARNs, see
13884
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
13639
13885
  #
13640
13886
  #
13641
13887
  #
@@ -13828,108 +14074,99 @@ module Aws::S3
13828
14074
  # from Objects][1] and [SELECT Command][2] in the *Amazon S3 User
13829
14075
  # Guide*.
13830
14076
  #
13831
- # For more information about using SQL with Amazon S3 Select, see [ SQL
13832
- # Reference for Amazon S3 Select and S3 Glacier Select][3] in the
13833
- # *Amazon S3 User Guide*.
13834
- #
13835
- #
13836
- #
13837
- # **Permissions**
13838
- #
13839
- # You must have `s3:GetObject` permission for this operation. Amazon S3
13840
- # Select does not support anonymous access. For more information about
13841
- # permissions, see [Specifying Permissions in a Policy][4] in the
13842
- # *Amazon S3 User Guide*.
13843
14077
  #
13844
14078
  #
14079
+ # Permissions
13845
14080
  #
13846
- # *Object Data Formats*
14081
+ # : You must have `s3:GetObject` permission for this operation. Amazon
14082
+ # S3 Select does not support anonymous access. For more information
14083
+ # about permissions, see [Specifying Permissions in a Policy][3] in
14084
+ # the *Amazon S3 User Guide*.
13847
14085
  #
13848
- # You can use Amazon S3 Select to query objects that have the following
13849
- # format properties:
13850
- #
13851
- # * *CSV, JSON, and Parquet* - Objects must be in CSV, JSON, or Parquet
13852
- # format.
13853
- #
13854
- # * *UTF-8* - UTF-8 is the only encoding type Amazon S3 Select supports.
13855
- #
13856
- # * *GZIP or BZIP2* - CSV and JSON files can be compressed using GZIP or
13857
- # BZIP2. GZIP and BZIP2 are the only compression formats that Amazon
13858
- # S3 Select supports for CSV and JSON files. Amazon S3 Select supports
13859
- # columnar compression for Parquet using GZIP or Snappy. Amazon S3
13860
- # Select does not support whole-object compression for Parquet
13861
- # objects.
14086
+ # Object Data Formats
13862
14087
  #
13863
- # * *Server-side encryption* - Amazon S3 Select supports querying
13864
- # objects that are protected with server-side encryption.
14088
+ # : You can use Amazon S3 Select to query objects that have the
14089
+ # following format properties:
13865
14090
  #
13866
- # For objects that are encrypted with customer-provided encryption
13867
- # keys (SSE-C), you must use HTTPS, and you must use the headers that
13868
- # are documented in the [GetObject][5]. For more information about
13869
- # SSE-C, see [Server-Side Encryption (Using Customer-Provided
13870
- # Encryption Keys)][6] in the *Amazon S3 User Guide*.
14091
+ # * *CSV, JSON, and Parquet* - Objects must be in CSV, JSON, or
14092
+ # Parquet format.
13871
14093
  #
13872
- # For objects that are encrypted with Amazon S3 managed encryption
13873
- # keys (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS),
13874
- # server-side encryption is handled transparently, so you don't need
13875
- # to specify anything. For more information about server-side
13876
- # encryption, including SSE-S3 and SSE-KMS, see [Protecting Data Using
13877
- # Server-Side Encryption][7] in the *Amazon S3 User Guide*.
14094
+ # * *UTF-8* - UTF-8 is the only encoding type Amazon S3 Select
14095
+ # supports.
13878
14096
  #
13879
- # **Working with the Response Body**
14097
+ # * *GZIP or BZIP2* - CSV and JSON files can be compressed using GZIP
14098
+ # or BZIP2. GZIP and BZIP2 are the only compression formats that
14099
+ # Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select
14100
+ # supports columnar compression for Parquet using GZIP or Snappy.
14101
+ # Amazon S3 Select does not support whole-object compression for
14102
+ # Parquet objects.
13880
14103
  #
13881
- # Given the response size is unknown, Amazon S3 Select streams the
13882
- # response as a series of messages and includes a `Transfer-Encoding`
13883
- # header with `chunked` as its value in the response. For more
13884
- # information, see [Appendix: SelectObjectContent Response][8].
14104
+ # * *Server-side encryption* - Amazon S3 Select supports querying
14105
+ # objects that are protected with server-side encryption.
13885
14106
  #
14107
+ # For objects that are encrypted with customer-provided encryption
14108
+ # keys (SSE-C), you must use HTTPS, and you must use the headers
14109
+ # that are documented in the [GetObject][4]. For more information
14110
+ # about SSE-C, see [Server-Side Encryption (Using Customer-Provided
14111
+ # Encryption Keys)][5] in the *Amazon S3 User Guide*.
13886
14112
  #
14113
+ # For objects that are encrypted with Amazon S3 managed keys
14114
+ # (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS), server-side
14115
+ # encryption is handled transparently, so you don't need to specify
14116
+ # anything. For more information about server-side encryption,
14117
+ # including SSE-S3 and SSE-KMS, see [Protecting Data Using
14118
+ # Server-Side Encryption][6] in the *Amazon S3 User Guide*.
13887
14119
  #
13888
- # **GetObject Support**
14120
+ # Working with the Response Body
13889
14121
  #
13890
- # The `SelectObjectContent` action does not support the following
13891
- # `GetObject` functionality. For more information, see [GetObject][5].
14122
+ # : Given the response size is unknown, Amazon S3 Select streams the
14123
+ # response as a series of messages and includes a `Transfer-Encoding`
14124
+ # header with `chunked` as its value in the response. For more
14125
+ # information, see [Appendix: SelectObjectContent Response][7].
13892
14126
  #
13893
- # * `Range`: Although you can specify a scan range for an Amazon S3
13894
- # Select request (see [SelectObjectContentRequest - ScanRange][9] in
13895
- # the request parameters), you cannot specify the range of bytes of an
13896
- # object to return.
14127
+ # GetObject Support
13897
14128
  #
13898
- # * GLACIER, DEEP\_ARCHIVE and REDUCED\_REDUNDANCY storage classes: You
13899
- # cannot specify the GLACIER, DEEP\_ARCHIVE, or `REDUCED_REDUNDANCY`
13900
- # storage classes. For more information, about storage classes see
13901
- # [Storage Classes][10] in the *Amazon S3 User Guide*.
14129
+ # : The `SelectObjectContent` action does not support the following
14130
+ # `GetObject` functionality. For more information, see [GetObject][4].
13902
14131
  #
14132
+ # * `Range`: Although you can specify a scan range for an Amazon S3
14133
+ # Select request (see [SelectObjectContentRequest - ScanRange][8] in
14134
+ # the request parameters), you cannot specify the range of bytes of
14135
+ # an object to return.
13903
14136
  #
14137
+ # * GLACIER, DEEP\_ARCHIVE and REDUCED\_REDUNDANCY storage classes:
14138
+ # You cannot specify the GLACIER, DEEP\_ARCHIVE, or
14139
+ # `REDUCED_REDUNDANCY` storage classes. For more information, about
14140
+ # storage classes see [Storage Classes][9] in the *Amazon S3 User
14141
+ # Guide*.
13904
14142
  #
13905
- # **Special Errors**
14143
+ # Special Errors
13906
14144
  #
13907
- # For a list of special errors for this operation, see [List of SELECT
13908
- # Object Content Error Codes][11]
14145
+ # : For a list of special errors for this operation, see [List of SELECT
14146
+ # Object Content Error Codes][10]
13909
14147
  #
13910
- # **Related Resources**
14148
+ # The following operations are related to `SelectObjectContent`:
13911
14149
  #
13912
- # * [GetObject][5]
14150
+ # * [GetObject][4]
13913
14151
  #
13914
- # * [GetBucketLifecycleConfiguration][12]
14152
+ # * [GetBucketLifecycleConfiguration][11]
13915
14153
  #
13916
- # * [PutBucketLifecycleConfiguration][13]
14154
+ # * [PutBucketLifecycleConfiguration][12]
13917
14155
  #
13918
14156
  #
13919
14157
  #
13920
14158
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html
13921
14159
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-glacier-select-sql-reference-select.html
13922
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html
13923
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
13924
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
13925
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
13926
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
13927
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
13928
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
13929
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro
13930
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
13931
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
13932
- # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
14160
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
14161
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
14162
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
14163
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
14164
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
14165
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
14166
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro
14167
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
14168
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
14169
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
13933
14170
  #
13934
14171
  # @option params [required, String] :bucket
13935
14172
  # The S3 bucket.
@@ -14279,27 +14516,35 @@ module Aws::S3
14279
14516
  # upload API, go to [Multipart Upload and Permissions][6] in the *Amazon
14280
14517
  # S3 User Guide*.
14281
14518
  #
14282
- # You can optionally request server-side encryption where Amazon S3
14519
+ # Server-side encryption is for data encryption at rest. Amazon S3
14283
14520
  # encrypts your data as it writes it to disks in its data centers and
14284
- # decrypts it for you when you access it. You have the option of
14285
- # providing your own encryption key, or you can use the Amazon Web
14286
- # Services managed encryption keys. If you choose to provide your own
14521
+ # decrypts it when you access it. You have three mutually exclusive
14522
+ # options to protect data using server-side encryption in Amazon S3,
14523
+ # depending on how you choose to manage the encryption keys.
14524
+ # Specifically, the encryption key options are Amazon S3 managed keys
14525
+ # (SSE-S3), Amazon Web Services KMS keys (SSE-KMS), and
14526
+ # Customer-Provided Keys (SSE-C). Amazon S3 encrypts data with
14527
+ # server-side encryption using Amazon S3 managed keys (SSE-S3) by
14528
+ # default. You can optionally tell Amazon S3 to encrypt data at rest
14529
+ # using server-side encryption with other key options. The option you
14530
+ # use depends on whether you want to use KMS keys (SSE-KMS) or provide
14531
+ # your own encryption key (SSE-C). If you choose to provide your own
14287
14532
  # encryption key, the request headers you provide in the request must
14288
14533
  # match the headers you used in the request to initiate the upload by
14289
14534
  # using [CreateMultipartUpload][2]. For more information, go to [Using
14290
14535
  # Server-Side Encryption][7] in the *Amazon S3 User Guide*.
14291
14536
  #
14292
14537
  # Server-side encryption is supported by the S3 Multipart Upload
14293
- # actions. Unless you are using a customer-provided encryption key, you
14294
- # don't need to specify the encryption parameters in each UploadPart
14295
- # request. Instead, you only need to specify the server-side encryption
14296
- # parameters in the initial Initiate Multipart request. For more
14297
- # information, see [CreateMultipartUpload][2].
14538
+ # actions. Unless you are using a customer-provided encryption key
14539
+ # (SSE-C), you don't need to specify the encryption parameters in each
14540
+ # UploadPart request. Instead, you only need to specify the server-side
14541
+ # encryption parameters in the initial Initiate Multipart request. For
14542
+ # more information, see [CreateMultipartUpload][2].
14298
14543
  #
14299
14544
  # If you requested server-side encryption using a customer-provided
14300
- # encryption key in your initiate multipart upload request, you must
14301
- # provide identical encryption information in each part upload using the
14302
- # following headers.
14545
+ # encryption key (SSE-C) in your initiate multipart upload request, you
14546
+ # must provide identical encryption information in each part upload
14547
+ # using the following headers.
14303
14548
  #
14304
14549
  # * x-amz-server-side-encryption-customer-algorithm
14305
14550
  #
@@ -14307,7 +14552,7 @@ module Aws::S3
14307
14552
  #
14308
14553
  # * x-amz-server-side-encryption-customer-key-MD5
14309
14554
  #
14310
- # **Special Errors**
14555
+ # `UploadPart` has the following special errors:
14311
14556
  #
14312
14557
  # * * *Code: NoSuchUpload*
14313
14558
  #
@@ -14319,7 +14564,7 @@ module Aws::S3
14319
14564
  #
14320
14565
  # * *SOAP Fault Code Prefix: Client*
14321
14566
  #
14322
- # **Related Resources**
14567
+ # The following operations are related to `UploadPart`:
14323
14568
  #
14324
14569
  # * [CreateMultipartUpload][2]
14325
14570
  #
@@ -14359,14 +14604,14 @@ module Aws::S3
14359
14604
  # name. For more information about access point ARNs, see [Using access
14360
14605
  # points][1] in the *Amazon S3 User Guide*.
14361
14606
  #
14362
- # When using this action with Amazon S3 on Outposts, you must direct
14607
+ # When you use this action with Amazon S3 on Outposts, you must direct
14363
14608
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
14364
14609
  # takes the form `
14365
14610
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
14366
- # When using this action with S3 on Outposts through the Amazon Web
14367
- # Services SDKs, you provide the Outposts bucket ARN in place of the
14368
- # bucket name. For more information about S3 on Outposts ARNs, see
14369
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
14611
+ # When you use this action with S3 on Outposts through the Amazon Web
14612
+ # Services SDKs, you provide the Outposts access point ARN in place of
14613
+ # the bucket name. For more information about S3 on Outposts ARNs, see
14614
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
14370
14615
  #
14371
14616
  #
14372
14617
  #
@@ -14635,42 +14880,41 @@ module Aws::S3
14635
14880
  #
14636
14881
  # Amazon S3 returns `412 Precondition Failed` response code.
14637
14882
  #
14638
- # **Versioning**
14883
+ # Versioning
14639
14884
  #
14640
- # If your bucket has versioning enabled, you could have multiple
14641
- # versions of the same object. By default, `x-amz-copy-source`
14642
- # identifies the current version of the object to copy. If the current
14643
- # version is a delete marker and you don't specify a versionId in the
14644
- # `x-amz-copy-source`, Amazon S3 returns a 404 error, because the object
14645
- # does not exist. If you specify versionId in the `x-amz-copy-source`
14646
- # and the versionId is a delete marker, Amazon S3 returns an HTTP 400
14647
- # error, because you are not allowed to specify a delete marker as a
14648
- # version for the `x-amz-copy-source`.
14885
+ # : If your bucket has versioning enabled, you could have multiple
14886
+ # versions of the same object. By default, `x-amz-copy-source`
14887
+ # identifies the current version of the object to copy. If the current
14888
+ # version is a delete marker and you don't specify a versionId in the
14889
+ # `x-amz-copy-source`, Amazon S3 returns a 404 error, because the
14890
+ # object does not exist. If you specify versionId in the
14891
+ # `x-amz-copy-source` and the versionId is a delete marker, Amazon S3
14892
+ # returns an HTTP 400 error, because you are not allowed to specify a
14893
+ # delete marker as a version for the `x-amz-copy-source`.
14649
14894
  #
14650
- # You can optionally specify a specific version of the source object to
14651
- # copy by adding the `versionId` subresource as shown in the following
14652
- # example:
14895
+ # You can optionally specify a specific version of the source object
14896
+ # to copy by adding the `versionId` subresource as shown in the
14897
+ # following example:
14653
14898
  #
14654
- # `x-amz-copy-source: /bucket/object?versionId=version id`
14899
+ # `x-amz-copy-source: /bucket/object?versionId=version id`
14655
14900
  #
14656
- # **Special Errors**
14901
+ # Special errors
14902
+ # : * * *Code: NoSuchUpload*
14657
14903
  #
14658
- # * * *Code: NoSuchUpload*
14904
+ # * *Cause: The specified multipart upload does not exist. The
14905
+ # upload ID might be invalid, or the multipart upload might have
14906
+ # been aborted or completed.*
14659
14907
  #
14660
- # * *Cause: The specified multipart upload does not exist. The upload
14661
- # ID might be invalid, or the multipart upload might have been
14662
- # aborted or completed.*
14663
- #
14664
- # * *HTTP Status Code: 404 Not Found*
14908
+ # * *HTTP Status Code: 404 Not Found*
14665
14909
  #
14666
- # * * *Code: InvalidRequest*
14910
+ # * * *Code: InvalidRequest*
14667
14911
  #
14668
- # * *Cause: The specified copy source is not supported as a byte-range
14669
- # copy source.*
14912
+ # * *Cause: The specified copy source is not supported as a
14913
+ # byte-range copy source.*
14670
14914
  #
14671
- # * *HTTP Status Code: 400 Bad Request*
14915
+ # * *HTTP Status Code: 400 Bad Request*
14672
14916
  #
14673
- # **Related Resources**
14917
+ # The following operations are related to `UploadPartCopy`:
14674
14918
  #
14675
14919
  # * [CreateMultipartUpload][7]
14676
14920
  #
@@ -14709,14 +14953,14 @@ module Aws::S3
14709
14953
  # name. For more information about access point ARNs, see [Using access
14710
14954
  # points][1] in the *Amazon S3 User Guide*.
14711
14955
  #
14712
- # When using this action with Amazon S3 on Outposts, you must direct
14956
+ # When you use this action with Amazon S3 on Outposts, you must direct
14713
14957
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
14714
14958
  # takes the form `
14715
14959
  # AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com`.
14716
- # When using this action with S3 on Outposts through the Amazon Web
14717
- # Services SDKs, you provide the Outposts bucket ARN in place of the
14718
- # bucket name. For more information about S3 on Outposts ARNs, see
14719
- # [Using Amazon S3 on Outposts][2] in the *Amazon S3 User Guide*.
14960
+ # When you use this action with S3 on Outposts through the Amazon Web
14961
+ # Services SDKs, you provide the Outposts access point ARN in place of
14962
+ # the bucket name. For more information about S3 on Outposts ARNs, see
14963
+ # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
14720
14964
  #
14721
14965
  #
14722
14966
  #
@@ -14866,45 +15110,45 @@ module Aws::S3
14866
15110
  # * {Types::UploadPartCopyOutput#request_charged #request_charged} => String
14867
15111
  #
14868
15112
  #
14869
- # @example Example: To upload a part by copying byte range from an existing object as data source
15113
+ # @example Example: To upload a part by copying data from an existing object as data source
14870
15114
  #
14871
- # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
14872
- # # data source.
15115
+ # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
14873
15116
  #
14874
15117
  # resp = client.upload_part_copy({
14875
15118
  # bucket: "examplebucket",
14876
15119
  # copy_source: "/bucketname/sourceobjectkey",
14877
- # copy_source_range: "bytes=1-100000",
14878
15120
  # key: "examplelargeobject",
14879
- # part_number: 2,
15121
+ # part_number: 1,
14880
15122
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
14881
15123
  # })
14882
15124
  #
14883
15125
  # resp.to_h outputs the following:
14884
15126
  # {
14885
15127
  # copy_part_result: {
14886
- # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
14887
- # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
15128
+ # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
15129
+ # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
14888
15130
  # },
14889
15131
  # }
14890
15132
  #
14891
- # @example Example: To upload a part by copying data from an existing object as data source
15133
+ # @example Example: To upload a part by copying byte range from an existing object as data source
14892
15134
  #
14893
- # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
15135
+ # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
15136
+ # # data source.
14894
15137
  #
14895
15138
  # resp = client.upload_part_copy({
14896
15139
  # bucket: "examplebucket",
14897
15140
  # copy_source: "/bucketname/sourceobjectkey",
15141
+ # copy_source_range: "bytes=1-100000",
14898
15142
  # key: "examplelargeobject",
14899
- # part_number: 1,
15143
+ # part_number: 2,
14900
15144
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
14901
15145
  # })
14902
15146
  #
14903
15147
  # resp.to_h outputs the following:
14904
15148
  # {
14905
15149
  # copy_part_result: {
14906
- # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
14907
- # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
15150
+ # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
15151
+ # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
14908
15152
  # },
14909
15153
  # }
14910
15154
  #
@@ -15026,9 +15270,7 @@ module Aws::S3
15026
15270
  #
15027
15271
  # @option params [Integer] :status_code
15028
15272
  # The integer status code for an HTTP response of a corresponding
15029
- # `GetObject` request.
15030
- #
15031
- # **Status Codes**
15273
+ # `GetObject` request. The following is a list of status codes.
15032
15274
  #
15033
15275
  # * `200 - OK`
15034
15276
  #
@@ -15240,7 +15482,7 @@ module Aws::S3
15240
15482
  #
15241
15483
  # @option params [String] :server_side_encryption
15242
15484
  # The server-side encryption algorithm used when storing requested
15243
- # object in Amazon S3 (for example, AES256, aws:kms).
15485
+ # object in Amazon S3 (for example, AES256, `aws:kms`).
15244
15486
  #
15245
15487
  # @option params [String] :sse_customer_algorithm
15246
15488
  # Encryption algorithm used if server-side encryption with a
@@ -15249,8 +15491,8 @@ module Aws::S3
15249
15491
  #
15250
15492
  # @option params [String] :ssekms_key_id
15251
15493
  # If present, specifies the ID of the Amazon Web Services Key Management
15252
- # Service (Amazon Web Services KMS) symmetric customer managed key that
15253
- # was used for stored in Amazon S3 object.
15494
+ # Service (Amazon Web Services KMS) symmetric encryption customer
15495
+ # managed key that was used for stored in Amazon S3 object.
15254
15496
  #
15255
15497
  # @option params [String] :sse_customer_key_md5
15256
15498
  # 128-bit MD5 digest of customer-provided encryption key used in Amazon
@@ -15354,7 +15596,7 @@ module Aws::S3
15354
15596
  params: params,
15355
15597
  config: config)
15356
15598
  context[:gem_name] = 'aws-sdk-s3'
15357
- context[:gem_version] = '1.121.0'
15599
+ context[:gem_version] = '1.122.0'
15358
15600
  Seahorse::Client::Request.new(handlers, context)
15359
15601
  end
15360
15602