aws-sdk-s3 1.124.0 → 1.128.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -28,6 +28,7 @@ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/request_compression.rb'
31
32
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
33
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
34
  require 'aws-sdk-core/plugins/sign.rb'
@@ -96,6 +97,7 @@ module Aws::S3
96
97
  add_plugin(Aws::Plugins::TransferEncoding)
97
98
  add_plugin(Aws::Plugins::HttpChecksum)
98
99
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
100
+ add_plugin(Aws::Plugins::RequestCompression)
99
101
  add_plugin(Aws::Plugins::DefaultsMode)
100
102
  add_plugin(Aws::Plugins::RecursionDetection)
101
103
  add_plugin(Aws::Plugins::Sign)
@@ -235,6 +237,10 @@ module Aws::S3
235
237
  # Set to true to disable SDK automatically adding host prefix
236
238
  # to default service endpoint when available.
237
239
  #
240
+ # @option options [Boolean] :disable_request_compression (false)
241
+ # When set to 'true' the request body will not be compressed
242
+ # for supported operations.
243
+ #
238
244
  # @option options [String] :endpoint
239
245
  # The client endpoint is normally constructed from the `:region`
240
246
  # option. You should only configure an `:endpoint` when connecting
@@ -292,6 +298,11 @@ module Aws::S3
292
298
  # Used when loading credentials from the shared credentials file
293
299
  # at HOME/.aws/credentials. When not specified, 'default' is used.
294
300
  #
301
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
302
+ # The minimum size in bytes that triggers compression for request
303
+ # bodies. The value must be non-negative integer value between 0
304
+ # and 10485780 bytes inclusive.
305
+ #
295
306
  # @option options [Boolean] :require_https_for_sse_cpk (true)
296
307
  # When `true`, the endpoint **must** be HTTPS for all operations
297
308
  # where server-side-encryption is used with customer-provided keys.
@@ -513,7 +524,7 @@ module Aws::S3
513
524
  # When you use this action with S3 on Outposts through the Amazon Web
514
525
  # Services SDKs, you provide the Outposts access point ARN in place of
515
526
  # the bucket name. For more information about S3 on Outposts ARNs, see
516
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
527
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
517
528
  #
518
529
  #
519
530
  #
@@ -702,7 +713,7 @@ module Aws::S3
702
713
  # When you use this action with S3 on Outposts through the Amazon Web
703
714
  # Services SDKs, you provide the Outposts access point ARN in place of
704
715
  # the bucket name. For more information about S3 on Outposts ARNs, see
705
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
716
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
706
717
  #
707
718
  #
708
719
  #
@@ -963,11 +974,12 @@ module Aws::S3
963
974
  #
964
975
  # Metadata
965
976
  #
966
- # : When copying an object, you can preserve all metadata (default) or
967
- # specify new metadata. However, the ACL is not preserved and is set
968
- # to private for the user making the request. To override the default
969
- # ACL setting, specify a new ACL when generating a copy request. For
970
- # more information, see [Using ACLs][5].
977
+ # : When copying an object, you can preserve all metadata (the default)
978
+ # or specify new metadata. However, the access control list (ACL) is
979
+ # not preserved and is set to private for the user making the request.
980
+ # To override the default ACL setting, specify a new ACL when
981
+ # generating a copy request. For more information, see [Using
982
+ # ACLs][5].
971
983
  #
972
984
  # To specify whether you want the object metadata copied from the
973
985
  # source object or replaced with metadata provided in the request, you
@@ -1032,25 +1044,26 @@ module Aws::S3
1032
1044
  # of encryption configuration that uses server-side encryption with
1033
1045
  # Amazon S3 managed keys (SSE-S3). If the destination bucket has a
1034
1046
  # default encryption configuration that uses server-side encryption
1035
- # with an Key Management Service (KMS) key (SSE-KMS), or a
1036
- # customer-provided encryption key (SSE-C), Amazon S3 uses the
1037
- # corresponding KMS key, or a customer-provided key to encrypt the
1038
- # target object copy.
1047
+ # with Key Management Service (KMS) keys (SSE-KMS), dual-layer
1048
+ # server-side encryption with Amazon Web Services KMS keys (DSSE-KMS),
1049
+ # or server-side encryption with customer-provided encryption keys
1050
+ # (SSE-C), Amazon S3 uses the corresponding KMS key, or a
1051
+ # customer-provided key to encrypt the target object copy.
1039
1052
  #
1040
- # When you perform a CopyObject operation, if you want to use a
1053
+ # When you perform a `CopyObject` operation, if you want to use a
1041
1054
  # different type of encryption setting for the target object, you can
1042
1055
  # use other appropriate encryption-related headers to encrypt the
1043
1056
  # target object with a KMS key, an Amazon S3 managed key, or a
1044
1057
  # customer-provided key. With server-side encryption, Amazon S3
1045
- # encrypts your data as it writes it to disks in its data centers and
1046
- # decrypts the data when you access it. If the encryption setting in
1047
- # your request is different from the default encryption configuration
1048
- # of the destination bucket, the encryption setting in your request
1049
- # takes precedence. If the source object for the copy is stored in
1050
- # Amazon S3 using SSE-C, you must provide the necessary encryption
1051
- # information in your request so that Amazon S3 can decrypt the object
1052
- # for copying. For more information about server-side encryption, see
1053
- # [Using Server-Side Encryption][8].
1058
+ # encrypts your data as it writes your data to disks in its data
1059
+ # centers and decrypts the data when you access it. If the encryption
1060
+ # setting in your request is different from the default encryption
1061
+ # configuration of the destination bucket, the encryption setting in
1062
+ # your request takes precedence. If the source object for the copy is
1063
+ # stored in Amazon S3 using SSE-C, you must provide the necessary
1064
+ # encryption information in your request so that Amazon S3 can decrypt
1065
+ # the object for copying. For more information about server-side
1066
+ # encryption, see [Using Server-Side Encryption][8].
1054
1067
  #
1055
1068
  # If a target object uses SSE-KMS, you can enable an S3 Bucket Key for
1056
1069
  # the object. For more information, see [Amazon S3 Bucket Keys][9] in
@@ -1062,16 +1075,16 @@ module Aws::S3
1062
1075
  # ACL-based permissions. By default, all objects are private. Only the
1063
1076
  # owner has full access control. When adding a new object, you can
1064
1077
  # grant permissions to individual Amazon Web Services accounts or to
1065
- # predefined groups defined by Amazon S3. These permissions are then
1066
- # added to the ACL on the object. For more information, see [Access
1067
- # Control List (ACL) Overview][10] and [Managing ACLs Using the REST
1068
- # API][11].
1078
+ # predefined groups that are defined by Amazon S3. These permissions
1079
+ # are then added to the ACL on the object. For more information, see
1080
+ # [Access Control List (ACL) Overview][10] and [Managing ACLs Using
1081
+ # the REST API][11].
1069
1082
  #
1070
1083
  # If the bucket that you're copying objects to uses the bucket owner
1071
1084
  # enforced setting for S3 Object Ownership, ACLs are disabled and no
1072
1085
  # longer affect permissions. Buckets that use this setting only accept
1073
- # PUT requests that don't specify an ACL or PUT requests that specify
1074
- # bucket owner full control ACLs, such as the
1086
+ # `PUT` requests that don't specify an ACL or `PUT` requests that
1087
+ # specify bucket owner full control ACLs, such as the
1075
1088
  # `bucket-owner-full-control` canned ACL or an equivalent form of this
1076
1089
  # ACL expressed in the XML format.
1077
1090
  #
@@ -1088,13 +1101,13 @@ module Aws::S3
1088
1101
  #
1089
1102
  # : When copying an object, if it has a checksum, that checksum will be
1090
1103
  # copied to the new object by default. When you copy the object over,
1091
- # you may optionally specify a different checksum algorithm to use
1104
+ # you can optionally specify a different checksum algorithm to use
1092
1105
  # with the `x-amz-checksum-algorithm` header.
1093
1106
  #
1094
1107
  # Storage Class Options
1095
1108
  #
1096
1109
  # : You can use the `CopyObject` action to change the storage class of
1097
- # an object that is already stored in Amazon S3 using the
1110
+ # an object that is already stored in Amazon S3 by using the
1098
1111
  # `StorageClass` parameter. For more information, see [Storage
1099
1112
  # Classes][13] in the *Amazon S3 User Guide*.
1100
1113
  #
@@ -1105,10 +1118,10 @@ module Aws::S3
1105
1118
  #
1106
1119
  # Versioning
1107
1120
  #
1108
- # : By default, `x-amz-copy-source` identifies the current version of an
1109
- # object to copy. If the current version is a delete marker, Amazon S3
1110
- # behaves as if the object was deleted. To copy a different version,
1111
- # use the `versionId` subresource.
1121
+ # : By default, `x-amz-copy-source` header identifies the current
1122
+ # version of an object to copy. If the current version is a delete
1123
+ # marker, Amazon S3 behaves as if the object was deleted. To copy a
1124
+ # different version, use the `versionId` subresource.
1112
1125
  #
1113
1126
  # If you enable versioning on the target bucket, Amazon S3 generates a
1114
1127
  # unique version ID for the object being copied. This version ID is
@@ -1168,7 +1181,7 @@ module Aws::S3
1168
1181
  # When you use this action with S3 on Outposts through the Amazon Web
1169
1182
  # Services SDKs, you provide the Outposts access point ARN in place of
1170
1183
  # the bucket name. For more information about S3 on Outposts ARNs, see
1171
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
1184
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
1172
1185
  #
1173
1186
  #
1174
1187
  #
@@ -1302,7 +1315,7 @@ module Aws::S3
1302
1315
  #
1303
1316
  # @option params [String] :server_side_encryption
1304
1317
  # The server-side encryption algorithm used when storing this object in
1305
- # Amazon S3 (for example, AES256, `aws:kms`).
1318
+ # Amazon S3 (for example, `AES256`, `aws:kms`, `aws:kms:dsse`).
1306
1319
  #
1307
1320
  # @option params [String] :storage_class
1308
1321
  # By default, Amazon S3 uses the STANDARD Storage Class to store newly
@@ -1341,13 +1354,12 @@ module Aws::S3
1341
1354
  # ensure that the encryption key was transmitted without error.
1342
1355
  #
1343
1356
  # @option params [String] :ssekms_key_id
1344
- # Specifies the Amazon Web Services KMS key ID to use for object
1345
- # encryption. All GET and PUT requests for an object protected by Amazon
1346
- # Web Services KMS will fail if not made via SSL or using SigV4. For
1347
- # information about configuring using any of the officially supported
1348
- # Amazon Web Services SDKs and Amazon Web Services CLI, see [Specifying
1349
- # the Signature Version in Request Authentication][1] in the *Amazon S3
1350
- # User Guide*.
1357
+ # Specifies the KMS key ID to use for object encryption. All GET and PUT
1358
+ # requests for an object protected by KMS will fail if they're not made
1359
+ # via SSL or using SigV4. For information about configuring any of the
1360
+ # officially supported Amazon Web Services SDKs and Amazon Web Services
1361
+ # CLI, see [Specifying the Signature Version in Request
1362
+ # Authentication][1] in the *Amazon S3 User Guide*.
1351
1363
  #
1352
1364
  #
1353
1365
  #
@@ -1360,9 +1372,9 @@ module Aws::S3
1360
1372
  #
1361
1373
  # @option params [Boolean] :bucket_key_enabled
1362
1374
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
1363
- # encryption with server-side encryption using AWS KMS (SSE-KMS).
1364
- # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
1365
- # for object encryption with SSE-KMS.
1375
+ # encryption with server-side encryption using Key Management Service
1376
+ # (KMS) keys (SSE-KMS). Setting this header to `true` causes Amazon S3
1377
+ # to use an S3 Bucket Key for object encryption with SSE-KMS.
1366
1378
  #
1367
1379
  # Specifying this header with a COPY action doesn’t affect bucket-level
1368
1380
  # settings for S3 Bucket Key.
@@ -1545,8 +1557,8 @@ module Aws::S3
1545
1557
  # (Ireland) Region. For more information, see [Accessing a bucket][3].
1546
1558
  #
1547
1559
  # <note markdown="1"> If you send your create bucket request to the `s3.amazonaws.com`
1548
- # endpoint, the request goes to the us-east-1 Region. Accordingly, the
1549
- # signature calculations in Signature Version 4 must use us-east-1 as
1560
+ # endpoint, the request goes to the `us-east-1` Region. Accordingly, the
1561
+ # signature calculations in Signature Version 4 must use `us-east-1` as
1550
1562
  # the Region, even if the location constraint in the request specifies
1551
1563
  # another Region where the bucket is to be created. If you create a
1552
1564
  # bucket in a Region other than US East (N. Virginia), your application
@@ -1555,108 +1567,62 @@ module Aws::S3
1555
1567
  #
1556
1568
  # </note>
1557
1569
  #
1558
- # Access control lists (ACLs)
1559
- #
1560
- # : When creating a bucket using this operation, you can optionally
1561
- # configure the bucket ACL to specify the accounts or groups that
1562
- # should be granted specific permissions on the bucket.
1563
- #
1564
- # If your CreateBucket request sets bucket owner enforced for S3
1565
- # Object Ownership and specifies a bucket ACL that provides access to
1566
- # an external Amazon Web Services account, your request fails with a
1567
- # `400` error and returns the `InvalidBucketAclWithObjectOwnership`
1568
- # error code. For more information, see [Controlling object
1569
- # ownership][5] in the *Amazon S3 User Guide*.
1570
- #
1571
- # There are two ways to grant the appropriate permissions using the
1572
- # request headers.
1573
- #
1574
- # * Specify a canned ACL using the `x-amz-acl` request header. Amazon
1575
- # S3 supports a set of predefined ACLs, known as *canned ACLs*. Each
1576
- # canned ACL has a predefined set of grantees and permissions. For
1577
- # more information, see [Canned ACL][6].
1578
- #
1579
- # * Specify access permissions explicitly using the
1580
- # `x-amz-grant-read`, `x-amz-grant-write`, `x-amz-grant-read-acp`,
1581
- # `x-amz-grant-write-acp`, and `x-amz-grant-full-control` headers.
1582
- # These headers map to the set of permissions Amazon S3 supports in
1583
- # an ACL. For more information, see [Access control list (ACL)
1584
- # overview][7].
1585
- #
1586
- # You specify each grantee as a type=value pair, where the type is
1587
- # one of the following:
1588
- #
1589
- # * `id` – if the value specified is the canonical user ID of an
1590
- # Amazon Web Services account
1591
- #
1592
- # * `uri` – if you are granting permissions to a predefined group
1593
- #
1594
- # * `emailAddress` – if the value specified is the email address of
1595
- # an Amazon Web Services account
1596
- #
1597
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in
1598
- # the following Amazon Web Services Regions:
1599
- #
1600
- # * US East (N. Virginia)
1601
- #
1602
- # * US West (N. California)
1603
- #
1604
- # * US West (Oregon)
1605
- #
1606
- # * Asia Pacific (Singapore)
1607
- #
1608
- # * Asia Pacific (Sydney)
1609
- #
1610
- # * Asia Pacific (Tokyo)
1611
- #
1612
- # * Europe (Ireland)
1613
- #
1614
- # * South America (São Paulo)
1615
- #
1616
- # For a list of all the Amazon S3 supported Regions and endpoints,
1617
- # see [Regions and Endpoints][8] in the Amazon Web Services
1618
- # General Reference.
1619
- #
1620
- # </note>
1621
- #
1622
- # For example, the following `x-amz-grant-read` header grants the
1623
- # Amazon Web Services accounts identified by account IDs permissions
1624
- # to read object data and its metadata:
1625
- #
1626
- # `x-amz-grant-read: id="11112222333", id="444455556666" `
1627
- #
1628
- # <note markdown="1"> You can use either a canned ACL or specify access permissions
1629
- # explicitly. You cannot do both.
1630
- #
1631
- # </note>
1632
- #
1633
1570
  # Permissions
1634
1571
  #
1635
1572
  # : In addition to `s3:CreateBucket`, the following permissions are
1636
- # required when your CreateBucket includes specific headers:
1573
+ # required when your `CreateBucket` request includes specific headers:
1637
1574
  #
1638
- # * **ACLs** - If your `CreateBucket` request specifies ACL
1639
- # permissions and the ACL is public-read, public-read-write,
1640
- # authenticated-read, or if you specify access permissions
1641
- # explicitly through any other ACL, both `s3:CreateBucket` and
1642
- # `s3:PutBucketAcl` permissions are needed. If the ACL the
1643
- # `CreateBucket` request is private or doesn't specify any ACLs,
1644
- # only `s3:CreateBucket` permission is needed.
1575
+ # * **Access control lists (ACLs)** - If your `CreateBucket` request
1576
+ # specifies access control list (ACL) permissions and the ACL is
1577
+ # public-read, public-read-write, authenticated-read, or if you
1578
+ # specify access permissions explicitly through any other ACL, both
1579
+ # `s3:CreateBucket` and `s3:PutBucketAcl` permissions are needed. If
1580
+ # the ACL for the `CreateBucket` request is private or if the
1581
+ # request doesn't specify any ACLs, only `s3:CreateBucket`
1582
+ # permission is needed.
1645
1583
  #
1646
1584
  # * **Object Lock** - If `ObjectLockEnabledForBucket` is set to true
1647
1585
  # in your `CreateBucket` request,
1648
1586
  # `s3:PutBucketObjectLockConfiguration` and `s3:PutBucketVersioning`
1649
1587
  # permissions are required.
1650
1588
  #
1651
- # * **S3 Object Ownership** - If your CreateBucket request includes
1652
- # the `x-amz-object-ownership` header,
1653
- # `s3:PutBucketOwnershipControls` permission is required.
1589
+ # * **S3 Object Ownership** - If your `CreateBucket` request includes
1590
+ # the `x-amz-object-ownership` header, then the
1591
+ # `s3:PutBucketOwnershipControls` permission is required. By
1592
+ # default, `ObjectOwnership` is set to `BucketOWnerEnforced` and
1593
+ # ACLs are disabled. We recommend keeping ACLs disabled, except in
1594
+ # uncommon use cases where you must control access for each object
1595
+ # individually. If you want to change the `ObjectOwnership` setting,
1596
+ # you can use the `x-amz-object-ownership` header in your
1597
+ # `CreateBucket` request to set the `ObjectOwnership` setting of
1598
+ # your choice. For more information about S3 Object Ownership, see
1599
+ # [Controlling object ownership ][5] in the *Amazon S3 User Guide*.
1600
+ #
1601
+ # * **S3 Block Public Access** - If your specific use case requires
1602
+ # granting public access to your S3 resources, you can disable Block
1603
+ # Public Access. You can create a new bucket with Block Public
1604
+ # Access enabled, then separately call the [
1605
+ # `DeletePublicAccessBlock` ][6] API. To use this operation, you
1606
+ # must have the `s3:PutBucketPublicAccessBlock` permission. By
1607
+ # default, all Block Public Access settings are enabled for new
1608
+ # buckets. To avoid inadvertent exposure of your resources, we
1609
+ # recommend keeping the S3 Block Public Access settings enabled. For
1610
+ # more information about S3 Block Public Access, see [Blocking
1611
+ # public access to your Amazon S3 storage ][5] in the *Amazon S3
1612
+ # User Guide*.
1613
+ #
1614
+ # If your `CreateBucket` request sets `BucketOwnerEnforced` for Amazon
1615
+ # S3 Object Ownership and specifies a bucket ACL that provides access to
1616
+ # an external Amazon Web Services account, your request fails with a
1617
+ # `400` error and returns the `InvalidBucketAcLWithObjectOwnership`
1618
+ # error code. For more information, see [Setting Object Ownership on an
1619
+ # existing bucket ][7] in the *Amazon S3 User Guide*.
1654
1620
  #
1655
1621
  # The following operations are related to `CreateBucket`:
1656
1622
  #
1657
- # * [PutObject][9]
1623
+ # * [PutObject][8]
1658
1624
  #
1659
- # * [DeleteBucket][10]
1625
+ # * [DeleteBucket][9]
1660
1626
  #
1661
1627
  #
1662
1628
  #
@@ -1665,11 +1631,10 @@ module Aws::S3
1665
1631
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro
1666
1632
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html
1667
1633
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
1668
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
1669
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html
1670
- # [8]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
1671
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1672
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
1634
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html
1635
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-ownership-existing-bucket.html
1636
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1637
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
1673
1638
  #
1674
1639
  # @option params [String] :acl
1675
1640
  # The canned ACL to apply to the bucket.
@@ -1726,33 +1691,33 @@ module Aws::S3
1726
1691
  # * {Types::CreateBucketOutput#location #location} => String
1727
1692
  #
1728
1693
  #
1729
- # @example Example: To create a bucket in a specific region
1694
+ # @example Example: To create a bucket
1730
1695
  #
1731
- # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1696
+ # # The following example creates a bucket.
1732
1697
  #
1733
1698
  # resp = client.create_bucket({
1734
1699
  # bucket: "examplebucket",
1735
- # create_bucket_configuration: {
1736
- # location_constraint: "eu-west-1",
1737
- # },
1738
1700
  # })
1739
1701
  #
1740
1702
  # resp.to_h outputs the following:
1741
1703
  # {
1742
- # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1704
+ # location: "/examplebucket",
1743
1705
  # }
1744
1706
  #
1745
- # @example Example: To create a bucket
1707
+ # @example Example: To create a bucket in a specific region
1746
1708
  #
1747
- # # The following example creates a bucket.
1709
+ # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1748
1710
  #
1749
1711
  # resp = client.create_bucket({
1750
1712
  # bucket: "examplebucket",
1713
+ # create_bucket_configuration: {
1714
+ # location_constraint: "eu-west-1",
1715
+ # },
1751
1716
  # })
1752
1717
  #
1753
1718
  # resp.to_h outputs the following:
1754
1719
  # {
1755
- # location: "/examplebucket",
1720
+ # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1756
1721
  # }
1757
1722
  #
1758
1723
  # @example Request syntax with placeholder values
@@ -2072,7 +2037,7 @@ module Aws::S3
2072
2037
  # When you use this action with S3 on Outposts through the Amazon Web
2073
2038
  # Services SDKs, you provide the Outposts access point ARN in place of
2074
2039
  # the bucket name. For more information about S3 on Outposts ARNs, see
2075
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
2040
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
2076
2041
  #
2077
2042
  #
2078
2043
  #
@@ -2128,7 +2093,7 @@ module Aws::S3
2128
2093
  #
2129
2094
  # @option params [String] :server_side_encryption
2130
2095
  # The server-side encryption algorithm used when storing this object in
2131
- # Amazon S3 (for example, AES256, `aws:kms`).
2096
+ # Amazon S3 (for example, `AES256`, `aws:kms`).
2132
2097
  #
2133
2098
  # @option params [String] :storage_class
2134
2099
  # By default, Amazon S3 uses the STANDARD Storage Class to store newly
@@ -2166,11 +2131,11 @@ module Aws::S3
2166
2131
  # @option params [String] :ssekms_key_id
2167
2132
  # Specifies the ID of the symmetric encryption customer managed key to
2168
2133
  # use for object encryption. All GET and PUT requests for an object
2169
- # protected by Amazon Web Services KMS will fail if not made via SSL or
2170
- # using SigV4. For information about configuring using any of the
2171
- # officially supported Amazon Web Services SDKs and Amazon Web Services
2172
- # CLI, see [Specifying the Signature Version in Request
2173
- # Authentication][1] in the *Amazon S3 User Guide*.
2134
+ # protected by KMS will fail if they're not made via SSL or using
2135
+ # SigV4. For information about configuring any of the officially
2136
+ # supported Amazon Web Services SDKs and Amazon Web Services CLI, see
2137
+ # [Specifying the Signature Version in Request Authentication][1] in the
2138
+ # *Amazon S3 User Guide*.
2174
2139
  #
2175
2140
  #
2176
2141
  #
@@ -2183,9 +2148,9 @@ module Aws::S3
2183
2148
  #
2184
2149
  # @option params [Boolean] :bucket_key_enabled
2185
2150
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
2186
- # encryption with server-side encryption using AWS KMS (SSE-KMS).
2187
- # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
2188
- # for object encryption with SSE-KMS.
2151
+ # encryption with server-side encryption using Key Management Service
2152
+ # (KMS) keys (SSE-KMS). Setting this header to `true` causes Amazon S3
2153
+ # to use an S3 Bucket Key for object encryption with SSE-KMS.
2189
2154
  #
2190
2155
  # Specifying this header with an object action doesn’t affect
2191
2156
  # bucket-level settings for S3 Bucket Key.
@@ -2446,7 +2411,7 @@ module Aws::S3
2446
2411
  # For information about `cors`, see [Enabling Cross-Origin Resource
2447
2412
  # Sharing][1] in the *Amazon S3 User Guide*.
2448
2413
  #
2449
- # The following operations are related to `DeleteBucketCors`:
2414
+ # **Related Resources**
2450
2415
  #
2451
2416
  # * [PutBucketCors][2]
2452
2417
  #
@@ -3157,7 +3122,7 @@ module Aws::S3
3157
3122
  # When you use this action with S3 on Outposts through the Amazon Web
3158
3123
  # Services SDKs, you provide the Outposts access point ARN in place of
3159
3124
  # the bucket name. For more information about S3 on Outposts ARNs, see
3160
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
3125
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
3161
3126
  #
3162
3127
  #
3163
3128
  #
@@ -3204,15 +3169,6 @@ module Aws::S3
3204
3169
  # * {Types::DeleteObjectOutput#request_charged #request_charged} => String
3205
3170
  #
3206
3171
  #
3207
- # @example Example: To delete an object (from a non-versioned bucket)
3208
- #
3209
- # # The following example deletes an object from a non-versioned bucket.
3210
- #
3211
- # resp = client.delete_object({
3212
- # bucket: "ExampleBucket",
3213
- # key: "HappyFace.jpg",
3214
- # })
3215
- #
3216
3172
  # @example Example: To delete an object
3217
3173
  #
3218
3174
  # # The following example deletes an object from an S3 bucket.
@@ -3226,6 +3182,15 @@ module Aws::S3
3226
3182
  # {
3227
3183
  # }
3228
3184
  #
3185
+ # @example Example: To delete an object (from a non-versioned bucket)
3186
+ #
3187
+ # # The following example deletes an object from a non-versioned bucket.
3188
+ #
3189
+ # resp = client.delete_object({
3190
+ # bucket: "ExampleBucket",
3191
+ # key: "HappyFace.jpg",
3192
+ # })
3193
+ #
3229
3194
  # @example Request syntax with placeholder values
3230
3195
  #
3231
3196
  # resp = client.delete_object({
@@ -3293,7 +3258,7 @@ module Aws::S3
3293
3258
  # When you use this action with S3 on Outposts through the Amazon Web
3294
3259
  # Services SDKs, you provide the Outposts access point ARN in place of
3295
3260
  # the bucket name. For more information about S3 on Outposts ARNs, see
3296
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
3261
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
3297
3262
  #
3298
3263
  #
3299
3264
  #
@@ -3317,35 +3282,35 @@ module Aws::S3
3317
3282
  # * {Types::DeleteObjectTaggingOutput#version_id #version_id} => String
3318
3283
  #
3319
3284
  #
3320
- # @example Example: To remove tag set from an object
3285
+ # @example Example: To remove tag set from an object version
3321
3286
  #
3322
- # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
3323
- # # operation removes tag set from the latest object version.
3287
+ # # The following example removes tag set associated with the specified object version. The request specifies both the
3288
+ # # object key and object version.
3324
3289
  #
3325
3290
  # resp = client.delete_object_tagging({
3326
3291
  # bucket: "examplebucket",
3327
3292
  # key: "HappyFace.jpg",
3293
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
3328
3294
  # })
3329
3295
  #
3330
3296
  # resp.to_h outputs the following:
3331
3297
  # {
3332
- # version_id: "null",
3298
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
3333
3299
  # }
3334
3300
  #
3335
- # @example Example: To remove tag set from an object version
3301
+ # @example Example: To remove tag set from an object
3336
3302
  #
3337
- # # The following example removes tag set associated with the specified object version. The request specifies both the
3338
- # # object key and object version.
3303
+ # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
3304
+ # # operation removes tag set from the latest object version.
3339
3305
  #
3340
3306
  # resp = client.delete_object_tagging({
3341
3307
  # bucket: "examplebucket",
3342
3308
  # key: "HappyFace.jpg",
3343
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
3344
3309
  # })
3345
3310
  #
3346
3311
  # resp.to_h outputs the following:
3347
3312
  # {
3348
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
3313
+ # version_id: "null",
3349
3314
  # }
3350
3315
  #
3351
3316
  # @example Request syntax with placeholder values
@@ -3441,7 +3406,7 @@ module Aws::S3
3441
3406
  # When you use this action with S3 on Outposts through the Amazon Web
3442
3407
  # Services SDKs, you provide the Outposts access point ARN in place of
3443
3408
  # the bucket name. For more information about S3 on Outposts ARNs, see
3444
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
3409
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
3445
3410
  #
3446
3411
  #
3447
3412
  #
@@ -3720,20 +3685,34 @@ module Aws::S3
3720
3685
  # a different account, the request fails with the HTTP status code `403
3721
3686
  # Forbidden` (access denied).
3722
3687
  #
3688
+ # @option params [String] :request_payer
3689
+ # Confirms that the requester knows that they will be charged for the
3690
+ # request. Bucket owners need not specify this parameter in their
3691
+ # requests. For information about downloading objects from Requester
3692
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
3693
+ # in the *Amazon S3 User Guide*.
3694
+ #
3695
+ #
3696
+ #
3697
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
3698
+ #
3723
3699
  # @return [Types::GetBucketAccelerateConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3724
3700
  #
3725
3701
  # * {Types::GetBucketAccelerateConfigurationOutput#status #status} => String
3702
+ # * {Types::GetBucketAccelerateConfigurationOutput#request_charged #request_charged} => String
3726
3703
  #
3727
3704
  # @example Request syntax with placeholder values
3728
3705
  #
3729
3706
  # resp = client.get_bucket_accelerate_configuration({
3730
3707
  # bucket: "BucketName", # required
3731
3708
  # expected_bucket_owner: "AccountId",
3709
+ # request_payer: "requester", # accepts requester
3732
3710
  # })
3733
3711
  #
3734
3712
  # @example Response structure
3735
3713
  #
3736
3714
  # resp.status #=> String, one of "Enabled", "Suspended"
3715
+ # resp.request_charged #=> String, one of "requester"
3737
3716
  #
3738
3717
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAccelerateConfiguration AWS API Documentation
3739
3718
  #
@@ -5639,30 +5618,32 @@ module Aws::S3
5639
5618
  # For more information about returning the ACL of an object, see
5640
5619
  # [GetObjectAcl][2].
5641
5620
  #
5642
- # If the object you are retrieving is stored in the S3 Glacier or S3
5643
- # Glacier Deep Archive storage class, or S3 Intelligent-Tiering Archive
5644
- # or S3 Intelligent-Tiering Deep Archive tiers, before you can retrieve
5645
- # the object you must first restore a copy using [RestoreObject][3].
5646
- # Otherwise, this action returns an `InvalidObjectState` error. For
5647
- # information about restoring archived objects, see [Restoring Archived
5648
- # Objects][4].
5621
+ # If the object you are retrieving is stored in the S3 Glacier Flexible
5622
+ # Retrieval or S3 Glacier Deep Archive storage class, or S3
5623
+ # Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive
5624
+ # tiers, before you can retrieve the object you must first restore a
5625
+ # copy using [RestoreObject][3]. Otherwise, this action returns an
5626
+ # `InvalidObjectState` error. For information about restoring archived
5627
+ # objects, see [Restoring Archived Objects][4].
5649
5628
  #
5650
5629
  # Encryption request headers, like `x-amz-server-side-encryption`,
5651
5630
  # should not be sent for GET requests if your object uses server-side
5652
- # encryption with KMS keys (SSE-KMS) or server-side encryption with
5653
- # Amazon S3–managed encryption keys (SSE-S3). If your object does use
5654
- # these types of keys, you’ll get an HTTP 400 BadRequest error.
5631
+ # encryption with Key Management Service (KMS) keys (SSE-KMS),
5632
+ # dual-layer server-side encryption with Amazon Web Services KMS keys
5633
+ # (DSSE-KMS), or server-side encryption with Amazon S3 managed
5634
+ # encryption keys (SSE-S3). If your object does use these types of keys,
5635
+ # you’ll get an HTTP 400 Bad Request error.
5655
5636
  #
5656
5637
  # If you encrypt an object by using server-side encryption with
5657
5638
  # customer-provided encryption keys (SSE-C) when you store the object in
5658
5639
  # Amazon S3, then when you GET the object, you must use the following
5659
5640
  # headers:
5660
5641
  #
5661
- # * x-amz-server-side-encryption-customer-algorithm
5642
+ # * `x-amz-server-side-encryption-customer-algorithm`
5662
5643
  #
5663
- # * x-amz-server-side-encryption-customer-key
5644
+ # * `x-amz-server-side-encryption-customer-key`
5664
5645
  #
5665
- # * x-amz-server-side-encryption-customer-key-MD5
5646
+ # * `x-amz-server-side-encryption-customer-key-MD5`
5666
5647
  #
5667
5648
  # For more information about SSE-C, see [Server-Side Encryption (Using
5668
5649
  # Customer-Provided Encryption Keys)][5].
@@ -5677,20 +5658,21 @@ module Aws::S3
5677
5658
  #
5678
5659
  # : You need the relevant read object (or version) permission for this
5679
5660
  # operation. For more information, see [Specifying Permissions in a
5680
- # Policy][7]. If the object you request does not exist, the error
5681
- # Amazon S3 returns depends on whether you also have the
5661
+ # Policy][7]. If the object that you request doesn’t exist, the error
5662
+ # that Amazon S3 returns depends on whether you also have the
5682
5663
  # `s3:ListBucket` permission.
5683
5664
  #
5684
- # * If you have the `s3:ListBucket` permission on the bucket, Amazon
5685
- # S3 will return an HTTP status code 404 ("no such key") error.
5665
+ # If you have the `s3:ListBucket` permission on the bucket, Amazon S3
5666
+ # returns an HTTP status code 404 (Not Found) error.
5686
5667
  #
5687
- # * If you don’t have the `s3:ListBucket` permission, Amazon S3 will
5688
- # return an HTTP status code 403 ("access denied") error.
5668
+ # If you don’t have the `s3:ListBucket` permission, Amazon S3 returns
5669
+ # an HTTP status code 403 ("access denied") error.
5689
5670
  #
5690
5671
  # Versioning
5691
5672
  #
5692
- # : By default, the GET action returns the current version of an object.
5693
- # To return a different version, use the `versionId` subresource.
5673
+ # : By default, the `GET` action returns the current version of an
5674
+ # object. To return a different version, use the `versionId`
5675
+ # subresource.
5694
5676
  #
5695
5677
  # <note markdown="1"> * If you supply a `versionId`, you need the `s3:GetObjectVersion`
5696
5678
  # permission to access a specific version of an object. If you
@@ -5710,18 +5692,18 @@ module Aws::S3
5710
5692
  # Overriding Response Header Values
5711
5693
  #
5712
5694
  # : There are times when you want to override certain response header
5713
- # values in a GET response. For example, you might override the
5714
- # `Content-Disposition` response header value in your GET request.
5695
+ # values in a `GET` response. For example, you might override the
5696
+ # `Content-Disposition` response header value in your `GET` request.
5715
5697
  #
5716
5698
  # You can override values for a set of response headers using the
5717
5699
  # following query parameters. These response header values are sent
5718
5700
  # only on a successful request, that is, when status code 200 OK is
5719
5701
  # returned. The set of headers you can override using these parameters
5720
5702
  # is a subset of the headers that Amazon S3 accepts when you create an
5721
- # object. The response headers that you can override for the GET
5703
+ # object. The response headers that you can override for the `GET`
5722
5704
  # response are `Content-Type`, `Content-Language`, `Expires`,
5723
5705
  # `Cache-Control`, `Content-Disposition`, and `Content-Encoding`. To
5724
- # override these header values in the GET response, you use the
5706
+ # override these header values in the `GET` response, you use the
5725
5707
  # following request parameters.
5726
5708
  #
5727
5709
  # <note markdown="1"> You must sign the request, either using an Authorization header or a
@@ -5799,7 +5781,7 @@ module Aws::S3
5799
5781
  # When you use this action with S3 on Outposts through the Amazon Web
5800
5782
  # Services SDKs, you provide the Outposts access point ARN in place of
5801
5783
  # the bucket name. For more information about S3 on Outposts ARNs, see
5802
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
5784
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
5803
5785
  #
5804
5786
  #
5805
5787
  #
@@ -6386,7 +6368,7 @@ module Aws::S3
6386
6368
  # When you use this action with S3 on Outposts through the Amazon Web
6387
6369
  # Services SDKs, you provide the Outposts access point ARN in place of
6388
6370
  # the bucket name. For more information about S3 on Outposts ARNs, see
6389
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
6371
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
6390
6372
  #
6391
6373
  #
6392
6374
  #
@@ -6439,9 +6421,8 @@ module Aws::S3
6439
6421
  # Forbidden` (access denied).
6440
6422
  #
6441
6423
  # @option params [required, Array<String>] :object_attributes
6442
- # An XML header that specifies the fields at the root level that you
6443
- # want returned in the response. Fields that you do not specify are not
6444
- # returned.
6424
+ # Specifies the fields at the root level that you want returned in the
6425
+ # response. Fields that you do not specify are not returned.
6445
6426
  #
6446
6427
  # @return [Types::GetObjectAttributesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6447
6428
  #
@@ -6786,7 +6767,7 @@ module Aws::S3
6786
6767
  # When you use this action with S3 on Outposts through the Amazon Web
6787
6768
  # Services SDKs, you provide the Outposts access point ARN in place of
6788
6769
  # the bucket name. For more information about S3 on Outposts ARNs, see
6789
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
6770
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
6790
6771
  #
6791
6772
  #
6792
6773
  #
@@ -7119,7 +7100,7 @@ module Aws::S3
7119
7100
  # When you use this action with S3 on Outposts through the Amazon Web
7120
7101
  # Services SDKs, you provide the Outposts access point ARN in place of
7121
7102
  # the bucket name. For more information about S3 on Outposts ARNs, see
7122
- # [What is S3 on Outposts][3] in the *Amazon S3 User Guide*.
7103
+ # [What is S3 on Outposts?][3] in the *Amazon S3 User Guide*.
7123
7104
  #
7124
7105
  #
7125
7106
  #
@@ -7165,9 +7146,9 @@ module Aws::S3
7165
7146
  req.send_request(options)
7166
7147
  end
7167
7148
 
7168
- # The HEAD action retrieves metadata from an object without returning
7149
+ # The `HEAD` action retrieves metadata from an object without returning
7169
7150
  # the object itself. This action is useful if you're only interested in
7170
- # an object's metadata. To use HEAD, you must have READ access to the
7151
+ # an object's metadata. To use `HEAD`, you must have READ access to the
7171
7152
  # object.
7172
7153
  #
7173
7154
  # A `HEAD` request has the same options as a `GET` action on an object.
@@ -7182,20 +7163,22 @@ module Aws::S3
7182
7163
  # Amazon S3, then when you retrieve the metadata from the object, you
7183
7164
  # must use the following headers:
7184
7165
  #
7185
- # * x-amz-server-side-encryption-customer-algorithm
7166
+ # * `x-amz-server-side-encryption-customer-algorithm`
7186
7167
  #
7187
- # * x-amz-server-side-encryption-customer-key
7168
+ # * `x-amz-server-side-encryption-customer-key`
7188
7169
  #
7189
- # * x-amz-server-side-encryption-customer-key-MD5
7170
+ # * `x-amz-server-side-encryption-customer-key-MD5`
7190
7171
  #
7191
7172
  # For more information about SSE-C, see [Server-Side Encryption (Using
7192
7173
  # Customer-Provided Encryption Keys)][1].
7193
7174
  #
7194
7175
  # <note markdown="1"> * Encryption request headers, like `x-amz-server-side-encryption`,
7195
- # should not be sent for GET requests if your object uses server-side
7196
- # encryption with KMS keys (SSE-KMS) or server-side encryption with
7197
- # Amazon S3–managed encryption keys (SSE-S3). If your object does use
7198
- # these types of keys, you’ll get an HTTP 400 BadRequest error.
7176
+ # should not be sent for `GET` requests if your object uses
7177
+ # server-side encryption with Key Management Service (KMS) keys
7178
+ # (SSE-KMS), dual-layer server-side encryption with Amazon Web
7179
+ # Services KMS keys (DSSE-KMS), or server-side encryption with Amazon
7180
+ # S3 managed encryption keys (SSE-S3). If your object does use these
7181
+ # types of keys, you’ll get an HTTP 400 Bad Request error.
7199
7182
  #
7200
7183
  # * The last modified property in this case is the creation date of the
7201
7184
  # object.
@@ -7231,15 +7214,15 @@ module Aws::S3
7231
7214
  #
7232
7215
  # : You need the relevant read object (or version) permission for this
7233
7216
  # operation. For more information, see [Actions, resources, and
7234
- # condition keys for Amazon S3][4]. If the object you request does not
7235
- # exist, the error Amazon S3 returns depends on whether you also have
7236
- # the s3:ListBucket permission.
7217
+ # condition keys for Amazon S3][4]. If the object you request doesn't
7218
+ # exist, the error that Amazon S3 returns depends on whether you also
7219
+ # have the s3:ListBucket permission.
7237
7220
  #
7238
7221
  # * If you have the `s3:ListBucket` permission on the bucket, Amazon
7239
- # S3 returns an HTTP status code 404 ("no such key") error.
7222
+ # S3 returns an HTTP status code 404 error.
7240
7223
  #
7241
7224
  # * If you don’t have the `s3:ListBucket` permission, Amazon S3
7242
- # returns an HTTP status code 403 ("access denied") error.
7225
+ # returns an HTTP status code 403 error.
7243
7226
  #
7244
7227
  # The following actions are related to `HeadObject`:
7245
7228
  #
@@ -7274,7 +7257,7 @@ module Aws::S3
7274
7257
  # When you use this action with S3 on Outposts through the Amazon Web
7275
7258
  # Services SDKs, you provide the Outposts access point ARN in place of
7276
7259
  # the bucket name. For more information about S3 on Outposts ARNs, see
7277
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
7260
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
7278
7261
  #
7279
7262
  #
7280
7263
  #
@@ -7534,7 +7517,7 @@ module Aws::S3
7534
7517
  # retrieved.
7535
7518
  #
7536
7519
  # @option params [String] :continuation_token
7537
- # The ContinuationToken that represents a placeholder from where this
7520
+ # The `ContinuationToken` that represents a placeholder from where this
7538
7521
  # request should begin.
7539
7522
  #
7540
7523
  # @option params [String] :expected_bucket_owner
@@ -7720,7 +7703,7 @@ module Aws::S3
7720
7703
  #
7721
7704
  # @option params [String] :continuation_token
7722
7705
  # The marker used to continue an inventory configuration listing that
7723
- # has been truncated. Use the NextContinuationToken from a previously
7706
+ # has been truncated. Use the `NextContinuationToken` from a previously
7724
7707
  # truncated list response to continue the listing. The continuation
7725
7708
  # token is an opaque value that Amazon S3 understands.
7726
7709
  #
@@ -7820,7 +7803,7 @@ module Aws::S3
7820
7803
  #
7821
7804
  # @option params [String] :continuation_token
7822
7805
  # The marker that is used to continue a metrics configuration listing
7823
- # that has been truncated. Use the NextContinuationToken from a
7806
+ # that has been truncated. Use the `NextContinuationToken` from a
7824
7807
  # previously truncated list response to continue the listing. The
7825
7808
  # continuation token is an opaque value that Amazon S3 understands.
7826
7809
  #
@@ -7999,7 +7982,7 @@ module Aws::S3
7999
7982
  # When you use this action with S3 on Outposts through the Amazon Web
8000
7983
  # Services SDKs, you provide the Outposts access point ARN in place of
8001
7984
  # the bucket name. For more information about S3 on Outposts ARNs, see
8002
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
7985
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
8003
7986
  #
8004
7987
  #
8005
7988
  #
@@ -8018,15 +8001,15 @@ module Aws::S3
8018
8001
  #
8019
8002
  # @option params [String] :encoding_type
8020
8003
  # Requests Amazon S3 to encode the object keys in the response and
8021
- # specifies the encoding method to use. An object key may contain any
8022
- # Unicode character; however, XML 1.0 parser cannot parse some
8004
+ # specifies the encoding method to use. An object key can contain any
8005
+ # Unicode character; however, the XML 1.0 parser cannot parse some
8023
8006
  # characters, such as characters with an ASCII value from 0 to 10. For
8024
8007
  # characters that are not supported in XML 1.0, you can add this
8025
8008
  # parameter to request that Amazon S3 encode the keys in the response.
8026
8009
  #
8027
8010
  # @option params [String] :key_marker
8028
- # Together with upload-id-marker, this parameter specifies the multipart
8029
- # upload after which listing should begin.
8011
+ # Together with `upload-id-marker`, this parameter specifies the
8012
+ # multipart upload after which listing should begin.
8030
8013
  #
8031
8014
  # If `upload-id-marker` is not specified, only the keys
8032
8015
  # lexicographically greater than the specified `key-marker` will be
@@ -8045,8 +8028,8 @@ module Aws::S3
8045
8028
  # @option params [String] :prefix
8046
8029
  # Lists in-progress uploads only for those keys that begin with the
8047
8030
  # specified prefix. You can use prefixes to separate a bucket into
8048
- # different grouping of keys. (You can think of using prefix to make
8049
- # groups in the same way you'd use a folder in a file system.)
8031
+ # different grouping of keys. (You can think of using `prefix` to make
8032
+ # groups in the same way that you'd use a folder in a file system.)
8050
8033
  #
8051
8034
  # @option params [String] :upload_id_marker
8052
8035
  # Together with key-marker, specifies the multipart upload after which
@@ -8061,6 +8044,17 @@ module Aws::S3
8061
8044
  # a different account, the request fails with the HTTP status code `403
8062
8045
  # Forbidden` (access denied).
8063
8046
  #
8047
+ # @option params [String] :request_payer
8048
+ # Confirms that the requester knows that they will be charged for the
8049
+ # request. Bucket owners need not specify this parameter in their
8050
+ # requests. For information about downloading objects from Requester
8051
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
8052
+ # in the *Amazon S3 User Guide*.
8053
+ #
8054
+ #
8055
+ #
8056
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
8057
+ #
8064
8058
  # @return [Types::ListMultipartUploadsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8065
8059
  #
8066
8060
  # * {Types::ListMultipartUploadsOutput#bucket #bucket} => String
@@ -8075,6 +8069,7 @@ module Aws::S3
8075
8069
  # * {Types::ListMultipartUploadsOutput#uploads #uploads} => Array&lt;Types::MultipartUpload&gt;
8076
8070
  # * {Types::ListMultipartUploadsOutput#common_prefixes #common_prefixes} => Array&lt;Types::CommonPrefix&gt;
8077
8071
  # * {Types::ListMultipartUploadsOutput#encoding_type #encoding_type} => String
8072
+ # * {Types::ListMultipartUploadsOutput#request_charged #request_charged} => String
8078
8073
  #
8079
8074
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8080
8075
  #
@@ -8185,6 +8180,7 @@ module Aws::S3
8185
8180
  # prefix: "Prefix",
8186
8181
  # upload_id_marker: "UploadIdMarker",
8187
8182
  # expected_bucket_owner: "AccountId",
8183
+ # request_payer: "requester", # accepts requester
8188
8184
  # })
8189
8185
  #
8190
8186
  # @example Response structure
@@ -8211,6 +8207,7 @@ module Aws::S3
8211
8207
  # resp.common_prefixes #=> Array
8212
8208
  # resp.common_prefixes[0].prefix #=> String
8213
8209
  # resp.encoding_type #=> String, one of "url"
8210
+ # resp.request_charged #=> String, one of "requester"
8214
8211
  #
8215
8212
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListMultipartUploads AWS API Documentation
8216
8213
  #
@@ -8225,10 +8222,10 @@ module Aws::S3
8225
8222
  # can also use request parameters as selection criteria to return
8226
8223
  # metadata about a subset of all the object versions.
8227
8224
  #
8228
- # To use this operation, you must have permissions to perform the
8225
+ # To use this operation, you must have permission to perform the
8229
8226
  # `s3:ListBucketVersions` action. Be aware of the name difference.
8230
8227
  #
8231
- # <note markdown="1"> A 200 OK response can contain valid or invalid XML. Make sure to
8228
+ # <note markdown="1"> A `200 OK` response can contain valid or invalid XML. Make sure to
8232
8229
  # design your application to parse the contents of the response and
8233
8230
  # handle it appropriately.
8234
8231
  #
@@ -8262,14 +8259,14 @@ module Aws::S3
8262
8259
  # A delimiter is a character that you specify to group keys. All keys
8263
8260
  # that contain the same string between the `prefix` and the first
8264
8261
  # occurrence of the delimiter are grouped under a single result element
8265
- # in CommonPrefixes. These groups are counted as one result against the
8266
- # max-keys limitation. These keys are not returned elsewhere in the
8267
- # response.
8262
+ # in `CommonPrefixes`. These groups are counted as one result against
8263
+ # the `max-keys` limitation. These keys are not returned elsewhere in
8264
+ # the response.
8268
8265
  #
8269
8266
  # @option params [String] :encoding_type
8270
8267
  # Requests Amazon S3 to encode the object keys in the response and
8271
- # specifies the encoding method to use. An object key may contain any
8272
- # Unicode character; however, XML 1.0 parser cannot parse some
8268
+ # specifies the encoding method to use. An object key can contain any
8269
+ # Unicode character; however, the XML 1.0 parser cannot parse some
8273
8270
  # characters, such as characters with an ASCII value from 0 to 10. For
8274
8271
  # characters that are not supported in XML 1.0, you can add this
8275
8272
  # parameter to request that Amazon S3 encode the keys in the response.
@@ -8278,20 +8275,20 @@ module Aws::S3
8278
8275
  # Specifies the key to start with when listing objects in a bucket.
8279
8276
  #
8280
8277
  # @option params [Integer] :max_keys
8281
- # Sets the maximum number of keys returned in the response. By default
8278
+ # Sets the maximum number of keys returned in the response. By default,
8282
8279
  # the action returns up to 1,000 key names. The response might contain
8283
8280
  # fewer keys but will never contain more. If additional keys satisfy the
8284
- # search criteria, but were not returned because max-keys was exceeded,
8285
- # the response contains &lt;isTruncated&gt;true&lt;/isTruncated&gt;. To
8286
- # return the additional keys, see key-marker and version-id-marker.
8281
+ # search criteria, but were not returned because `max-keys` was
8282
+ # exceeded, the response contains `<isTruncated>true</isTruncated>`. To
8283
+ # return the additional keys, see `key-marker` and `version-id-marker`.
8287
8284
  #
8288
8285
  # @option params [String] :prefix
8289
8286
  # Use this parameter to select only those keys that begin with the
8290
8287
  # specified prefix. You can use prefixes to separate a bucket into
8291
- # different groupings of keys. (You can think of using prefix to make
8292
- # groups in the same way you'd use a folder in a file system.) You can
8293
- # use prefix with delimiter to roll up numerous objects into a single
8294
- # result under CommonPrefixes.
8288
+ # different groupings of keys. (You can think of using `prefix` to make
8289
+ # groups in the same way that you'd use a folder in a file system.) You
8290
+ # can use `prefix` with `delimiter` to roll up numerous objects into a
8291
+ # single result under `CommonPrefixes`.
8295
8292
  #
8296
8293
  # @option params [String] :version_id_marker
8297
8294
  # Specifies the object version you want to start listing from.
@@ -8301,6 +8298,21 @@ module Aws::S3
8301
8298
  # a different account, the request fails with the HTTP status code `403
8302
8299
  # Forbidden` (access denied).
8303
8300
  #
8301
+ # @option params [String] :request_payer
8302
+ # Confirms that the requester knows that they will be charged for the
8303
+ # request. Bucket owners need not specify this parameter in their
8304
+ # requests. For information about downloading objects from Requester
8305
+ # Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
8306
+ # in the *Amazon S3 User Guide*.
8307
+ #
8308
+ #
8309
+ #
8310
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
8311
+ #
8312
+ # @option params [Array<String>] :optional_object_attributes
8313
+ # Specifies the optional fields that you want returned in the response.
8314
+ # Fields that you do not specify are not returned.
8315
+ #
8304
8316
  # @return [Types::ListObjectVersionsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8305
8317
  #
8306
8318
  # * {Types::ListObjectVersionsOutput#is_truncated #is_truncated} => Boolean
@@ -8316,6 +8328,7 @@ module Aws::S3
8316
8328
  # * {Types::ListObjectVersionsOutput#max_keys #max_keys} => Integer
8317
8329
  # * {Types::ListObjectVersionsOutput#common_prefixes #common_prefixes} => Array&lt;Types::CommonPrefix&gt;
8318
8330
  # * {Types::ListObjectVersionsOutput#encoding_type #encoding_type} => String
8331
+ # * {Types::ListObjectVersionsOutput#request_charged #request_charged} => String
8319
8332
  #
8320
8333
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8321
8334
  #
@@ -8374,6 +8387,8 @@ module Aws::S3
8374
8387
  # prefix: "Prefix",
8375
8388
  # version_id_marker: "VersionIdMarker",
8376
8389
  # expected_bucket_owner: "AccountId",
8390
+ # request_payer: "requester", # accepts requester
8391
+ # optional_object_attributes: ["RestoreStatus"], # accepts RestoreStatus
8377
8392
  # })
8378
8393
  #
8379
8394
  # @example Response structure
@@ -8395,6 +8410,8 @@ module Aws::S3
8395
8410
  # resp.versions[0].last_modified #=> Time
8396
8411
  # resp.versions[0].owner.display_name #=> String
8397
8412
  # resp.versions[0].owner.id #=> String
8413
+ # resp.versions[0].restore_status.is_restore_in_progress #=> Boolean
8414
+ # resp.versions[0].restore_status.restore_expiry_date #=> Time
8398
8415
  # resp.delete_markers #=> Array
8399
8416
  # resp.delete_markers[0].owner.display_name #=> String
8400
8417
  # resp.delete_markers[0].owner.id #=> String
@@ -8409,6 +8426,7 @@ module Aws::S3
8409
8426
  # resp.common_prefixes #=> Array
8410
8427
  # resp.common_prefixes[0].prefix #=> String
8411
8428
  # resp.encoding_type #=> String, one of "url"
8429
+ # resp.request_charged #=> String, one of "requester"
8412
8430
  #
8413
8431
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectVersions AWS API Documentation
8414
8432
  #
@@ -8467,7 +8485,7 @@ module Aws::S3
8467
8485
  # When you use this action with S3 on Outposts through the Amazon Web
8468
8486
  # Services SDKs, you provide the Outposts access point ARN in place of
8469
8487
  # the bucket name. For more information about S3 on Outposts ARNs, see
8470
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
8488
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
8471
8489
  #
8472
8490
  #
8473
8491
  #
@@ -8475,12 +8493,12 @@ module Aws::S3
8475
8493
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
8476
8494
  #
8477
8495
  # @option params [String] :delimiter
8478
- # A delimiter is a character you use to group keys.
8496
+ # A delimiter is a character that you use to group keys.
8479
8497
  #
8480
8498
  # @option params [String] :encoding_type
8481
8499
  # Requests Amazon S3 to encode the object keys in the response and
8482
- # specifies the encoding method to use. An object key may contain any
8483
- # Unicode character; however, XML 1.0 parser cannot parse some
8500
+ # specifies the encoding method to use. An object key can contain any
8501
+ # Unicode character; however, the XML 1.0 parser cannot parse some
8484
8502
  # characters, such as characters with an ASCII value from 0 to 10. For
8485
8503
  # characters that are not supported in XML 1.0, you can add this
8486
8504
  # parameter to request that Amazon S3 encode the keys in the response.
@@ -8491,7 +8509,7 @@ module Aws::S3
8491
8509
  # bucket.
8492
8510
  #
8493
8511
  # @option params [Integer] :max_keys
8494
- # Sets the maximum number of keys returned in the response. By default
8512
+ # Sets the maximum number of keys returned in the response. By default,
8495
8513
  # the action returns up to 1,000 key names. The response might contain
8496
8514
  # fewer keys but will never contain more.
8497
8515
  #
@@ -8508,6 +8526,10 @@ module Aws::S3
8508
8526
  # a different account, the request fails with the HTTP status code `403
8509
8527
  # Forbidden` (access denied).
8510
8528
  #
8529
+ # @option params [Array<String>] :optional_object_attributes
8530
+ # Specifies the optional fields that you want returned in the response.
8531
+ # Fields that you do not specify are not returned.
8532
+ #
8511
8533
  # @return [Types::ListObjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8512
8534
  #
8513
8535
  # * {Types::ListObjectsOutput#is_truncated #is_truncated} => Boolean
@@ -8520,6 +8542,7 @@ module Aws::S3
8520
8542
  # * {Types::ListObjectsOutput#max_keys #max_keys} => Integer
8521
8543
  # * {Types::ListObjectsOutput#common_prefixes #common_prefixes} => Array&lt;Types::CommonPrefix&gt;
8522
8544
  # * {Types::ListObjectsOutput#encoding_type #encoding_type} => String
8545
+ # * {Types::ListObjectsOutput#request_charged #request_charged} => String
8523
8546
  #
8524
8547
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8525
8548
  #
@@ -8573,6 +8596,7 @@ module Aws::S3
8573
8596
  # prefix: "Prefix",
8574
8597
  # request_payer: "requester", # accepts requester
8575
8598
  # expected_bucket_owner: "AccountId",
8599
+ # optional_object_attributes: ["RestoreStatus"], # accepts RestoreStatus
8576
8600
  # })
8577
8601
  #
8578
8602
  # @example Response structure
@@ -8590,6 +8614,8 @@ module Aws::S3
8590
8614
  # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
8591
8615
  # resp.contents[0].owner.display_name #=> String
8592
8616
  # resp.contents[0].owner.id #=> String
8617
+ # resp.contents[0].restore_status.is_restore_in_progress #=> Boolean
8618
+ # resp.contents[0].restore_status.restore_expiry_date #=> Time
8593
8619
  # resp.name #=> String
8594
8620
  # resp.prefix #=> String
8595
8621
  # resp.delimiter #=> String
@@ -8597,6 +8623,7 @@ module Aws::S3
8597
8623
  # resp.common_prefixes #=> Array
8598
8624
  # resp.common_prefixes[0].prefix #=> String
8599
8625
  # resp.encoding_type #=> String, one of "url"
8626
+ # resp.request_charged #=> String, one of "requester"
8600
8627
  #
8601
8628
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjects AWS API Documentation
8602
8629
  #
@@ -8614,21 +8641,23 @@ module Aws::S3
8614
8641
  # parse the contents of the response and handle it appropriately.
8615
8642
  # Objects are returned sorted in an ascending order of the respective
8616
8643
  # key names in the list. For more information about listing objects, see
8617
- # [Listing object keys programmatically][1]
8644
+ # [Listing object keys programmatically][1] in the *Amazon S3 User
8645
+ # Guide*.
8618
8646
  #
8619
8647
  # To use this operation, you must have READ access to the bucket.
8620
8648
  #
8621
8649
  # To use this action in an Identity and Access Management (IAM) policy,
8622
- # you must have permissions to perform the `s3:ListBucket` action. The
8650
+ # you must have permission to perform the `s3:ListBucket` action. The
8623
8651
  # bucket owner has this permission by default and can grant this
8624
8652
  # permission to others. For more information about permissions, see
8625
8653
  # [Permissions Related to Bucket Subresource Operations][2] and
8626
- # [Managing Access Permissions to Your Amazon S3 Resources][3].
8654
+ # [Managing Access Permissions to Your Amazon S3 Resources][3] in the
8655
+ # *Amazon S3 User Guide*.
8627
8656
  #
8628
8657
  # This section describes the latest revision of this action. We
8629
- # recommend that you use this revised API for application development.
8630
- # For backward compatibility, Amazon S3 continues to support the prior
8631
- # version of this API, [ListObjects][4].
8658
+ # recommend that you use this revised API operation for application
8659
+ # development. For backward compatibility, Amazon S3 continues to
8660
+ # support the prior version of this API operation, [ListObjects][4].
8632
8661
  #
8633
8662
  # To get a list of your buckets, see [ListBuckets][5].
8634
8663
  #
@@ -8669,7 +8698,7 @@ module Aws::S3
8669
8698
  # When you use this action with S3 on Outposts through the Amazon Web
8670
8699
  # Services SDKs, you provide the Outposts access point ARN in place of
8671
8700
  # the bucket name. For more information about S3 on Outposts ARNs, see
8672
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
8701
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
8673
8702
  #
8674
8703
  #
8675
8704
  #
@@ -8677,13 +8706,13 @@ module Aws::S3
8677
8706
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
8678
8707
  #
8679
8708
  # @option params [String] :delimiter
8680
- # A delimiter is a character you use to group keys.
8709
+ # A delimiter is a character that you use to group keys.
8681
8710
  #
8682
8711
  # @option params [String] :encoding_type
8683
8712
  # Encoding type used by Amazon S3 to encode object keys in the response.
8684
8713
  #
8685
8714
  # @option params [Integer] :max_keys
8686
- # Sets the maximum number of keys returned in the response. By default
8715
+ # Sets the maximum number of keys returned in the response. By default,
8687
8716
  # the action returns up to 1,000 key names. The response might contain
8688
8717
  # fewer keys but will never contain more.
8689
8718
  #
@@ -8691,14 +8720,14 @@ module Aws::S3
8691
8720
  # Limits the response to keys that begin with the specified prefix.
8692
8721
  #
8693
8722
  # @option params [String] :continuation_token
8694
- # ContinuationToken indicates Amazon S3 that the list is being continued
8695
- # on this bucket with a token. ContinuationToken is obfuscated and is
8696
- # not a real key.
8723
+ # `ContinuationToken` indicates to Amazon S3 that the list is being
8724
+ # continued on this bucket with a token. `ContinuationToken` is
8725
+ # obfuscated and is not a real key.
8697
8726
  #
8698
8727
  # @option params [Boolean] :fetch_owner
8699
- # The owner field is not present in listV2 by default, if you want to
8700
- # return owner field with each key in the result then set the fetch
8701
- # owner field to true.
8728
+ # The owner field is not present in `ListObjectsV2` by default. If you
8729
+ # want to return the owner field with each key in the result, then set
8730
+ # the `FetchOwner` field to `true`.
8702
8731
  #
8703
8732
  # @option params [String] :start_after
8704
8733
  # StartAfter is where you want Amazon S3 to start listing from. Amazon
@@ -8715,6 +8744,10 @@ module Aws::S3
8715
8744
  # a different account, the request fails with the HTTP status code `403
8716
8745
  # Forbidden` (access denied).
8717
8746
  #
8747
+ # @option params [Array<String>] :optional_object_attributes
8748
+ # Specifies the optional fields that you want returned in the response.
8749
+ # Fields that you do not specify are not returned.
8750
+ #
8718
8751
  # @return [Types::ListObjectsV2Output] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8719
8752
  #
8720
8753
  # * {Types::ListObjectsV2Output#is_truncated #is_truncated} => Boolean
@@ -8729,6 +8762,7 @@ module Aws::S3
8729
8762
  # * {Types::ListObjectsV2Output#continuation_token #continuation_token} => String
8730
8763
  # * {Types::ListObjectsV2Output#next_continuation_token #next_continuation_token} => String
8731
8764
  # * {Types::ListObjectsV2Output#start_after #start_after} => String
8765
+ # * {Types::ListObjectsV2Output#request_charged #request_charged} => String
8732
8766
  #
8733
8767
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8734
8768
  #
@@ -8782,6 +8816,7 @@ module Aws::S3
8782
8816
  # start_after: "StartAfter",
8783
8817
  # request_payer: "requester", # accepts requester
8784
8818
  # expected_bucket_owner: "AccountId",
8819
+ # optional_object_attributes: ["RestoreStatus"], # accepts RestoreStatus
8785
8820
  # })
8786
8821
  #
8787
8822
  # @example Response structure
@@ -8797,6 +8832,8 @@ module Aws::S3
8797
8832
  # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
8798
8833
  # resp.contents[0].owner.display_name #=> String
8799
8834
  # resp.contents[0].owner.id #=> String
8835
+ # resp.contents[0].restore_status.is_restore_in_progress #=> Boolean
8836
+ # resp.contents[0].restore_status.restore_expiry_date #=> Time
8800
8837
  # resp.name #=> String
8801
8838
  # resp.prefix #=> String
8802
8839
  # resp.delimiter #=> String
@@ -8808,6 +8845,7 @@ module Aws::S3
8808
8845
  # resp.continuation_token #=> String
8809
8846
  # resp.next_continuation_token #=> String
8810
8847
  # resp.start_after #=> String
8848
+ # resp.request_charged #=> String, one of "requester"
8811
8849
  #
8812
8850
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectsV2 AWS API Documentation
8813
8851
  #
@@ -8884,7 +8922,7 @@ module Aws::S3
8884
8922
  # When you use this action with S3 on Outposts through the Amazon Web
8885
8923
  # Services SDKs, you provide the Outposts access point ARN in place of
8886
8924
  # the bucket name. For more information about S3 on Outposts ARNs, see
8887
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
8925
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
8888
8926
  #
8889
8927
  #
8890
8928
  #
@@ -9187,7 +9225,8 @@ module Aws::S3
9187
9225
  #
9188
9226
  # Permissions
9189
9227
  #
9190
- # : You can set access permissions using one of the following methods:
9228
+ # : You can set access permissions by using one of the following
9229
+ # methods:
9191
9230
  #
9192
9231
  # * Specify a canned ACL with the `x-amz-acl` request header. Amazon
9193
9232
  # S3 supports a set of predefined ACLs, known as *canned ACLs*. Each
@@ -9760,19 +9799,20 @@ module Aws::S3
9760
9799
  # By default, all buckets have a default encryption configuration that
9761
9800
  # uses server-side encryption with Amazon S3 managed keys (SSE-S3). You
9762
9801
  # can optionally configure default encryption for a bucket by using
9763
- # server-side encryption with an Amazon Web Services KMS key (SSE-KMS)
9764
- # or a customer-provided key (SSE-C). If you specify default encryption
9765
- # by using SSE-KMS, you can also configure Amazon S3 Bucket Keys. For
9766
- # information about bucket default encryption, see [Amazon S3 bucket
9767
- # default encryption][1] in the *Amazon S3 User Guide*. For more
9768
- # information about S3 Bucket Keys, see [Amazon S3 Bucket Keys][2] in
9769
- # the *Amazon S3 User Guide*.
9802
+ # server-side encryption with Key Management Service (KMS) keys
9803
+ # (SSE-KMS), dual-layer server-side encryption with Amazon Web Services
9804
+ # KMS keys (DSSE-KMS), or server-side encryption with customer-provided
9805
+ # keys (SSE-C). If you specify default encryption by using SSE-KMS, you
9806
+ # can also configure Amazon S3 Bucket Keys. For information about bucket
9807
+ # default encryption, see [Amazon S3 bucket default encryption][1] in
9808
+ # the *Amazon S3 User Guide*. For more information about S3 Bucket Keys,
9809
+ # see [Amazon S3 Bucket Keys][2] in the *Amazon S3 User Guide*.
9770
9810
  #
9771
9811
  # This action requires Amazon Web Services Signature Version 4. For more
9772
9812
  # information, see [ Authenticating Requests (Amazon Web Services
9773
9813
  # Signature Version 4)][3].
9774
9814
  #
9775
- # To use this operation, you must have permissions to perform the
9815
+ # To use this operation, you must have permission to perform the
9776
9816
  # `s3:PutEncryptionConfiguration` action. The bucket owner has this
9777
9817
  # permission by default. The bucket owner can grant this permission to
9778
9818
  # others. For more information about permissions, see [Permissions
@@ -10314,11 +10354,11 @@ module Aws::S3
10314
10354
  # 1,000 rules. This limit is not adjustable. Each rule consists of the
10315
10355
  # following:
10316
10356
  #
10317
- # * Filter identifying a subset of objects to which the rule applies.
10318
- # The filter can be based on a key name prefix, object tags, or a
10319
- # combination of both.
10357
+ # * A filter identifying a subset of objects to which the rule
10358
+ # applies. The filter can be based on a key name prefix, object
10359
+ # tags, or a combination of both.
10320
10360
  #
10321
- # * Status whether the rule is in effect.
10361
+ # * A status indicating whether the rule is in effect.
10322
10362
  #
10323
10363
  # * One or more lifecycle transition and expiration actions that you
10324
10364
  # want Amazon S3 to perform on the objects identified by the filter.
@@ -10342,7 +10382,7 @@ module Aws::S3
10342
10382
  # operation, a user must get the `s3:PutLifecycleConfiguration`
10343
10383
  # permission.
10344
10384
  #
10345
- # You can also explicitly deny permissions. Explicit deny also
10385
+ # You can also explicitly deny permissions. An explicit deny also
10346
10386
  # supersedes any other permissions. If you want to block users or
10347
10387
  # accounts from removing or deleting objects from your bucket, you
10348
10388
  # must deny them permissions for the following actions:
@@ -10525,7 +10565,7 @@ module Aws::S3
10525
10565
  # Grantee Values
10526
10566
  #
10527
10567
  # : You can specify the person (grantee) to whom you're assigning
10528
- # access rights (using request elements) in the following ways:
10568
+ # access rights (by using request elements) in the following ways:
10529
10569
  #
10530
10570
  # * By the person's ID:
10531
10571
  #
@@ -10533,23 +10573,23 @@ module Aws::S3
10533
10573
  # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
10534
10574
  # </Grantee>`
10535
10575
  #
10536
- # DisplayName is optional and ignored in the request.
10576
+ # `DisplayName` is optional and ignored in the request.
10537
10577
  #
10538
10578
  # * By Email address:
10539
10579
  #
10540
10580
  # ` <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10541
10581
  # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress></Grantee>`
10542
10582
  #
10543
- # The grantee is resolved to the CanonicalUser and, in a response to
10544
- # a GET Object acl request, appears as the CanonicalUser.
10583
+ # The grantee is resolved to the `CanonicalUser` and, in a response
10584
+ # to a `GETObjectAcl` request, appears as the CanonicalUser.
10545
10585
  #
10546
10586
  # * By URI:
10547
10587
  #
10548
10588
  # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10549
10589
  # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
10550
10590
  #
10551
- # To enable logging, you use LoggingEnabled and its children request
10552
- # elements. To disable logging, you use an empty BucketLoggingStatus
10591
+ # To enable logging, you use `LoggingEnabled` and its children request
10592
+ # elements. To disable logging, you use an empty `BucketLoggingStatus`
10553
10593
  # request element:
10554
10594
  #
10555
10595
  # `<BucketLoggingStatus xmlns="http://doc.s3.amazonaws.com/2006-03-01"
@@ -10704,7 +10744,7 @@ module Aws::S3
10704
10744
  #
10705
10745
  # * [ListBucketMetricsConfigurations][6]
10706
10746
  #
10707
- # `GetBucketLifecycle` has the following special error:
10747
+ # `PutBucketMetricsConfiguration` has the following special error:
10708
10748
  #
10709
10749
  # * Error code: `TooManyConfigurations`
10710
10750
  #
@@ -10899,7 +10939,7 @@ module Aws::S3
10899
10939
  #
10900
10940
  # By default, only the bucket owner can configure notifications on a
10901
10941
  # bucket. However, bucket owners can use a bucket policy to grant
10902
- # permission to other users to set this configuration with
10942
+ # permission to other users to set this configuration with the required
10903
10943
  # `s3:PutBucketNotification` permission.
10904
10944
  #
10905
10945
  # <note markdown="1"> The PUT notification is an atomic operation. For example, suppose your
@@ -12041,15 +12081,15 @@ module Aws::S3
12041
12081
  #
12042
12082
  # </note>
12043
12083
  #
12044
- # You have three mutually exclusive options to protect data using
12084
+ # You have four mutually exclusive options to protect data using
12045
12085
  # server-side encryption in Amazon S3, depending on how you choose to
12046
12086
  # manage the encryption keys. Specifically, the encryption key options
12047
12087
  # are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys
12048
- # (SSE-KMS), and customer-provided keys (SSE-C). Amazon S3 encrypts data
12049
- # with server-side encryption by using Amazon S3 managed keys (SSE-S3)
12050
- # by default. You can optionally tell Amazon S3 to encrypt data at by
12051
- # rest using server-side encryption with other key options. For more
12052
- # information, see [Using Server-Side Encryption][3].
12088
+ # (SSE-KMS or DSSE-KMS), and customer-provided keys (SSE-C). Amazon S3
12089
+ # encrypts data with server-side encryption by using Amazon S3 managed
12090
+ # keys (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt
12091
+ # data at rest by using server-side encryption with other key options.
12092
+ # For more information, see [Using Server-Side Encryption][3].
12053
12093
  #
12054
12094
  # When adding a new object, you can use headers to grant ACL-based
12055
12095
  # permissions to individual Amazon Web Services accounts or to
@@ -12145,7 +12185,7 @@ module Aws::S3
12145
12185
  # When you use this action with S3 on Outposts through the Amazon Web
12146
12186
  # Services SDKs, you provide the Outposts access point ARN in place of
12147
12187
  # the bucket name. For more information about S3 on Outposts ARNs, see
12148
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
12188
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
12149
12189
  #
12150
12190
  #
12151
12191
  #
@@ -12312,7 +12352,7 @@ module Aws::S3
12312
12352
  #
12313
12353
  # @option params [String] :server_side_encryption
12314
12354
  # The server-side encryption algorithm used when storing this object in
12315
- # Amazon S3 (for example, AES256, `aws:kms`).
12355
+ # Amazon S3 (for example, `AES256`, `aws:kms`, `aws:kms:dsse`).
12316
12356
  #
12317
12357
  # @option params [String] :storage_class
12318
12358
  # By default, Amazon S3 uses the STANDARD Storage Class to store newly
@@ -12369,15 +12409,15 @@ module Aws::S3
12369
12409
  # ensure that the encryption key was transmitted without error.
12370
12410
  #
12371
12411
  # @option params [String] :ssekms_key_id
12372
- # If `x-amz-server-side-encryption` has a valid value of `aws:kms`, this
12373
- # header specifies the ID of the Amazon Web Services Key Management
12374
- # Service (Amazon Web Services KMS) symmetric encryption customer
12375
- # managed key that was used for the object. If you specify
12376
- # `x-amz-server-side-encryption:aws:kms`, but do not provide`
12412
+ # If `x-amz-server-side-encryption` has a valid value of `aws:kms` or
12413
+ # `aws:kms:dsse`, this header specifies the ID of the Key Management
12414
+ # Service (KMS) symmetric encryption customer managed key that was used
12415
+ # for the object. If you specify `x-amz-server-side-encryption:aws:kms`
12416
+ # or `x-amz-server-side-encryption:aws:kms:dsse`, but do not provide`
12377
12417
  # x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
12378
- # Amazon Web Services managed key to protect the data. If the KMS key
12379
- # does not exist in the same account issuing the command, you must use
12380
- # the full ARN and not just the ID.
12418
+ # Amazon Web Services managed key (`aws/s3`) to protect the data. If the
12419
+ # KMS key does not exist in the same account that's issuing the
12420
+ # command, you must use the full ARN and not just the ID.
12381
12421
  #
12382
12422
  # @option params [String] :ssekms_encryption_context
12383
12423
  # Specifies the Amazon Web Services KMS Encryption Context to use for
@@ -12389,9 +12429,9 @@ module Aws::S3
12389
12429
  #
12390
12430
  # @option params [Boolean] :bucket_key_enabled
12391
12431
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
12392
- # encryption with server-side encryption using AWS KMS (SSE-KMS).
12393
- # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
12394
- # for object encryption with SSE-KMS.
12432
+ # encryption with server-side encryption using Key Management Service
12433
+ # (KMS) keys (SSE-KMS). Setting this header to `true` causes Amazon S3
12434
+ # to use an S3 Bucket Key for object encryption with SSE-KMS.
12395
12435
  #
12396
12436
  # Specifying this header with a PUT action doesn’t affect bucket-level
12397
12437
  # settings for S3 Bucket Key.
@@ -12449,23 +12489,6 @@ module Aws::S3
12449
12489
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
12450
12490
  #
12451
12491
  #
12452
- # @example Example: To upload an object
12453
- #
12454
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
12455
- # # syntax. S3 returns VersionId of the newly created object.
12456
- #
12457
- # resp = client.put_object({
12458
- # body: "HappyFace.jpg",
12459
- # bucket: "examplebucket",
12460
- # key: "HappyFace.jpg",
12461
- # })
12462
- #
12463
- # resp.to_h outputs the following:
12464
- # {
12465
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12466
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
12467
- # }
12468
- #
12469
12492
  # @example Example: To upload object and specify user-defined metadata
12470
12493
  #
12471
12494
  # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
@@ -12523,60 +12546,77 @@ module Aws::S3
12523
12546
  # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
12524
12547
  # }
12525
12548
  #
12526
- # @example Example: To upload an object and specify server-side encryption and object tags
12549
+ # @example Example: To upload an object and specify canned ACL.
12527
12550
  #
12528
- # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
12529
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
12551
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
12552
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
12530
12553
  #
12531
12554
  # resp = client.put_object({
12555
+ # acl: "authenticated-read",
12532
12556
  # body: "filetoupload",
12533
12557
  # bucket: "examplebucket",
12534
12558
  # key: "exampleobject",
12535
- # server_side_encryption: "AES256",
12536
- # tagging: "key1=value1&key2=value2",
12537
12559
  # })
12538
12560
  #
12539
12561
  # resp.to_h outputs the following:
12540
12562
  # {
12541
12563
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12542
- # server_side_encryption: "AES256",
12543
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
12564
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
12544
12565
  # }
12545
12566
  #
12546
- # @example Example: To upload an object and specify optional tags
12567
+ # @example Example: To upload an object
12547
12568
  #
12548
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
12549
- # # S3 returns version ID of the newly created object.
12569
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
12570
+ # # syntax. S3 returns VersionId of the newly created object.
12550
12571
  #
12551
12572
  # resp = client.put_object({
12552
- # body: "c:\\HappyFace.jpg",
12573
+ # body: "HappyFace.jpg",
12553
12574
  # bucket: "examplebucket",
12554
12575
  # key: "HappyFace.jpg",
12555
- # tagging: "key1=value1&key2=value2",
12556
12576
  # })
12557
12577
  #
12558
12578
  # resp.to_h outputs the following:
12559
12579
  # {
12560
12580
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12561
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
12581
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
12562
12582
  # }
12563
12583
  #
12564
- # @example Example: To upload an object and specify canned ACL.
12584
+ # @example Example: To upload an object and specify server-side encryption and object tags
12565
12585
  #
12566
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
12567
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
12586
+ # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
12587
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
12568
12588
  #
12569
12589
  # resp = client.put_object({
12570
- # acl: "authenticated-read",
12571
12590
  # body: "filetoupload",
12572
12591
  # bucket: "examplebucket",
12573
12592
  # key: "exampleobject",
12593
+ # server_side_encryption: "AES256",
12594
+ # tagging: "key1=value1&key2=value2",
12574
12595
  # })
12575
12596
  #
12576
12597
  # resp.to_h outputs the following:
12577
12598
  # {
12578
12599
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12579
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
12600
+ # server_side_encryption: "AES256",
12601
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
12602
+ # }
12603
+ #
12604
+ # @example Example: To upload an object and specify optional tags
12605
+ #
12606
+ # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
12607
+ # # S3 returns version ID of the newly created object.
12608
+ #
12609
+ # resp = client.put_object({
12610
+ # body: "c:\\HappyFace.jpg",
12611
+ # bucket: "examplebucket",
12612
+ # key: "HappyFace.jpg",
12613
+ # tagging: "key1=value1&key2=value2",
12614
+ # })
12615
+ #
12616
+ # resp.to_h outputs the following:
12617
+ # {
12618
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12619
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
12580
12620
  # }
12581
12621
  #
12582
12622
  # @example Streaming a file from disk
@@ -12922,7 +12962,7 @@ module Aws::S3
12922
12962
  # When you use this action with S3 on Outposts through the Amazon Web
12923
12963
  # Services SDKs, you provide the Outposts access point ARN in place of
12924
12964
  # the bucket name. For more information about S3 on Outposts ARNs, see
12925
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
12965
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
12926
12966
  #
12927
12967
  #
12928
12968
  #
@@ -13426,7 +13466,7 @@ module Aws::S3
13426
13466
  # When you use this action with S3 on Outposts through the Amazon Web
13427
13467
  # Services SDKs, you provide the Outposts access point ARN in place of
13428
13468
  # the bucket name. For more information about S3 on Outposts ARNs, see
13429
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
13469
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
13430
13470
  #
13431
13471
  #
13432
13472
  #
@@ -13725,19 +13765,20 @@ module Aws::S3
13725
13765
  #
13726
13766
  # Restoring objects
13727
13767
  #
13728
- # : Objects that you archive to the S3 Glacier Flexible Retrieval or S3
13729
- # Glacier Deep Archive storage class, and S3 Intelligent-Tiering
13730
- # Archive or S3 Intelligent-Tiering Deep Archive tiers, are not
13731
- # accessible in real time. For objects in the S3 Glacier Flexible
13732
- # Retrieval or S3 Glacier Deep Archive storage classes, you must first
13733
- # initiate a restore request, and then wait until a temporary copy of
13734
- # the object is available. If you want a permanent copy of the object,
13735
- # create a copy of it in the Amazon S3 Standard storage class in your
13736
- # S3 bucket. To access an archived object, you must restore the object
13737
- # for the duration (number of days) that you specify. For objects in
13738
- # the Archive Access or Deep Archive Access tiers of S3
13739
- # Intelligent-Tiering, you must first initiate a restore request, and
13740
- # then wait until the object is moved into the Frequent Access tier.
13768
+ # : Objects that you archive to the S3 Glacier Flexible Retrieval
13769
+ # Flexible Retrieval or S3 Glacier Deep Archive storage class, and S3
13770
+ # Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive
13771
+ # tiers, are not accessible in real time. For objects in the S3
13772
+ # Glacier Flexible Retrieval Flexible Retrieval or S3 Glacier Deep
13773
+ # Archive storage classes, you must first initiate a restore request,
13774
+ # and then wait until a temporary copy of the object is available. If
13775
+ # you want a permanent copy of the object, create a copy of it in the
13776
+ # Amazon S3 Standard storage class in your S3 bucket. To access an
13777
+ # archived object, you must restore the object for the duration
13778
+ # (number of days) that you specify. For objects in the Archive Access
13779
+ # or Deep Archive Access tiers of S3 Intelligent-Tiering, you must
13780
+ # first initiate a restore request, and then wait until the object is
13781
+ # moved into the Frequent Access tier.
13741
13782
  #
13742
13783
  # To restore a specific object version, you can provide a version ID.
13743
13784
  # If you don't provide a version ID, Amazon S3 restores the current
@@ -13748,37 +13789,38 @@ module Aws::S3
13748
13789
  # request body:
13749
13790
  #
13750
13791
  # * `Expedited` - Expedited retrievals allow you to quickly access
13751
- # your data stored in the S3 Glacier Flexible Retrieval storage
13752
- # class or S3 Intelligent-Tiering Archive tier when occasional
13753
- # urgent requests for restoring archives are required. For all but
13754
- # the largest archived objects (250 MB+), data accessed using
13755
- # Expedited retrievals is typically made available within 1–5
13756
- # minutes. Provisioned capacity ensures that retrieval capacity for
13757
- # Expedited retrievals is available when you need it. Expedited
13758
- # retrievals and provisioned capacity are not available for objects
13759
- # stored in the S3 Glacier Deep Archive storage class or S3
13760
- # Intelligent-Tiering Deep Archive tier.
13792
+ # your data stored in the S3 Glacier Flexible Retrieval Flexible
13793
+ # Retrieval storage class or S3 Intelligent-Tiering Archive tier
13794
+ # when occasional urgent requests for restoring archives are
13795
+ # required. For all but the largest archived objects (250 MB+), data
13796
+ # accessed using Expedited retrievals is typically made available
13797
+ # within 1–5 minutes. Provisioned capacity ensures that retrieval
13798
+ # capacity for Expedited retrievals is available when you need it.
13799
+ # Expedited retrievals and provisioned capacity are not available
13800
+ # for objects stored in the S3 Glacier Deep Archive storage class or
13801
+ # S3 Intelligent-Tiering Deep Archive tier.
13761
13802
  #
13762
13803
  # * `Standard` - Standard retrievals allow you to access any of your
13763
13804
  # archived objects within several hours. This is the default option
13764
13805
  # for retrieval requests that do not specify the retrieval option.
13765
13806
  # Standard retrievals typically finish within 3–5 hours for objects
13766
- # stored in the S3 Glacier Flexible Retrieval storage class or S3
13767
- # Intelligent-Tiering Archive tier. They typically finish within 12
13768
- # hours for objects stored in the S3 Glacier Deep Archive storage
13769
- # class or S3 Intelligent-Tiering Deep Archive tier. Standard
13770
- # retrievals are free for objects stored in S3 Intelligent-Tiering.
13807
+ # stored in the S3 Glacier Flexible Retrieval Flexible Retrieval
13808
+ # storage class or S3 Intelligent-Tiering Archive tier. They
13809
+ # typically finish within 12 hours for objects stored in the S3
13810
+ # Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep
13811
+ # Archive tier. Standard retrievals are free for objects stored in
13812
+ # S3 Intelligent-Tiering.
13771
13813
  #
13772
13814
  # * `Bulk` - Bulk retrievals free for objects stored in the S3 Glacier
13773
13815
  # Flexible Retrieval and S3 Intelligent-Tiering storage classes,
13774
13816
  # enabling you to retrieve large amounts, even petabytes, of data at
13775
13817
  # no cost. Bulk retrievals typically finish within 5–12 hours for
13776
- # objects stored in the S3 Glacier Flexible Retrieval storage class
13777
- # or S3 Intelligent-Tiering Archive tier. Bulk retrievals are also
13778
- # the lowest-cost retrieval option when restoring objects from S3
13779
- # Glacier Deep Archive. They typically finish within 48 hours for
13780
- # objects stored in the S3 Glacier Deep Archive storage class or S3
13781
- # Intelligent-Tiering Deep Archive tier.
13818
+ # objects stored in the S3 Glacier Flexible Retrieval Flexible
13819
+ # Retrieval storage class or S3 Intelligent-Tiering Archive tier.
13820
+ # Bulk retrievals are also the lowest-cost retrieval option when
13821
+ # restoring objects from S3 Glacier Deep Archive. They typically
13822
+ # finish within 48 hours for objects stored in the S3 Glacier Deep
13823
+ # Archive storage class or S3 Intelligent-Tiering Deep Archive tier.
13782
13824
  #
13783
13825
  # For more information about archive retrieval options and provisioned
13784
13826
  # capacity for `Expedited` data access, see [Restoring Archived
@@ -13886,7 +13928,7 @@ module Aws::S3
13886
13928
  # When you use this action with S3 on Outposts through the Amazon Web
13887
13929
  # Services SDKs, you provide the Outposts access point ARN in place of
13888
13930
  # the bucket name. For more information about S3 on Outposts ARNs, see
13889
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
13931
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
13890
13932
  #
13891
13933
  #
13892
13934
  #
@@ -14139,10 +14181,14 @@ module Aws::S3
14139
14181
  # the request parameters), you cannot specify the range of bytes of
14140
14182
  # an object to return.
14141
14183
  #
14142
- # * GLACIER, DEEP\_ARCHIVE and REDUCED\_REDUNDANCY storage classes:
14143
- # You cannot specify the GLACIER, DEEP\_ARCHIVE, or
14144
- # `REDUCED_REDUNDANCY` storage classes. For more information, about
14145
- # storage classes see [Storage Classes][9] in the *Amazon S3 User
14184
+ # * The `GLACIER`, `DEEP_ARCHIVE`, and `REDUCED_REDUNDANCY` storage
14185
+ # classes, or the `ARCHIVE_ACCESS` and `DEEP_ARCHIVE_ACCESS` access
14186
+ # tiers of the `INTELLIGENT_TIERING` storage class: You cannot query
14187
+ # objects in the `GLACIER`, `DEEP_ARCHIVE`, or `REDUCED_REDUNDANCY`
14188
+ # storage classes, nor objects in the `ARCHIVE_ACCESS` or
14189
+ # `DEEP_ARCHIVE_ACCESS` access tiers of the `INTELLIGENT_TIERING`
14190
+ # storage class. For more information about storage classes, see
14191
+ # [Using Amazon S3 storage classes][9] in the *Amazon S3 User
14146
14192
  # Guide*.
14147
14193
  #
14148
14194
  # Special Errors
@@ -14168,7 +14214,7 @@ module Aws::S3
14168
14214
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
14169
14215
  # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
14170
14216
  # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
14171
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro
14217
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html
14172
14218
  # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
14173
14219
  # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
14174
14220
  # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
@@ -14616,7 +14662,7 @@ module Aws::S3
14616
14662
  # When you use this action with S3 on Outposts through the Amazon Web
14617
14663
  # Services SDKs, you provide the Outposts access point ARN in place of
14618
14664
  # the bucket name. For more information about S3 on Outposts ARNs, see
14619
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
14665
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
14620
14666
  #
14621
14667
  #
14622
14668
  #
@@ -14965,7 +15011,7 @@ module Aws::S3
14965
15011
  # When you use this action with S3 on Outposts through the Amazon Web
14966
15012
  # Services SDKs, you provide the Outposts access point ARN in place of
14967
15013
  # the bucket name. For more information about S3 on Outposts ARNs, see
14968
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
15014
+ # [What is S3 on Outposts?][2] in the *Amazon S3 User Guide*.
14969
15015
  #
14970
15016
  #
14971
15017
  #
@@ -15115,45 +15161,45 @@ module Aws::S3
15115
15161
  # * {Types::UploadPartCopyOutput#request_charged #request_charged} => String
15116
15162
  #
15117
15163
  #
15118
- # @example Example: To upload a part by copying byte range from an existing object as data source
15164
+ # @example Example: To upload a part by copying data from an existing object as data source
15119
15165
  #
15120
- # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
15121
- # # data source.
15166
+ # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
15122
15167
  #
15123
15168
  # resp = client.upload_part_copy({
15124
15169
  # bucket: "examplebucket",
15125
15170
  # copy_source: "/bucketname/sourceobjectkey",
15126
- # copy_source_range: "bytes=1-100000",
15127
15171
  # key: "examplelargeobject",
15128
- # part_number: 2,
15172
+ # part_number: 1,
15129
15173
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
15130
15174
  # })
15131
15175
  #
15132
15176
  # resp.to_h outputs the following:
15133
15177
  # {
15134
15178
  # copy_part_result: {
15135
- # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
15136
- # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
15179
+ # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
15180
+ # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
15137
15181
  # },
15138
15182
  # }
15139
15183
  #
15140
- # @example Example: To upload a part by copying data from an existing object as data source
15184
+ # @example Example: To upload a part by copying byte range from an existing object as data source
15141
15185
  #
15142
- # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
15186
+ # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
15187
+ # # data source.
15143
15188
  #
15144
15189
  # resp = client.upload_part_copy({
15145
15190
  # bucket: "examplebucket",
15146
15191
  # copy_source: "/bucketname/sourceobjectkey",
15192
+ # copy_source_range: "bytes=1-100000",
15147
15193
  # key: "examplelargeobject",
15148
- # part_number: 1,
15194
+ # part_number: 2,
15149
15195
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
15150
15196
  # })
15151
15197
  #
15152
15198
  # resp.to_h outputs the following:
15153
15199
  # {
15154
15200
  # copy_part_result: {
15155
- # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
15156
- # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
15201
+ # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
15202
+ # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
15157
15203
  # },
15158
15204
  # }
15159
15205
  #
@@ -15601,7 +15647,7 @@ module Aws::S3
15601
15647
  params: params,
15602
15648
  config: config)
15603
15649
  context[:gem_name] = 'aws-sdk-s3'
15604
- context[:gem_version] = '1.124.0'
15650
+ context[:gem_version] = '1.128.0'
15605
15651
  Seahorse::Client::Request.new(handlers, context)
15606
15652
  end
15607
15653