aws-sdk-s3 1.120.1 → 1.122.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -956,166 +956,169 @@ module Aws::S3
956
956
  # endpoint, you get a 400 `Bad Request` error. For more information, see
957
957
  # [Transfer Acceleration][4].
958
958
  #
959
- # **Metadata**
960
- #
961
- # When copying an object, you can preserve all metadata (default) or
962
- # specify new metadata. However, the ACL is not preserved and is set to
963
- # private for the user making the request. To override the default ACL
964
- # setting, specify a new ACL when generating a copy request. For more
965
- # information, see [Using ACLs][5].
966
- #
967
- # To specify whether you want the object metadata copied from the source
968
- # object or replaced with metadata provided in the request, you can
969
- # optionally add the `x-amz-metadata-directive` header. When you grant
970
- # permissions, you can use the `s3:x-amz-metadata-directive` condition
971
- # key to enforce certain metadata behavior when objects are uploaded.
972
- # For more information, see [Specifying Conditions in a Policy][6] in
973
- # the *Amazon S3 User Guide*. For a complete list of Amazon S3-specific
974
- # condition keys, see [Actions, Resources, and Condition Keys for Amazon
975
- # S3][7].
976
- #
977
- # <note markdown="1"> `x-amz-website-redirect-location` is unique to each object and must be
978
- # specified in the request headers to copy the value.
959
+ # Metadata
960
+ #
961
+ # : When copying an object, you can preserve all metadata (default) or
962
+ # specify new metadata. However, the ACL is not preserved and is set
963
+ # to private for the user making the request. To override the default
964
+ # ACL setting, specify a new ACL when generating a copy request. For
965
+ # more information, see [Using ACLs][5].
966
+ #
967
+ # To specify whether you want the object metadata copied from the
968
+ # source object or replaced with metadata provided in the request, you
969
+ # can optionally add the `x-amz-metadata-directive` header. When you
970
+ # grant permissions, you can use the `s3:x-amz-metadata-directive`
971
+ # condition key to enforce certain metadata behavior when objects are
972
+ # uploaded. For more information, see [Specifying Conditions in a
973
+ # Policy][6] in the *Amazon S3 User Guide*. For a complete list of
974
+ # Amazon S3-specific condition keys, see [Actions, Resources, and
975
+ # Condition Keys for Amazon S3][7].
976
+ #
977
+ # <note markdown="1"> `x-amz-website-redirect-location` is unique to each object and must
978
+ # be specified in the request headers to copy the value.
979
979
  #
980
- # </note>
981
- #
982
- # **x-amz-copy-source-if Headers**
983
- #
984
- # To only copy an object under certain conditions, such as whether the
985
- # `Etag` matches or whether the object was modified before or after a
986
- # specified date, use the following request parameters:
980
+ # </note>
987
981
  #
988
- # * `x-amz-copy-source-if-match`
982
+ # x-amz-copy-source-if Headers
989
983
  #
990
- # * `x-amz-copy-source-if-none-match`
984
+ # : To only copy an object under certain conditions, such as whether the
985
+ # `Etag` matches or whether the object was modified before or after a
986
+ # specified date, use the following request parameters:
991
987
  #
992
- # * `x-amz-copy-source-if-unmodified-since`
988
+ # * `x-amz-copy-source-if-match`
993
989
  #
994
- # * `x-amz-copy-source-if-modified-since`
990
+ # * `x-amz-copy-source-if-none-match`
995
991
  #
996
- # If both the `x-amz-copy-source-if-match` and
997
- # `x-amz-copy-source-if-unmodified-since` headers are present in the
998
- # request and evaluate as follows, Amazon S3 returns `200 OK` and copies
999
- # the data:
992
+ # * `x-amz-copy-source-if-unmodified-since`
1000
993
  #
1001
- # * `x-amz-copy-source-if-match` condition evaluates to true
994
+ # * `x-amz-copy-source-if-modified-since`
1002
995
  #
1003
- # * `x-amz-copy-source-if-unmodified-since` condition evaluates to false
996
+ # If both the `x-amz-copy-source-if-match` and
997
+ # `x-amz-copy-source-if-unmodified-since` headers are present in the
998
+ # request and evaluate as follows, Amazon S3 returns `200 OK` and
999
+ # copies the data:
1004
1000
  #
1005
- # If both the `x-amz-copy-source-if-none-match` and
1006
- # `x-amz-copy-source-if-modified-since` headers are present in the
1007
- # request and evaluate as follows, Amazon S3 returns the `412
1008
- # Precondition Failed` response code:
1001
+ # * `x-amz-copy-source-if-match` condition evaluates to true
1009
1002
  #
1010
- # * `x-amz-copy-source-if-none-match` condition evaluates to false
1003
+ # * `x-amz-copy-source-if-unmodified-since` condition evaluates to
1004
+ # false
1011
1005
  #
1012
- # * `x-amz-copy-source-if-modified-since` condition evaluates to true
1006
+ # If both the `x-amz-copy-source-if-none-match` and
1007
+ # `x-amz-copy-source-if-modified-since` headers are present in the
1008
+ # request and evaluate as follows, Amazon S3 returns the `412
1009
+ # Precondition Failed` response code:
1013
1010
  #
1014
- # <note markdown="1"> All headers with the `x-amz-` prefix, including `x-amz-copy-source`,
1015
- # must be signed.
1011
+ # * `x-amz-copy-source-if-none-match` condition evaluates to false
1016
1012
  #
1017
- # </note>
1013
+ # * `x-amz-copy-source-if-modified-since` condition evaluates to true
1018
1014
  #
1019
- # **Server-side encryption**
1020
- #
1021
- # Amazon S3 automatically encrypts all new objects that are copied to an
1022
- # S3 bucket. When copying an object, if you don't specify encryption
1023
- # information in your copy request, the encryption setting of the target
1024
- # object is set to the default encryption configuration of the
1025
- # destination bucket. By default, all buckets have a base level of
1026
- # encryption configuration that uses server-side encryption with Amazon
1027
- # S3 managed keys (SSE-S3). If the destination bucket has a default
1028
- # encryption configuration that uses server-side encryption with an Key
1029
- # Management Service (KMS) key (SSE-KMS), or a customer-provided
1030
- # encryption key (SSE-C), Amazon S3 uses the corresponding KMS key, or a
1031
- # customer-provided key to encrypt the target object copy. When you
1032
- # perform a CopyObject operation, if you want to use a different type of
1033
- # encryption setting for the target object, you can use other
1034
- # appropriate encryption-related headers to encrypt the target object
1035
- # with a KMS key, an Amazon S3 managed key, or a customer-provided key.
1036
- # With server-side encryption, Amazon S3 encrypts your data as it writes
1037
- # it to disks in its data centers and decrypts the data when you access
1038
- # it. If the encryption setting in your request is different from the
1039
- # default encryption configuration of the destination bucket, the
1040
- # encryption setting in your request takes precedence. If the source
1041
- # object for the copy is stored in Amazon S3 using SSE-C, you must
1042
- # provide the necessary encryption information in your request so that
1043
- # Amazon S3 can decrypt the object for copying. For more information
1044
- # about server-side encryption, see [Using Server-Side Encryption][8].
1045
- #
1046
- # If a target object uses SSE-KMS, you can enable an S3 Bucket Key for
1047
- # the object. For more information, see [Amazon S3 Bucket Keys][9] in
1048
- # the *Amazon S3 User Guide*.
1015
+ # <note markdown="1"> All headers with the `x-amz-` prefix, including `x-amz-copy-source`,
1016
+ # must be signed.
1049
1017
  #
1050
- # **Access Control List (ACL)-Specific Request Headers**
1018
+ # </note>
1051
1019
  #
1052
- # When copying an object, you can optionally use headers to grant
1053
- # ACL-based permissions. By default, all objects are private. Only the
1054
- # owner has full access control. When adding a new object, you can grant
1055
- # permissions to individual Amazon Web Services accounts or to
1056
- # predefined groups defined by Amazon S3. These permissions are then
1057
- # added to the ACL on the object. For more information, see [Access
1058
- # Control List (ACL) Overview][10] and [Managing ACLs Using the REST
1059
- # API][11].
1020
+ # Server-side encryption
1021
+ #
1022
+ # : Amazon S3 automatically encrypts all new objects that are copied to
1023
+ # an S3 bucket. When copying an object, if you don't specify
1024
+ # encryption information in your copy request, the encryption setting
1025
+ # of the target object is set to the default encryption configuration
1026
+ # of the destination bucket. By default, all buckets have a base level
1027
+ # of encryption configuration that uses server-side encryption with
1028
+ # Amazon S3 managed keys (SSE-S3). If the destination bucket has a
1029
+ # default encryption configuration that uses server-side encryption
1030
+ # with an Key Management Service (KMS) key (SSE-KMS), or a
1031
+ # customer-provided encryption key (SSE-C), Amazon S3 uses the
1032
+ # corresponding KMS key, or a customer-provided key to encrypt the
1033
+ # target object copy.
1034
+ #
1035
+ # When you perform a CopyObject operation, if you want to use a
1036
+ # different type of encryption setting for the target object, you can
1037
+ # use other appropriate encryption-related headers to encrypt the
1038
+ # target object with a KMS key, an Amazon S3 managed key, or a
1039
+ # customer-provided key. With server-side encryption, Amazon S3
1040
+ # encrypts your data as it writes it to disks in its data centers and
1041
+ # decrypts the data when you access it. If the encryption setting in
1042
+ # your request is different from the default encryption configuration
1043
+ # of the destination bucket, the encryption setting in your request
1044
+ # takes precedence. If the source object for the copy is stored in
1045
+ # Amazon S3 using SSE-C, you must provide the necessary encryption
1046
+ # information in your request so that Amazon S3 can decrypt the object
1047
+ # for copying. For more information about server-side encryption, see
1048
+ # [Using Server-Side Encryption][8].
1049
+ #
1050
+ # If a target object uses SSE-KMS, you can enable an S3 Bucket Key for
1051
+ # the object. For more information, see [Amazon S3 Bucket Keys][9] in
1052
+ # the *Amazon S3 User Guide*.
1053
+ #
1054
+ # Access Control List (ACL)-Specific Request Headers
1055
+ #
1056
+ # : When copying an object, you can optionally use headers to grant
1057
+ # ACL-based permissions. By default, all objects are private. Only the
1058
+ # owner has full access control. When adding a new object, you can
1059
+ # grant permissions to individual Amazon Web Services accounts or to
1060
+ # predefined groups defined by Amazon S3. These permissions are then
1061
+ # added to the ACL on the object. For more information, see [Access
1062
+ # Control List (ACL) Overview][10] and [Managing ACLs Using the REST
1063
+ # API][11].
1060
1064
  #
1061
- # If the bucket that you're copying objects to uses the bucket owner
1062
- # enforced setting for S3 Object Ownership, ACLs are disabled and no
1063
- # longer affect permissions. Buckets that use this setting only accept
1064
- # PUT requests that don't specify an ACL or PUT requests that specify
1065
- # bucket owner full control ACLs, such as the
1066
- # `bucket-owner-full-control` canned ACL or an equivalent form of this
1067
- # ACL expressed in the XML format.
1065
+ # If the bucket that you're copying objects to uses the bucket owner
1066
+ # enforced setting for S3 Object Ownership, ACLs are disabled and no
1067
+ # longer affect permissions. Buckets that use this setting only accept
1068
+ # PUT requests that don't specify an ACL or PUT requests that specify
1069
+ # bucket owner full control ACLs, such as the
1070
+ # `bucket-owner-full-control` canned ACL or an equivalent form of this
1071
+ # ACL expressed in the XML format.
1068
1072
  #
1069
- # For more information, see [ Controlling ownership of objects and
1070
- # disabling ACLs][12] in the *Amazon S3 User Guide*.
1073
+ # For more information, see [ Controlling ownership of objects and
1074
+ # disabling ACLs][12] in the *Amazon S3 User Guide*.
1071
1075
  #
1072
- # <note markdown="1"> If your bucket uses the bucket owner enforced setting for Object
1073
- # Ownership, all objects written to the bucket by any account will be
1074
- # owned by the bucket owner.
1076
+ # <note markdown="1"> If your bucket uses the bucket owner enforced setting for Object
1077
+ # Ownership, all objects written to the bucket by any account will be
1078
+ # owned by the bucket owner.
1075
1079
  #
1076
- # </note>
1080
+ # </note>
1077
1081
  #
1078
- # **Checksums**
1082
+ # Checksums
1079
1083
  #
1080
- # When copying an object, if it has a checksum, that checksum will be
1081
- # copied to the new object by default. When you copy the object over,
1082
- # you may optionally specify a different checksum algorithm to use with
1083
- # the `x-amz-checksum-algorithm` header.
1084
+ # : When copying an object, if it has a checksum, that checksum will be
1085
+ # copied to the new object by default. When you copy the object over,
1086
+ # you may optionally specify a different checksum algorithm to use
1087
+ # with the `x-amz-checksum-algorithm` header.
1084
1088
  #
1085
- # **Storage Class Options**
1089
+ # Storage Class Options
1086
1090
  #
1087
- # You can use the `CopyObject` action to change the storage class of an
1088
- # object that is already stored in Amazon S3 using the `StorageClass`
1089
- # parameter. For more information, see [Storage Classes][13] in the
1090
- # *Amazon S3 User Guide*.
1091
+ # : You can use the `CopyObject` action to change the storage class of
1092
+ # an object that is already stored in Amazon S3 using the
1093
+ # `StorageClass` parameter. For more information, see [Storage
1094
+ # Classes][13] in the *Amazon S3 User Guide*.
1091
1095
  #
1092
- # **Versioning**
1096
+ # If the source object's storage class is GLACIER, you must restore a
1097
+ # copy of this object before you can use it as a source object for the
1098
+ # copy operation. For more information, see [RestoreObject][14]. For
1099
+ # more information, see [Copying Objects][15].
1093
1100
  #
1094
- # By default, `x-amz-copy-source` identifies the current version of an
1095
- # object to copy. If the current version is a delete marker, Amazon S3
1096
- # behaves as if the object was deleted. To copy a different version, use
1097
- # the `versionId` subresource.
1101
+ # Versioning
1098
1102
  #
1099
- # If you enable versioning on the target bucket, Amazon S3 generates a
1100
- # unique version ID for the object being copied. This version ID is
1101
- # different from the version ID of the source object. Amazon S3 returns
1102
- # the version ID of the copied object in the `x-amz-version-id` response
1103
- # header in the response.
1103
+ # : By default, `x-amz-copy-source` identifies the current version of an
1104
+ # object to copy. If the current version is a delete marker, Amazon S3
1105
+ # behaves as if the object was deleted. To copy a different version,
1106
+ # use the `versionId` subresource.
1104
1107
  #
1105
- # If you do not enable versioning or suspend it on the target bucket,
1106
- # the version ID that Amazon S3 generates is always null.
1108
+ # If you enable versioning on the target bucket, Amazon S3 generates a
1109
+ # unique version ID for the object being copied. This version ID is
1110
+ # different from the version ID of the source object. Amazon S3
1111
+ # returns the version ID of the copied object in the
1112
+ # `x-amz-version-id` response header in the response.
1107
1113
  #
1108
- # If the source object's storage class is GLACIER, you must restore a
1109
- # copy of this object before you can use it as a source object for the
1110
- # copy operation. For more information, see [RestoreObject][14].
1114
+ # If you do not enable versioning or suspend it on the target bucket,
1115
+ # the version ID that Amazon S3 generates is always null.
1111
1116
  #
1112
1117
  # The following operations are related to `CopyObject`:
1113
1118
  #
1114
- # * [PutObject][15]
1115
- #
1116
- # * [GetObject][16]
1119
+ # * [PutObject][16]
1117
1120
  #
1118
- # For more information, see [Copying Objects][17].
1121
+ # * [GetObject][17]
1119
1122
  #
1120
1123
  #
1121
1124
  #
@@ -1133,9 +1136,9 @@ module Aws::S3
1133
1136
  # [12]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
1134
1137
  # [13]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
1135
1138
  # [14]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
1136
- # [15]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1137
- # [16]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
1138
- # [17]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
1139
+ # [15]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
1140
+ # [16]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1141
+ # [17]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
1139
1142
  #
1140
1143
  # @option params [String] :acl
1141
1144
  # The canned ACL to apply to the object.
@@ -1470,7 +1473,7 @@ module Aws::S3
1470
1473
  # metadata_directive: "COPY", # accepts COPY, REPLACE
1471
1474
  # tagging_directive: "COPY", # accepts COPY, REPLACE
1472
1475
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
1473
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
1476
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW
1474
1477
  # website_redirect_location: "WebsiteRedirectLocation",
1475
1478
  # sse_customer_algorithm: "SSECustomerAlgorithm",
1476
1479
  # sse_customer_key: "SSECustomerKey",
@@ -1547,100 +1550,102 @@ module Aws::S3
1547
1550
  #
1548
1551
  # </note>
1549
1552
  #
1550
- # **Access control lists (ACLs)**
1553
+ # Access control lists (ACLs)
1551
1554
  #
1552
- # When creating a bucket using this operation, you can optionally
1553
- # configure the bucket ACL to specify the accounts or groups that should
1554
- # be granted specific permissions on the bucket.
1555
+ # : When creating a bucket using this operation, you can optionally
1556
+ # configure the bucket ACL to specify the accounts or groups that
1557
+ # should be granted specific permissions on the bucket.
1555
1558
  #
1556
- # If your CreateBucket request sets bucket owner enforced for S3 Object
1557
- # Ownership and specifies a bucket ACL that provides access to an
1558
- # external Amazon Web Services account, your request fails with a `400`
1559
- # error and returns the `InvalidBucketAclWithObjectOwnership` error
1560
- # code. For more information, see [Controlling object ownership][5] in
1561
- # the *Amazon S3 User Guide*.
1559
+ # If your CreateBucket request sets bucket owner enforced for S3
1560
+ # Object Ownership and specifies a bucket ACL that provides access to
1561
+ # an external Amazon Web Services account, your request fails with a
1562
+ # `400` error and returns the `InvalidBucketAclWithObjectOwnership`
1563
+ # error code. For more information, see [Controlling object
1564
+ # ownership][5] in the *Amazon S3 User Guide*.
1562
1565
  #
1563
- # There are two ways to grant the appropriate permissions using the
1564
- # request headers.
1566
+ # There are two ways to grant the appropriate permissions using the
1567
+ # request headers.
1565
1568
  #
1566
- # * Specify a canned ACL using the `x-amz-acl` request header. Amazon S3
1567
- # supports a set of predefined ACLs, known as *canned ACLs*. Each
1568
- # canned ACL has a predefined set of grantees and permissions. For
1569
- # more information, see [Canned ACL][6].
1569
+ # * Specify a canned ACL using the `x-amz-acl` request header. Amazon
1570
+ # S3 supports a set of predefined ACLs, known as *canned ACLs*. Each
1571
+ # canned ACL has a predefined set of grantees and permissions. For
1572
+ # more information, see [Canned ACL][6].
1570
1573
  #
1571
- # * Specify access permissions explicitly using the `x-amz-grant-read`,
1572
- # `x-amz-grant-write`, `x-amz-grant-read-acp`,
1573
- # `x-amz-grant-write-acp`, and `x-amz-grant-full-control` headers.
1574
- # These headers map to the set of permissions Amazon S3 supports in an
1575
- # ACL. For more information, see [Access control list (ACL)
1576
- # overview][7].
1574
+ # * Specify access permissions explicitly using the
1575
+ # `x-amz-grant-read`, `x-amz-grant-write`, `x-amz-grant-read-acp`,
1576
+ # `x-amz-grant-write-acp`, and `x-amz-grant-full-control` headers.
1577
+ # These headers map to the set of permissions Amazon S3 supports in
1578
+ # an ACL. For more information, see [Access control list (ACL)
1579
+ # overview][7].
1577
1580
  #
1578
- # You specify each grantee as a type=value pair, where the type is one
1579
- # of the following:
1581
+ # You specify each grantee as a type=value pair, where the type is
1582
+ # one of the following:
1580
1583
  #
1581
- # * `id` – if the value specified is the canonical user ID of an
1582
- # Amazon Web Services account
1584
+ # * `id` – if the value specified is the canonical user ID of an
1585
+ # Amazon Web Services account
1583
1586
  #
1584
- # * `uri` – if you are granting permissions to a predefined group
1587
+ # * `uri` – if you are granting permissions to a predefined group
1585
1588
  #
1586
- # * `emailAddress` – if the value specified is the email address of an
1587
- # Amazon Web Services account
1589
+ # * `emailAddress` – if the value specified is the email address of
1590
+ # an Amazon Web Services account
1588
1591
  #
1589
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in
1590
- # the following Amazon Web Services Regions:
1592
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
1593
+ # the following Amazon Web Services Regions:
1591
1594
  #
1592
- # * US East (N. Virginia)
1595
+ # * US East (N. Virginia)
1593
1596
  #
1594
- # * US West (N. California)
1597
+ # * US West (N. California)
1595
1598
  #
1596
- # * US West (Oregon)
1599
+ # * US West (Oregon)
1597
1600
  #
1598
- # * Asia Pacific (Singapore)
1601
+ # * Asia Pacific (Singapore)
1599
1602
  #
1600
- # * Asia Pacific (Sydney)
1603
+ # * Asia Pacific (Sydney)
1601
1604
  #
1602
- # * Asia Pacific (Tokyo)
1605
+ # * Asia Pacific (Tokyo)
1603
1606
  #
1604
- # * Europe (Ireland)
1607
+ # * Europe (Ireland)
1605
1608
  #
1606
- # * South America (São Paulo)
1609
+ # * South America (São Paulo)
1607
1610
  #
1608
- # For a list of all the Amazon S3 supported Regions and endpoints,
1609
- # see [Regions and Endpoints][8] in the Amazon Web Services General
1610
- # Reference.
1611
+ # For a list of all the Amazon S3 supported Regions and endpoints,
1612
+ # see [Regions and Endpoints][8] in the Amazon Web Services
1613
+ # General Reference.
1611
1614
  #
1612
- # </note>
1615
+ # </note>
1613
1616
  #
1614
- # For example, the following `x-amz-grant-read` header grants the
1615
- # Amazon Web Services accounts identified by account IDs permissions
1616
- # to read object data and its metadata:
1617
+ # For example, the following `x-amz-grant-read` header grants the
1618
+ # Amazon Web Services accounts identified by account IDs permissions
1619
+ # to read object data and its metadata:
1617
1620
  #
1618
- # `x-amz-grant-read: id="11112222333", id="444455556666" `
1621
+ # `x-amz-grant-read: id="11112222333", id="444455556666" `
1619
1622
  #
1620
- # <note markdown="1"> You can use either a canned ACL or specify access permissions
1621
- # explicitly. You cannot do both.
1623
+ # <note markdown="1"> You can use either a canned ACL or specify access permissions
1624
+ # explicitly. You cannot do both.
1622
1625
  #
1623
- # </note>
1626
+ # </note>
1624
1627
  #
1625
- # **Permissions**
1628
+ # Permissions
1626
1629
  #
1627
- # In addition to `s3:CreateBucket`, the following permissions are
1628
- # required when your CreateBucket includes specific headers:
1630
+ # : In addition to `s3:CreateBucket`, the following permissions are
1631
+ # required when your CreateBucket includes specific headers:
1629
1632
  #
1630
- # * **ACLs** - If your `CreateBucket` request specifies ACL permissions
1631
- # and the ACL is public-read, public-read-write, authenticated-read,
1632
- # or if you specify access permissions explicitly through any other
1633
- # ACL, both `s3:CreateBucket` and `s3:PutBucketAcl` permissions are
1634
- # needed. If the ACL the `CreateBucket` request is private or doesn't
1635
- # specify any ACLs, only `s3:CreateBucket` permission is needed.
1633
+ # * **ACLs** - If your `CreateBucket` request specifies ACL
1634
+ # permissions and the ACL is public-read, public-read-write,
1635
+ # authenticated-read, or if you specify access permissions
1636
+ # explicitly through any other ACL, both `s3:CreateBucket` and
1637
+ # `s3:PutBucketAcl` permissions are needed. If the ACL the
1638
+ # `CreateBucket` request is private or doesn't specify any ACLs,
1639
+ # only `s3:CreateBucket` permission is needed.
1636
1640
  #
1637
- # * **Object Lock** - If `ObjectLockEnabledForBucket` is set to true in
1638
- # your `CreateBucket` request, `s3:PutBucketObjectLockConfiguration`
1639
- # and `s3:PutBucketVersioning` permissions are required.
1641
+ # * **Object Lock** - If `ObjectLockEnabledForBucket` is set to true
1642
+ # in your `CreateBucket` request,
1643
+ # `s3:PutBucketObjectLockConfiguration` and `s3:PutBucketVersioning`
1644
+ # permissions are required.
1640
1645
  #
1641
- # * **S3 Object Ownership** - If your CreateBucket request includes the
1642
- # the `x-amz-object-ownership` header, `s3:PutBucketOwnershipControls`
1643
- # permission is required.
1646
+ # * **S3 Object Ownership** - If your CreateBucket request includes
1647
+ # the `x-amz-object-ownership` header,
1648
+ # `s3:PutBucketOwnershipControls` permission is required.
1644
1649
  #
1645
1650
  # The following operations are related to `CreateBucket`:
1646
1651
  #
@@ -1716,33 +1721,33 @@ module Aws::S3
1716
1721
  # * {Types::CreateBucketOutput#location #location} => String
1717
1722
  #
1718
1723
  #
1719
- # @example Example: To create a bucket in a specific region
1724
+ # @example Example: To create a bucket
1720
1725
  #
1721
- # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1726
+ # # The following example creates a bucket.
1722
1727
  #
1723
1728
  # resp = client.create_bucket({
1724
1729
  # bucket: "examplebucket",
1725
- # create_bucket_configuration: {
1726
- # location_constraint: "eu-west-1",
1727
- # },
1728
1730
  # })
1729
1731
  #
1730
1732
  # resp.to_h outputs the following:
1731
1733
  # {
1732
- # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1734
+ # location: "/examplebucket",
1733
1735
  # }
1734
1736
  #
1735
- # @example Example: To create a bucket
1737
+ # @example Example: To create a bucket in a specific region
1736
1738
  #
1737
- # # The following example creates a bucket.
1739
+ # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1738
1740
  #
1739
1741
  # resp = client.create_bucket({
1740
1742
  # bucket: "examplebucket",
1743
+ # create_bucket_configuration: {
1744
+ # location_constraint: "eu-west-1",
1745
+ # },
1741
1746
  # })
1742
1747
  #
1743
1748
  # resp.to_h outputs the following:
1744
1749
  # {
1745
- # location: "/examplebucket",
1750
+ # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1746
1751
  # }
1747
1752
  #
1748
1753
  # @example Request syntax with placeholder values
@@ -1790,7 +1795,8 @@ module Aws::S3
1790
1795
  # in the bucket lifecycle configuration. Otherwise, the incomplete
1791
1796
  # multipart upload becomes eligible for an abort action and Amazon S3
1792
1797
  # aborts the multipart upload. For more information, see [Aborting
1793
- # Incomplete Multipart Uploads Using a Bucket Lifecycle Policy][3].
1798
+ # Incomplete Multipart Uploads Using a Bucket Lifecycle
1799
+ # Configuration][3].
1794
1800
  #
1795
1801
  # For information about the permissions required to use the multipart
1796
1802
  # upload API, see [Multipart Upload and Permissions][4].
@@ -1834,7 +1840,7 @@ module Aws::S3
1834
1840
  # you choose to provide your own encryption key, the request headers you
1835
1841
  # provide in [UploadPart][1] and [UploadPartCopy][6] requests must match
1836
1842
  # the headers you used in the request to initiate the upload by using
1837
- # `CreateMultipartUpload`. you can request that Amazon S3 save the
1843
+ # `CreateMultipartUpload`. You can request that Amazon S3 save the
1838
1844
  # uploaded parts encrypted with server-side encryption with an Amazon S3
1839
1845
  # managed key (SSE-S3), an Key Management Service (KMS) key (SSE-KMS),
1840
1846
  # or a customer-provided encryption key (SSE-C).
@@ -2272,7 +2278,7 @@ module Aws::S3
2272
2278
  # "MetadataKey" => "MetadataValue",
2273
2279
  # },
2274
2280
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
2275
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
2281
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW
2276
2282
  # website_redirect_location: "WebsiteRedirectLocation",
2277
2283
  # sse_customer_algorithm: "SSECustomerAlgorithm",
2278
2284
  # sse_customer_key: "SSECustomerKey",
@@ -2318,7 +2324,7 @@ module Aws::S3
2318
2324
  # delete markers) in the bucket must be deleted before the bucket itself
2319
2325
  # can be deleted.
2320
2326
  #
2321
- # **Related Resources**
2327
+ # The following operations are related to `DeleteBucket`:
2322
2328
  #
2323
2329
  # * [CreateBucket][1]
2324
2330
  #
@@ -2435,7 +2441,7 @@ module Aws::S3
2435
2441
  # For information about `cors`, see [Enabling Cross-Origin Resource
2436
2442
  # Sharing][1] in the *Amazon S3 User Guide*.
2437
2443
  #
2438
- # **Related Resources:**
2444
+ # The following operations are related to `DeleteBucketCors`:
2439
2445
  #
2440
2446
  # * [PutBucketCors][2]
2441
2447
  #
@@ -2496,7 +2502,7 @@ module Aws::S3
2496
2502
  # Permissions to your Amazon S3 Resources][3] in the *Amazon S3 User
2497
2503
  # Guide*.
2498
2504
  #
2499
- # **Related Resources**
2505
+ # The following operations are related to `DeleteBucketEncryption`:
2500
2506
  #
2501
2507
  # * [PutBucketEncryption][4]
2502
2508
  #
@@ -2849,10 +2855,14 @@ module Aws::S3
2849
2855
  # you're not using an identity that belongs to the bucket owner's
2850
2856
  # account, Amazon S3 returns a `405 Method Not Allowed` error.
2851
2857
  #
2852
- # As a security precaution, the root user of the Amazon Web Services
2853
- # account that owns a bucket can always use this operation, even if the
2854
- # policy explicitly denies the root user the ability to perform this
2855
- # action.
2858
+ # To ensure that bucket owners don't inadvertently lock themselves out
2859
+ # of their own buckets, the root principal in a bucket owner's Amazon
2860
+ # Web Services account can perform the `GetBucketPolicy`,
2861
+ # `PutBucketPolicy`, and `DeleteBucketPolicy` API actions, even if their
2862
+ # bucket policy explicitly denies the root principal's access. Bucket
2863
+ # owner root principals can only be blocked from performing these API
2864
+ # actions by VPC endpoint policies and Amazon Web Services Organizations
2865
+ # policies.
2856
2866
  #
2857
2867
  # For more information about bucket policies, see [Using Bucket Policies
2858
2868
  # and UserPolicies][1].
@@ -3489,20 +3499,22 @@ module Aws::S3
3489
3499
  # * {Types::DeleteObjectsOutput#errors #errors} => Array&lt;Types::Error&gt;
3490
3500
  #
3491
3501
  #
3492
- # @example Example: To delete multiple objects from a versioned bucket
3502
+ # @example Example: To delete multiple object versions from a versioned bucket
3493
3503
  #
3494
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3495
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3504
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3505
+ # # versions and returns the key and versions of deleted objects in the response.
3496
3506
  #
3497
3507
  # resp = client.delete_objects({
3498
3508
  # bucket: "examplebucket",
3499
3509
  # delete: {
3500
3510
  # objects: [
3501
3511
  # {
3502
- # key: "objectkey1",
3512
+ # key: "HappyFace.jpg",
3513
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3503
3514
  # },
3504
3515
  # {
3505
- # key: "objectkey2",
3516
+ # key: "HappyFace.jpg",
3517
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3506
3518
  # },
3507
3519
  # ],
3508
3520
  # quiet: false,
@@ -3513,34 +3525,30 @@ module Aws::S3
3513
3525
  # {
3514
3526
  # deleted: [
3515
3527
  # {
3516
- # delete_marker: true,
3517
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3518
- # key: "objectkey1",
3528
+ # key: "HappyFace.jpg",
3529
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3519
3530
  # },
3520
3531
  # {
3521
- # delete_marker: true,
3522
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3523
- # key: "objectkey2",
3532
+ # key: "HappyFace.jpg",
3533
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3524
3534
  # },
3525
3535
  # ],
3526
3536
  # }
3527
3537
  #
3528
- # @example Example: To delete multiple object versions from a versioned bucket
3538
+ # @example Example: To delete multiple objects from a versioned bucket
3529
3539
  #
3530
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3531
- # # versions and returns the key and versions of deleted objects in the response.
3540
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3541
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3532
3542
  #
3533
3543
  # resp = client.delete_objects({
3534
3544
  # bucket: "examplebucket",
3535
3545
  # delete: {
3536
3546
  # objects: [
3537
3547
  # {
3538
- # key: "HappyFace.jpg",
3539
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3548
+ # key: "objectkey1",
3540
3549
  # },
3541
3550
  # {
3542
- # key: "HappyFace.jpg",
3543
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3551
+ # key: "objectkey2",
3544
3552
  # },
3545
3553
  # ],
3546
3554
  # quiet: false,
@@ -3551,12 +3559,14 @@ module Aws::S3
3551
3559
  # {
3552
3560
  # deleted: [
3553
3561
  # {
3554
- # key: "HappyFace.jpg",
3555
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3562
+ # delete_marker: true,
3563
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3564
+ # key: "objectkey1",
3556
3565
  # },
3557
3566
  # {
3558
- # key: "HappyFace.jpg",
3559
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3567
+ # delete_marker: true,
3568
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3569
+ # key: "objectkey2",
3560
3570
  # },
3561
3571
  # ],
3562
3572
  # }
@@ -3682,7 +3692,8 @@ module Aws::S3
3682
3692
  # For more information about transfer acceleration, see [Transfer
3683
3693
  # Acceleration][4] in the Amazon S3 User Guide.
3684
3694
  #
3685
- # **Related Resources**
3695
+ # The following operations are related to
3696
+ # `GetBucketAccelerateConfiguration`:
3686
3697
  #
3687
3698
  # * [PutBucketAccelerateConfiguration][3]
3688
3699
  #
@@ -3735,31 +3746,53 @@ module Aws::S3
3735
3746
  # can return the ACL of the bucket without using an authorization
3736
3747
  # header.
3737
3748
  #
3738
- # To use this API against an access point, provide the alias of the
3739
- # access point in place of the bucket name.
3749
+ # To use this API operation against an access point, provide the alias
3750
+ # of the access point in place of the bucket name.
3751
+ #
3752
+ # To use this API operation against an Object Lambda access point,
3753
+ # provide the alias of the Object Lambda access point in place of the
3754
+ # bucket name. If the Object Lambda access point alias in a request is
3755
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
3756
+ # For more information about `InvalidAccessPointAliasError`, see [List
3757
+ # of Error Codes][1].
3740
3758
  #
3741
3759
  # <note markdown="1"> If your bucket uses the bucket owner enforced setting for S3 Object
3742
3760
  # Ownership, requests to read ACLs are still supported and return the
3743
3761
  # `bucket-owner-full-control` ACL with the owner being the account that
3744
3762
  # created the bucket. For more information, see [ Controlling object
3745
- # ownership and disabling ACLs][1] in the *Amazon S3 User Guide*.
3763
+ # ownership and disabling ACLs][2] in the *Amazon S3 User Guide*.
3746
3764
  #
3747
3765
  # </note>
3748
3766
  #
3749
- # **Related Resources**
3767
+ # The following operations are related to `GetBucketAcl`:
3750
3768
  #
3751
- # * [ListObjects][2]
3769
+ # * [ListObjects][3]
3752
3770
  #
3753
3771
  # ^
3754
3772
  #
3755
3773
  #
3756
3774
  #
3757
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
3758
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html
3775
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
3776
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
3777
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html
3759
3778
  #
3760
3779
  # @option params [required, String] :bucket
3761
3780
  # Specifies the S3 bucket whose ACL is being requested.
3762
3781
  #
3782
+ # To use this API operation against an access point, provide the alias
3783
+ # of the access point in place of the bucket name.
3784
+ #
3785
+ # To use this API operation against an Object Lambda access point,
3786
+ # provide the alias of the Object Lambda access point in place of the
3787
+ # bucket name. If the Object Lambda access point alias in a request is
3788
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
3789
+ # For more information about `InvalidAccessPointAliasError`, see [List
3790
+ # of Error Codes][1].
3791
+ #
3792
+ #
3793
+ #
3794
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
3795
+ #
3763
3796
  # @option params [String] :expected_bucket_owner
3764
3797
  # The account ID of the expected bucket owner. If the bucket is owned by
3765
3798
  # a different account, the request fails with the HTTP status code `403
@@ -3813,7 +3846,8 @@ module Aws::S3
3813
3846
  # For information about Amazon S3 analytics feature, see [Amazon S3
3814
3847
  # Analytics – Storage Class Analysis][3] in the *Amazon S3 User Guide*.
3815
3848
  #
3816
- # **Related Resources**
3849
+ # The following operations are related to
3850
+ # `GetBucketAnalyticsConfiguration`:
3817
3851
  #
3818
3852
  # * [DeleteBucketAnalyticsConfiguration][4]
3819
3853
  #
@@ -3886,27 +3920,49 @@ module Aws::S3
3886
3920
  # `s3:GetBucketCORS` action. By default, the bucket owner has this
3887
3921
  # permission and can grant it to others.
3888
3922
  #
3889
- # To use this API against an access point, provide the alias of the
3890
- # access point in place of the bucket name.
3923
+ # To use this API operation against an access point, provide the alias
3924
+ # of the access point in place of the bucket name.
3925
+ #
3926
+ # To use this API operation against an Object Lambda access point,
3927
+ # provide the alias of the Object Lambda access point in place of the
3928
+ # bucket name. If the Object Lambda access point alias in a request is
3929
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
3930
+ # For more information about `InvalidAccessPointAliasError`, see [List
3931
+ # of Error Codes][1].
3891
3932
  #
3892
3933
  # For more information about CORS, see [ Enabling Cross-Origin Resource
3893
- # Sharing][1].
3934
+ # Sharing][2].
3894
3935
  #
3895
3936
  # The following operations are related to `GetBucketCors`:
3896
3937
  #
3897
- # * [PutBucketCors][2]
3938
+ # * [PutBucketCors][3]
3898
3939
  #
3899
- # * [DeleteBucketCors][3]
3940
+ # * [DeleteBucketCors][4]
3900
3941
  #
3901
3942
  #
3902
3943
  #
3903
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
3904
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html
3905
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html
3944
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
3945
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
3946
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html
3947
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html
3906
3948
  #
3907
3949
  # @option params [required, String] :bucket
3908
3950
  # The bucket name for which to get the cors configuration.
3909
3951
  #
3952
+ # To use this API operation against an access point, provide the alias
3953
+ # of the access point in place of the bucket name.
3954
+ #
3955
+ # To use this API operation against an Object Lambda access point,
3956
+ # provide the alias of the Object Lambda access point in place of the
3957
+ # bucket name. If the Object Lambda access point alias in a request is
3958
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
3959
+ # For more information about `InvalidAccessPointAliasError`, see [List
3960
+ # of Error Codes][1].
3961
+ #
3962
+ #
3963
+ #
3964
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
3965
+ #
3910
3966
  # @option params [String] :expected_bucket_owner
3911
3967
  # The account ID of the expected bucket owner. If the bucket is owned by
3912
3968
  # a different account, the request fails with the HTTP status code `403
@@ -4449,33 +4505,52 @@ module Aws::S3
4449
4505
  # using the `LocationConstraint` request parameter in a `CreateBucket`
4450
4506
  # request. For more information, see [CreateBucket][1].
4451
4507
  #
4452
- # To use this implementation of the operation, you must be the bucket
4453
- # owner.
4508
+ # To use this API operation against an access point, provide the alias
4509
+ # of the access point in place of the bucket name.
4454
4510
  #
4455
- # To use this API against an access point, provide the alias of the
4456
- # access point in place of the bucket name.
4511
+ # To use this API operation against an Object Lambda access point,
4512
+ # provide the alias of the Object Lambda access point in place of the
4513
+ # bucket name. If the Object Lambda access point alias in a request is
4514
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4515
+ # For more information about `InvalidAccessPointAliasError`, see [List
4516
+ # of Error Codes][2].
4457
4517
  #
4458
- # <note markdown="1"> For requests made using Amazon Web Services Signature Version 4
4459
- # (SigV4), we recommend that you use [HeadBucket][2] to return the
4460
- # bucket Region instead of GetBucketLocation.
4518
+ # <note markdown="1"> We recommend that you use [HeadBucket][3] to return the Region that a
4519
+ # bucket resides in. For backward compatibility, Amazon S3 continues to
4520
+ # support GetBucketLocation.
4461
4521
  #
4462
4522
  # </note>
4463
4523
  #
4464
4524
  # The following operations are related to `GetBucketLocation`:
4465
4525
  #
4466
- # * [GetObject][3]
4526
+ # * [GetObject][4]
4467
4527
  #
4468
4528
  # * [CreateBucket][1]
4469
4529
  #
4470
4530
  #
4471
4531
  #
4472
4532
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
4473
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html
4474
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
4533
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4534
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html
4535
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
4475
4536
  #
4476
4537
  # @option params [required, String] :bucket
4477
4538
  # The name of the bucket for which to get the location.
4478
4539
  #
4540
+ # To use this API operation against an access point, provide the alias
4541
+ # of the access point in place of the bucket name.
4542
+ #
4543
+ # To use this API operation against an Object Lambda access point,
4544
+ # provide the alias of the Object Lambda access point in place of the
4545
+ # bucket name. If the Object Lambda access point alias in a request is
4546
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4547
+ # For more information about `InvalidAccessPointAliasError`, see [List
4548
+ # of Error Codes][1].
4549
+ #
4550
+ #
4551
+ #
4552
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4553
+ #
4479
4554
  # @option params [String] :expected_bucket_owner
4480
4555
  # The account ID of the expected bucket owner. If the bucket is owned by
4481
4556
  # a different account, the request fails with the HTTP status code `403
@@ -4665,6 +4740,20 @@ module Aws::S3
4665
4740
  # The name of the bucket for which to get the notification
4666
4741
  # configuration.
4667
4742
  #
4743
+ # To use this API operation against an access point, provide the alias
4744
+ # of the access point in place of the bucket name.
4745
+ #
4746
+ # To use this API operation against an Object Lambda access point,
4747
+ # provide the alias of the Object Lambda access point in place of the
4748
+ # bucket name. If the Object Lambda access point alias in a request is
4749
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4750
+ # For more information about `InvalidAccessPointAliasError`, see [List
4751
+ # of Error Codes][1].
4752
+ #
4753
+ #
4754
+ #
4755
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4756
+ #
4668
4757
  # @option params [String] :expected_bucket_owner
4669
4758
  # The account ID of the expected bucket owner. If the bucket is owned by
4670
4759
  # a different account, the request fails with the HTTP status code `403
@@ -4778,30 +4867,52 @@ module Aws::S3
4778
4867
  # policy to grant permission to other users to read this configuration
4779
4868
  # with the `s3:GetBucketNotification` permission.
4780
4869
  #
4781
- # To use this API against an access point, provide the alias of the
4782
- # access point in place of the bucket name.
4870
+ # To use this API operation against an access point, provide the alias
4871
+ # of the access point in place of the bucket name.
4872
+ #
4873
+ # To use this API operation against an Object Lambda access point,
4874
+ # provide the alias of the Object Lambda access point in place of the
4875
+ # bucket name. If the Object Lambda access point alias in a request is
4876
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4877
+ # For more information about `InvalidAccessPointAliasError`, see [List
4878
+ # of Error Codes][1].
4783
4879
  #
4784
4880
  # For more information about setting and reading the notification
4785
4881
  # configuration on a bucket, see [Setting Up Notification of Bucket
4786
- # Events][1]. For more information about bucket policies, see [Using
4787
- # Bucket Policies][2].
4882
+ # Events][2]. For more information about bucket policies, see [Using
4883
+ # Bucket Policies][3].
4788
4884
  #
4789
4885
  # The following action is related to `GetBucketNotification`:
4790
4886
  #
4791
- # * [PutBucketNotification][3]
4887
+ # * [PutBucketNotification][4]
4792
4888
  #
4793
4889
  # ^
4794
4890
  #
4795
4891
  #
4796
4892
  #
4797
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
4798
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
4799
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html
4893
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4894
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
4895
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
4896
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html
4800
4897
  #
4801
4898
  # @option params [required, String] :bucket
4802
4899
  # The name of the bucket for which to get the notification
4803
4900
  # configuration.
4804
4901
  #
4902
+ # To use this API operation against an access point, provide the alias
4903
+ # of the access point in place of the bucket name.
4904
+ #
4905
+ # To use this API operation against an Object Lambda access point,
4906
+ # provide the alias of the Object Lambda access point in place of the
4907
+ # bucket name. If the Object Lambda access point alias in a request is
4908
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
4909
+ # For more information about `InvalidAccessPointAliasError`, see [List
4910
+ # of Error Codes][1].
4911
+ #
4912
+ #
4913
+ #
4914
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
4915
+ #
4805
4916
  # @option params [String] :expected_bucket_owner
4806
4917
  # The account ID of the expected bucket owner. If the bucket is owned by
4807
4918
  # a different account, the request fails with the HTTP status code `403
@@ -4921,31 +5032,57 @@ module Aws::S3
4921
5032
  # you're not using an identity that belongs to the bucket owner's
4922
5033
  # account, Amazon S3 returns a `405 Method Not Allowed` error.
4923
5034
  #
4924
- # As a security precaution, the root user of the Amazon Web Services
4925
- # account that owns a bucket can always use this operation, even if the
4926
- # policy explicitly denies the root user the ability to perform this
4927
- # action.
4928
- #
4929
- # To use this API against an access point, provide the alias of the
4930
- # access point in place of the bucket name.
5035
+ # To ensure that bucket owners don't inadvertently lock themselves out
5036
+ # of their own buckets, the root principal in a bucket owner's Amazon
5037
+ # Web Services account can perform the `GetBucketPolicy`,
5038
+ # `PutBucketPolicy`, and `DeleteBucketPolicy` API actions, even if their
5039
+ # bucket policy explicitly denies the root principal's access. Bucket
5040
+ # owner root principals can only be blocked from performing these API
5041
+ # actions by VPC endpoint policies and Amazon Web Services Organizations
5042
+ # policies.
5043
+ #
5044
+ # To use this API operation against an access point, provide the alias
5045
+ # of the access point in place of the bucket name.
5046
+ #
5047
+ # To use this API operation against an Object Lambda access point,
5048
+ # provide the alias of the Object Lambda access point in place of the
5049
+ # bucket name. If the Object Lambda access point alias in a request is
5050
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
5051
+ # For more information about `InvalidAccessPointAliasError`, see [List
5052
+ # of Error Codes][1].
4931
5053
  #
4932
5054
  # For more information about bucket policies, see [Using Bucket Policies
4933
- # and User Policies][1].
5055
+ # and User Policies][2].
4934
5056
  #
4935
5057
  # The following action is related to `GetBucketPolicy`:
4936
5058
  #
4937
- # * [GetObject][2]
5059
+ # * [GetObject][3]
4938
5060
  #
4939
5061
  # ^
4940
5062
  #
4941
5063
  #
4942
5064
  #
4943
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
4944
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
5065
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
5066
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
5067
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
4945
5068
  #
4946
5069
  # @option params [required, String] :bucket
4947
5070
  # The bucket name for which to get the bucket policy.
4948
5071
  #
5072
+ # To use this API operation against an access point, provide the alias
5073
+ # of the access point in place of the bucket name.
5074
+ #
5075
+ # To use this API operation against an Object Lambda access point,
5076
+ # provide the alias of the Object Lambda access point in place of the
5077
+ # bucket name. If the Object Lambda access point alias in a request is
5078
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
5079
+ # For more information about `InvalidAccessPointAliasError`, see [List
5080
+ # of Error Codes][1].
5081
+ #
5082
+ #
5083
+ #
5084
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
5085
+ #
4949
5086
  # @option params [String] :expected_bucket_owner
4950
5087
  # The account ID of the expected bucket owner. If the bucket is owned by
4951
5088
  # a different account, the request fails with the HTTP status code `403
@@ -5151,7 +5288,7 @@ module Aws::S3
5151
5288
  # resp.replication_configuration.rules[0].existing_object_replication.status #=> String, one of "Enabled", "Disabled"
5152
5289
  # resp.replication_configuration.rules[0].destination.bucket #=> String
5153
5290
  # resp.replication_configuration.rules[0].destination.account #=> String
5154
- # resp.replication_configuration.rules[0].destination.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
5291
+ # resp.replication_configuration.rules[0].destination.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
5155
5292
  # resp.replication_configuration.rules[0].destination.access_control_translation.owner #=> String, one of "Destination"
5156
5293
  # resp.replication_configuration.rules[0].destination.encryption_configuration.replica_kms_key_id #=> String
5157
5294
  # resp.replication_configuration.rules[0].destination.replication_time.status #=> String, one of "Enabled", "Disabled"
@@ -5397,7 +5534,7 @@ module Aws::S3
5397
5534
  # the website configuration by writing a bucket policy granting them the
5398
5535
  # `S3:GetBucketWebsite` permission.
5399
5536
  #
5400
- # The following operations are related to `DeleteBucketWebsite`:
5537
+ # The following operations are related to `GetBucketWebsite`:
5401
5538
  #
5402
5539
  # * [DeleteBucketWebsite][2]
5403
5540
  #
@@ -5531,88 +5668,88 @@ module Aws::S3
5531
5668
  # [GetObjectTagging][6] to retrieve the tag set associated with an
5532
5669
  # object.
5533
5670
  #
5534
- # **Permissions**
5671
+ # Permissions
5535
5672
  #
5536
- # You need the relevant read object (or version) permission for this
5537
- # operation. For more information, see [Specifying Permissions in a
5538
- # Policy][7]. If the object you request does not exist, the error Amazon
5539
- # S3 returns depends on whether you also have the `s3:ListBucket`
5540
- # permission.
5673
+ # : You need the relevant read object (or version) permission for this
5674
+ # operation. For more information, see [Specifying Permissions in a
5675
+ # Policy][7]. If the object you request does not exist, the error
5676
+ # Amazon S3 returns depends on whether you also have the
5677
+ # `s3:ListBucket` permission.
5541
5678
  #
5542
- # * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
5543
- # will return an HTTP status code 404 ("no such key") error.
5679
+ # * If you have the `s3:ListBucket` permission on the bucket, Amazon
5680
+ # S3 will return an HTTP status code 404 ("no such key") error.
5544
5681
  #
5545
- # * If you don’t have the `s3:ListBucket` permission, Amazon S3 will
5546
- # return an HTTP status code 403 ("access denied") error.
5682
+ # * If you don’t have the `s3:ListBucket` permission, Amazon S3 will
5683
+ # return an HTTP status code 403 ("access denied") error.
5547
5684
  #
5548
- # **Versioning**
5685
+ # Versioning
5549
5686
  #
5550
- # By default, the GET action returns the current version of an object.
5551
- # To return a different version, use the `versionId` subresource.
5687
+ # : By default, the GET action returns the current version of an object.
5688
+ # To return a different version, use the `versionId` subresource.
5552
5689
  #
5553
- # <note markdown="1"> * If you supply a `versionId`, you need the `s3:GetObjectVersion`
5554
- # permission to access a specific version of an object. If you request
5555
- # a specific version, you do not need to have the `s3:GetObject`
5556
- # permission. If you request the current version without a specific
5557
- # version ID, only `s3:GetObject` permission is required.
5558
- # `s3:GetObjectVersion` permission won't be required.
5690
+ # <note markdown="1"> * If you supply a `versionId`, you need the `s3:GetObjectVersion`
5691
+ # permission to access a specific version of an object. If you
5692
+ # request a specific version, you do not need to have the
5693
+ # `s3:GetObject` permission. If you request the current version
5694
+ # without a specific version ID, only `s3:GetObject` permission is
5695
+ # required. `s3:GetObjectVersion` permission won't be required.
5559
5696
  #
5560
- # * If the current version of the object is a delete marker, Amazon S3
5561
- # behaves as if the object was deleted and includes
5562
- # `x-amz-delete-marker: true` in the response.
5697
+ # * If the current version of the object is a delete marker, Amazon S3
5698
+ # behaves as if the object was deleted and includes
5699
+ # `x-amz-delete-marker: true` in the response.
5563
5700
  #
5564
- # </note>
5701
+ # </note>
5565
5702
  #
5566
- # For more information about versioning, see [PutBucketVersioning][8].
5703
+ # For more information about versioning, see [PutBucketVersioning][8].
5567
5704
  #
5568
- # **Overriding Response Header Values**
5705
+ # Overriding Response Header Values
5569
5706
  #
5570
- # There are times when you want to override certain response header
5571
- # values in a GET response. For example, you might override the
5572
- # `Content-Disposition` response header value in your GET request.
5707
+ # : There are times when you want to override certain response header
5708
+ # values in a GET response. For example, you might override the
5709
+ # `Content-Disposition` response header value in your GET request.
5573
5710
  #
5574
- # You can override values for a set of response headers using the
5575
- # following query parameters. These response header values are sent only
5576
- # on a successful request, that is, when status code 200 OK is returned.
5577
- # The set of headers you can override using these parameters is a subset
5578
- # of the headers that Amazon S3 accepts when you create an object. The
5579
- # response headers that you can override for the GET response are
5580
- # `Content-Type`, `Content-Language`, `Expires`, `Cache-Control`,
5581
- # `Content-Disposition`, and `Content-Encoding`. To override these
5582
- # header values in the GET response, you use the following request
5583
- # parameters.
5711
+ # You can override values for a set of response headers using the
5712
+ # following query parameters. These response header values are sent
5713
+ # only on a successful request, that is, when status code 200 OK is
5714
+ # returned. The set of headers you can override using these parameters
5715
+ # is a subset of the headers that Amazon S3 accepts when you create an
5716
+ # object. The response headers that you can override for the GET
5717
+ # response are `Content-Type`, `Content-Language`, `Expires`,
5718
+ # `Cache-Control`, `Content-Disposition`, and `Content-Encoding`. To
5719
+ # override these header values in the GET response, you use the
5720
+ # following request parameters.
5584
5721
  #
5585
- # <note markdown="1"> You must sign the request, either using an Authorization header or a
5586
- # presigned URL, when using these parameters. They cannot be used with
5587
- # an unsigned (anonymous) request.
5722
+ # <note markdown="1"> You must sign the request, either using an Authorization header or a
5723
+ # presigned URL, when using these parameters. They cannot be used with
5724
+ # an unsigned (anonymous) request.
5588
5725
  #
5589
- # </note>
5726
+ # </note>
5590
5727
  #
5591
- # * `response-content-type`
5728
+ # * `response-content-type`
5592
5729
  #
5593
- # * `response-content-language`
5730
+ # * `response-content-language`
5594
5731
  #
5595
- # * `response-expires`
5732
+ # * `response-expires`
5596
5733
  #
5597
- # * `response-cache-control`
5734
+ # * `response-cache-control`
5598
5735
  #
5599
- # * `response-content-disposition`
5736
+ # * `response-content-disposition`
5600
5737
  #
5601
- # * `response-content-encoding`
5738
+ # * `response-content-encoding`
5602
5739
  #
5603
- # **Additional Considerations about Request Headers**
5740
+ # Overriding Response Header Values
5604
5741
  #
5605
- # If both of the `If-Match` and `If-Unmodified-Since` headers are
5606
- # present in the request as follows: `If-Match` condition evaluates to
5607
- # `true`, and; `If-Unmodified-Since` condition evaluates to `false`;
5608
- # then, S3 returns 200 OK and the data requested.
5742
+ # : If both of the `If-Match` and `If-Unmodified-Since` headers are
5743
+ # present in the request as follows: `If-Match` condition evaluates to
5744
+ # `true`, and; `If-Unmodified-Since` condition evaluates to `false`;
5745
+ # then, S3 returns 200 OK and the data requested.
5609
5746
  #
5610
- # If both of the `If-None-Match` and `If-Modified-Since` headers are
5611
- # present in the request as follows:` If-None-Match` condition evaluates
5612
- # to `false`, and; `If-Modified-Since` condition evaluates to `true`;
5613
- # then, S3 returns 304 Not Modified response code.
5747
+ # If both of the `If-None-Match` and `If-Modified-Since` headers are
5748
+ # present in the request as follows:` If-None-Match` condition
5749
+ # evaluates to `false`, and; `If-Modified-Since` condition evaluates
5750
+ # to `true`; then, S3 returns 304 Not Modified response code.
5614
5751
  #
5615
- # For more information about conditional requests, see [RFC 7232][9].
5752
+ # For more information about conditional requests, see [RFC 7232][9].
5616
5753
  #
5617
5754
  # The following operations are related to `GetObject`:
5618
5755
  #
@@ -5933,7 +6070,7 @@ module Aws::S3
5933
6070
  # resp.sse_customer_key_md5 #=> String
5934
6071
  # resp.ssekms_key_id #=> String
5935
6072
  # resp.bucket_key_enabled #=> Boolean
5936
- # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
6073
+ # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
5937
6074
  # resp.request_charged #=> String, one of "requester"
5938
6075
  # resp.replication_status #=> String, one of "COMPLETE", "PENDING", "FAILED", "REPLICA"
5939
6076
  # resp.parts_count #=> Integer
@@ -5959,8 +6096,6 @@ module Aws::S3
5959
6096
  #
5960
6097
  # This action is not supported by Amazon S3 on Outposts.
5961
6098
  #
5962
- # **Versioning**
5963
- #
5964
6099
  # By default, GET returns ACL information about the current version of
5965
6100
  # an object. To return ACL information about a different version, use
5966
6101
  # the versionId subresource.
@@ -6175,23 +6310,26 @@ module Aws::S3
6175
6310
  #
6176
6311
  # For more information about conditional requests, see [RFC 7232][2].
6177
6312
  #
6178
- # **Permissions**
6313
+ # Permissions
6179
6314
  #
6180
- # The permissions that you need to use this operation depend on whether
6181
- # the bucket is versioned. If the bucket is versioned, you need both the
6182
- # `s3:GetObjectVersion` and `s3:GetObjectVersionAttributes` permissions
6183
- # for this operation. If the bucket is not versioned, you need the
6184
- # `s3:GetObject` and `s3:GetObjectAttributes` permissions. For more
6185
- # information, see [Specifying Permissions in a Policy][3] in the
6186
- # *Amazon S3 User Guide*. If the object that you request does not exist,
6187
- # the error Amazon S3 returns depends on whether you also have the
6188
- # `s3:ListBucket` permission.
6315
+ # : The permissions that you need to use this operation depend on
6316
+ # whether the bucket is versioned. If the bucket is versioned, you
6317
+ # need both the `s3:GetObjectVersion` and
6318
+ # `s3:GetObjectVersionAttributes` permissions for this operation. If
6319
+ # the bucket is not versioned, you need the `s3:GetObject` and
6320
+ # `s3:GetObjectAttributes` permissions. For more information, see
6321
+ # [Specifying Permissions in a Policy][3] in the *Amazon S3 User
6322
+ # Guide*. If the object that you request does not exist, the error
6323
+ # Amazon S3 returns depends on whether you also have the
6324
+ # `s3:ListBucket` permission.
6189
6325
  #
6190
- # * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
6191
- # returns an HTTP status code `404 Not Found` ("no such key") error.
6326
+ # * If you have the `s3:ListBucket` permission on the bucket, Amazon
6327
+ # S3 returns an HTTP status code `404 Not Found` ("no such key")
6328
+ # error.
6192
6329
  #
6193
- # * If you don't have the `s3:ListBucket` permission, Amazon S3 returns
6194
- # an HTTP status code `403 Forbidden` ("access denied") error.
6330
+ # * If you don't have the `s3:ListBucket` permission, Amazon S3
6331
+ # returns an HTTP status code `403 Forbidden` ("access denied")
6332
+ # error.
6195
6333
  #
6196
6334
  # The following actions are related to `GetObjectAttributes`:
6197
6335
  #
@@ -6351,7 +6489,7 @@ module Aws::S3
6351
6489
  # resp.object_parts.parts[0].checksum_crc32c #=> String
6352
6490
  # resp.object_parts.parts[0].checksum_sha1 #=> String
6353
6491
  # resp.object_parts.parts[0].checksum_sha256 #=> String
6354
- # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
6492
+ # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
6355
6493
  # resp.object_size #=> Integer
6356
6494
  #
6357
6495
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectAttributes AWS API Documentation
@@ -6927,19 +7065,29 @@ module Aws::S3
6927
7065
  # Operations][1] and [Managing Access Permissions to Your Amazon S3
6928
7066
  # Resources][2].
6929
7067
  #
6930
- # To use this API against an access point, you must provide the alias of
6931
- # the access point in place of the bucket name or specify the access
6932
- # point ARN. When using the access point ARN, you must direct requests
6933
- # to the access point hostname. The access point hostname takes the form
6934
- # AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When
6935
- # using the Amazon Web Services SDKs, you provide the ARN in place of
6936
- # the bucket name. For more information see, [Using access points][3].
7068
+ # To use this API operation against an access point, you must provide
7069
+ # the alias of the access point in place of the bucket name or specify
7070
+ # the access point ARN. When using the access point ARN, you must direct
7071
+ # requests to the access point hostname. The access point hostname takes
7072
+ # the form
7073
+ # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7074
+ # When using the Amazon Web Services SDKs, you provide the ARN in place
7075
+ # of the bucket name. For more information, see [Using access
7076
+ # points][3].
7077
+ #
7078
+ # To use this API operation against an Object Lambda access point,
7079
+ # provide the alias of the Object Lambda access point in place of the
7080
+ # bucket name. If the Object Lambda access point alias in a request is
7081
+ # not valid, the error code `InvalidAccessPointAliasError` is returned.
7082
+ # For more information about `InvalidAccessPointAliasError`, see [List
7083
+ # of Error Codes][4].
6937
7084
  #
6938
7085
  #
6939
7086
  #
6940
7087
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
6941
7088
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
6942
7089
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
7090
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
6943
7091
  #
6944
7092
  # @option params [required, String] :bucket
6945
7093
  # The bucket name.
@@ -6952,6 +7100,13 @@ module Aws::S3
6952
7100
  # name. For more information about access point ARNs, see [Using access
6953
7101
  # points][1] in the *Amazon S3 User Guide*.
6954
7102
  #
7103
+ # When you use this action with an Object Lambda access point, provide
7104
+ # the alias of the Object Lambda access point in place of the bucket
7105
+ # name. If the Object Lambda access point alias in a request is not
7106
+ # valid, the error code `InvalidAccessPointAliasError` is returned. For
7107
+ # more information about `InvalidAccessPointAliasError`, see [List of
7108
+ # Error Codes][2].
7109
+ #
6955
7110
  # When you use this action with Amazon S3 on Outposts, you must direct
6956
7111
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6957
7112
  # takes the form `
@@ -6959,12 +7114,13 @@ module Aws::S3
6959
7114
  # When you use this action with S3 on Outposts through the Amazon Web
6960
7115
  # Services SDKs, you provide the Outposts access point ARN in place of
6961
7116
  # the bucket name. For more information about S3 on Outposts ARNs, see
6962
- # [What is S3 on Outposts][2] in the *Amazon S3 User Guide*.
7117
+ # [What is S3 on Outposts][3] in the *Amazon S3 User Guide*.
6963
7118
  #
6964
7119
  #
6965
7120
  #
6966
7121
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
6967
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
7122
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
7123
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
6968
7124
  #
6969
7125
  # @option params [String] :expected_bucket_owner
6970
7126
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -7066,19 +7222,19 @@ module Aws::S3
7066
7222
  #
7067
7223
  # For more information about conditional requests, see [RFC 7232][3].
7068
7224
  #
7069
- # **Permissions**
7225
+ # Permissions
7070
7226
  #
7071
- # You need the relevant read object (or version) permission for this
7072
- # operation. For more information, see [Specifying Permissions in a
7073
- # Policy][4]. If the object you request does not exist, the error Amazon
7074
- # S3 returns depends on whether you also have the s3:ListBucket
7075
- # permission.
7227
+ # : You need the relevant read object (or version) permission for this
7228
+ # operation. For more information, see [Actions, resources, and
7229
+ # condition keys for Amazon S3][4]. If the object you request does not
7230
+ # exist, the error Amazon S3 returns depends on whether you also have
7231
+ # the s3:ListBucket permission.
7076
7232
  #
7077
- # * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
7078
- # returns an HTTP status code 404 ("no such key") error.
7233
+ # * If you have the `s3:ListBucket` permission on the bucket, Amazon
7234
+ # S3 returns an HTTP status code 404 ("no such key") error.
7079
7235
  #
7080
- # * If you don’t have the `s3:ListBucket` permission, Amazon S3 returns
7081
- # an HTTP status code 403 ("access denied") error.
7236
+ # * If you don’t have the `s3:ListBucket` permission, Amazon S3
7237
+ # returns an HTTP status code 403 ("access denied") error.
7082
7238
  #
7083
7239
  # The following actions are related to `HeadObject`:
7084
7240
  #
@@ -7091,7 +7247,7 @@ module Aws::S3
7091
7247
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
7092
7248
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html
7093
7249
  # [3]: https://tools.ietf.org/html/rfc7232
7094
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
7250
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html
7095
7251
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
7096
7252
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
7097
7253
  #
@@ -7305,7 +7461,7 @@ module Aws::S3
7305
7461
  # resp.sse_customer_key_md5 #=> String
7306
7462
  # resp.ssekms_key_id #=> String
7307
7463
  # resp.bucket_key_enabled #=> Boolean
7308
- # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
7464
+ # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
7309
7465
  # resp.request_charged #=> String, one of "requester"
7310
7466
  # resp.replication_status #=> String, one of "COMPLETE", "PENDING", "FAILED", "REPLICA"
7311
7467
  # resp.parts_count #=> Integer
@@ -8041,7 +8197,7 @@ module Aws::S3
8041
8197
  # resp.uploads[0].upload_id #=> String
8042
8198
  # resp.uploads[0].key #=> String
8043
8199
  # resp.uploads[0].initiated #=> Time
8044
- # resp.uploads[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
8200
+ # resp.uploads[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
8045
8201
  # resp.uploads[0].owner.display_name #=> String
8046
8202
  # resp.uploads[0].owner.id #=> String
8047
8203
  # resp.uploads[0].initiator.id #=> String
@@ -8426,7 +8582,7 @@ module Aws::S3
8426
8582
  # resp.contents[0].checksum_algorithm #=> Array
8427
8583
  # resp.contents[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
8428
8584
  # resp.contents[0].size #=> Integer
8429
- # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
8585
+ # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
8430
8586
  # resp.contents[0].owner.display_name #=> String
8431
8587
  # resp.contents[0].owner.id #=> String
8432
8588
  # resp.name #=> String
@@ -8633,7 +8789,7 @@ module Aws::S3
8633
8789
  # resp.contents[0].checksum_algorithm #=> Array
8634
8790
  # resp.contents[0].checksum_algorithm[0] #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
8635
8791
  # resp.contents[0].size #=> Integer
8636
- # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
8792
+ # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
8637
8793
  # resp.contents[0].owner.display_name #=> String
8638
8794
  # resp.contents[0].owner.id #=> String
8639
8795
  # resp.name #=> String
@@ -8887,7 +9043,7 @@ module Aws::S3
8887
9043
  # resp.initiator.display_name #=> String
8888
9044
  # resp.owner.display_name #=> String
8889
9045
  # resp.owner.id #=> String
8890
- # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
9046
+ # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR", "SNOW"
8891
9047
  # resp.request_charged #=> String, one of "requester"
8892
9048
  # resp.checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
8893
9049
  #
@@ -9024,127 +9180,128 @@ module Aws::S3
9024
9180
  # still supported. For more information, see [Controlling object
9025
9181
  # ownership][2] in the *Amazon S3 User Guide*.
9026
9182
  #
9027
- # **Access Permissions**
9183
+ # Permissions
9028
9184
  #
9029
- # You can set access permissions using one of the following methods:
9185
+ # : You can set access permissions using one of the following methods:
9030
9186
  #
9031
- # * Specify a canned ACL with the `x-amz-acl` request header. Amazon S3
9032
- # supports a set of predefined ACLs, known as *canned ACLs*. Each
9033
- # canned ACL has a predefined set of grantees and permissions. Specify
9034
- # the canned ACL name as the value of `x-amz-acl`. If you use this
9035
- # header, you cannot use other access control-specific headers in your
9036
- # request. For more information, see [Canned ACL][3].
9187
+ # * Specify a canned ACL with the `x-amz-acl` request header. Amazon
9188
+ # S3 supports a set of predefined ACLs, known as *canned ACLs*. Each
9189
+ # canned ACL has a predefined set of grantees and permissions.
9190
+ # Specify the canned ACL name as the value of `x-amz-acl`. If you
9191
+ # use this header, you cannot use other access control-specific
9192
+ # headers in your request. For more information, see [Canned
9193
+ # ACL][3].
9037
9194
  #
9038
- # * Specify access permissions explicitly with the `x-amz-grant-read`,
9039
- # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
9040
- # `x-amz-grant-full-control` headers. When using these headers, you
9041
- # specify explicit access permissions and grantees (Amazon Web
9042
- # Services accounts or Amazon S3 groups) who will receive the
9043
- # permission. If you use these ACL-specific headers, you cannot use
9044
- # the `x-amz-acl` header to set a canned ACL. These parameters map to
9045
- # the set of permissions that Amazon S3 supports in an ACL. For more
9046
- # information, see [Access Control List (ACL) Overview][4].
9195
+ # * Specify access permissions explicitly with the `x-amz-grant-read`,
9196
+ # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
9197
+ # `x-amz-grant-full-control` headers. When using these headers, you
9198
+ # specify explicit access permissions and grantees (Amazon Web
9199
+ # Services accounts or Amazon S3 groups) who will receive the
9200
+ # permission. If you use these ACL-specific headers, you cannot use
9201
+ # the `x-amz-acl` header to set a canned ACL. These parameters map
9202
+ # to the set of permissions that Amazon S3 supports in an ACL. For
9203
+ # more information, see [Access Control List (ACL) Overview][4].
9047
9204
  #
9048
- # You specify each grantee as a type=value pair, where the type is one
9049
- # of the following:
9205
+ # You specify each grantee as a type=value pair, where the type is
9206
+ # one of the following:
9050
9207
  #
9051
- # * `id` – if the value specified is the canonical user ID of an
9052
- # Amazon Web Services account
9208
+ # * `id` – if the value specified is the canonical user ID of an
9209
+ # Amazon Web Services account
9053
9210
  #
9054
- # * `uri` – if you are granting permissions to a predefined group
9211
+ # * `uri` – if you are granting permissions to a predefined group
9055
9212
  #
9056
- # * `emailAddress` – if the value specified is the email address of an
9057
- # Amazon Web Services account
9213
+ # * `emailAddress` – if the value specified is the email address of
9214
+ # an Amazon Web Services account
9058
9215
  #
9059
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in
9060
- # the following Amazon Web Services Regions:
9216
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
9217
+ # the following Amazon Web Services Regions:
9061
9218
  #
9062
- # * US East (N. Virginia)
9219
+ # * US East (N. Virginia)
9063
9220
  #
9064
- # * US West (N. California)
9221
+ # * US West (N. California)
9065
9222
  #
9066
- # * US West (Oregon)
9223
+ # * US West (Oregon)
9067
9224
  #
9068
- # * Asia Pacific (Singapore)
9225
+ # * Asia Pacific (Singapore)
9069
9226
  #
9070
- # * Asia Pacific (Sydney)
9227
+ # * Asia Pacific (Sydney)
9071
9228
  #
9072
- # * Asia Pacific (Tokyo)
9229
+ # * Asia Pacific (Tokyo)
9073
9230
  #
9074
- # * Europe (Ireland)
9231
+ # * Europe (Ireland)
9075
9232
  #
9076
- # * South America (São Paulo)
9233
+ # * South America (São Paulo)
9077
9234
  #
9078
- # For a list of all the Amazon S3 supported Regions and endpoints,
9079
- # see [Regions and Endpoints][5] in the Amazon Web Services General
9080
- # Reference.
9235
+ # For a list of all the Amazon S3 supported Regions and endpoints,
9236
+ # see [Regions and Endpoints][5] in the Amazon Web Services
9237
+ # General Reference.
9081
9238
  #
9082
- # </note>
9239
+ # </note>
9083
9240
  #
9084
- # For example, the following `x-amz-grant-write` header grants create,
9085
- # overwrite, and delete objects permission to LogDelivery group
9086
- # predefined by Amazon S3 and two Amazon Web Services accounts
9087
- # identified by their email addresses.
9241
+ # For example, the following `x-amz-grant-write` header grants
9242
+ # create, overwrite, and delete objects permission to LogDelivery
9243
+ # group predefined by Amazon S3 and two Amazon Web Services accounts
9244
+ # identified by their email addresses.
9088
9245
  #
9089
- # `x-amz-grant-write:
9090
- # uri="http://acs.amazonaws.com/groups/s3/LogDelivery",
9091
- # id="111122223333", id="555566667777" `
9246
+ # `x-amz-grant-write:
9247
+ # uri="http://acs.amazonaws.com/groups/s3/LogDelivery",
9248
+ # id="111122223333", id="555566667777" `
9092
9249
  #
9093
- # You can use either a canned ACL or specify access permissions
9094
- # explicitly. You cannot do both.
9250
+ # You can use either a canned ACL or specify access permissions
9251
+ # explicitly. You cannot do both.
9095
9252
  #
9096
- # **Grantee Values**
9253
+ # Grantee Values
9097
9254
  #
9098
- # You can specify the person (grantee) to whom you're assigning access
9099
- # rights (using request elements) in the following ways:
9255
+ # : You can specify the person (grantee) to whom you're assigning
9256
+ # access rights (using request elements) in the following ways:
9100
9257
  #
9101
- # * By the person's ID:
9258
+ # * By the person's ID:
9102
9259
  #
9103
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9104
- # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
9105
- # </Grantee>`
9260
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9261
+ # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
9262
+ # </Grantee>`
9106
9263
  #
9107
- # DisplayName is optional and ignored in the request
9264
+ # DisplayName is optional and ignored in the request
9108
9265
  #
9109
- # * By URI:
9266
+ # * By URI:
9110
9267
  #
9111
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9112
- # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
9268
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9269
+ # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
9113
9270
  #
9114
- # * By Email address:
9271
+ # * By Email address:
9115
9272
  #
9116
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9117
- # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress>&</Grantee>`
9273
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9274
+ # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress>&</Grantee>`
9118
9275
  #
9119
- # The grantee is resolved to the CanonicalUser and, in a response to a
9120
- # GET Object acl request, appears as the CanonicalUser.
9276
+ # The grantee is resolved to the CanonicalUser and, in a response to
9277
+ # a GET Object acl request, appears as the CanonicalUser.
9121
9278
  #
9122
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in the
9123
- # following Amazon Web Services Regions:
9279
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
9280
+ # the following Amazon Web Services Regions:
9124
9281
  #
9125
- # * US East (N. Virginia)
9282
+ # * US East (N. Virginia)
9126
9283
  #
9127
- # * US West (N. California)
9284
+ # * US West (N. California)
9128
9285
  #
9129
- # * US West (Oregon)
9286
+ # * US West (Oregon)
9130
9287
  #
9131
- # * Asia Pacific (Singapore)
9288
+ # * Asia Pacific (Singapore)
9132
9289
  #
9133
- # * Asia Pacific (Sydney)
9290
+ # * Asia Pacific (Sydney)
9134
9291
  #
9135
- # * Asia Pacific (Tokyo)
9292
+ # * Asia Pacific (Tokyo)
9136
9293
  #
9137
- # * Europe (Ireland)
9294
+ # * Europe (Ireland)
9138
9295
  #
9139
- # * South America (São Paulo)
9296
+ # * South America (São Paulo)
9140
9297
  #
9141
- # For a list of all the Amazon S3 supported Regions and endpoints, see
9142
- # [Regions and Endpoints][5] in the Amazon Web Services General
9143
- # Reference.
9298
+ # For a list of all the Amazon S3 supported Regions and endpoints,
9299
+ # see [Regions and Endpoints][5] in the Amazon Web Services General
9300
+ # Reference.
9144
9301
  #
9145
- # </note>
9302
+ # </note>
9146
9303
  #
9147
- # **Related Resources**
9304
+ # The following operations are related to `PutBucketAcl`:
9148
9305
  #
9149
9306
  # * [CreateBucket][6]
9150
9307
  #
@@ -9310,7 +9467,7 @@ module Aws::S3
9310
9467
  # Related to Bucket Subresource Operations][3] and [Managing Access
9311
9468
  # Permissions to Your Amazon S3 Resources][4].
9312
9469
  #
9313
- # **Special Errors**
9470
+ # `PutBucketAnalyticsConfiguration` has the following special errors:
9314
9471
  #
9315
9472
  # * * *HTTP Error: HTTP 400 Bad Request*
9316
9473
  #
@@ -9333,7 +9490,8 @@ module Aws::S3
9333
9490
  # not have the s3:PutAnalyticsConfiguration bucket permission to set
9334
9491
  # the configuration on the bucket.*
9335
9492
  #
9336
- # **Related Resources**
9493
+ # The following operations are related to
9494
+ # `PutBucketAnalyticsConfiguration`:
9337
9495
  #
9338
9496
  # * [GetBucketAnalyticsConfiguration][5]
9339
9497
  #
@@ -9454,7 +9612,7 @@ module Aws::S3
9454
9612
  # For more information about CORS, go to [Enabling Cross-Origin Resource
9455
9613
  # Sharing][1] in the *Amazon S3 User Guide*.
9456
9614
  #
9457
- # **Related Resources**
9615
+ # The following operations are related to `PutBucketCors`:
9458
9616
  #
9459
9617
  # * [GetBucketCors][2]
9460
9618
  #
@@ -9617,7 +9775,7 @@ module Aws::S3
9617
9775
  # Permissions to Your Amazon S3 Resources][5] in the *Amazon S3 User
9618
9776
  # Guide*.
9619
9777
  #
9620
- # **Related Resources**
9778
+ # The following operations are related to `PutBucketEncryption`:
9621
9779
  #
9622
9780
  # * [GetBucketEncryption][6]
9623
9781
  #
@@ -9748,28 +9906,27 @@ module Aws::S3
9748
9906
  #
9749
9907
  # </note>
9750
9908
  #
9751
- # **Special Errors**
9752
- #
9753
- # * **HTTP 400 Bad Request Error**
9909
+ # `PutBucketIntelligentTieringConfiguration` has the following special
9910
+ # errors:
9754
9911
  #
9755
- # * *Code:* InvalidArgument
9912
+ # HTTP 400 Bad Request Error
9756
9913
  #
9757
- # * *Cause:* Invalid Argument
9914
+ # : *Code:* InvalidArgument
9758
9915
  #
9759
- # * **HTTP 400 Bad Request Error**
9916
+ # *Cause:* Invalid Argument
9760
9917
  #
9761
- # * *Code:* TooManyConfigurations
9918
+ # HTTP 400 Bad Request Error
9762
9919
  #
9763
- # * *Cause:* You are attempting to create a new configuration but have
9764
- # already reached the 1,000-configuration limit.
9920
+ # : *Code:* TooManyConfigurations
9765
9921
  #
9766
- # * **HTTP 403 Forbidden Error**
9922
+ # *Cause:* You are attempting to create a new configuration but have
9923
+ # already reached the 1,000-configuration limit.
9767
9924
  #
9768
- # * *Code:* AccessDenied
9925
+ # HTTP 403 Forbidden Error
9769
9926
  #
9770
- # * *Cause:* You are not the owner of the specified bucket, or you do
9771
- # not have the `s3:PutIntelligentTieringConfiguration` bucket
9772
- # permission to set the configuration on the bucket.
9927
+ # : *Cause:* You are not the owner of the specified bucket, or you do
9928
+ # not have the `s3:PutIntelligentTieringConfiguration` bucket
9929
+ # permission to set the configuration on the bucket.
9773
9930
  #
9774
9931
  #
9775
9932
  #
@@ -9855,51 +10012,50 @@ module Aws::S3
9855
10012
  # location. For an example policy, see [ Granting Permissions for Amazon
9856
10013
  # S3 Inventory and Storage Class Analysis][2].
9857
10014
  #
9858
- # **Permissions**
9859
- #
9860
- # To use this operation, you must have permission to perform the
9861
- # `s3:PutInventoryConfiguration` action. The bucket owner has this
9862
- # permission by default and can grant this permission to others.
10015
+ # Permissions
9863
10016
  #
9864
- # The `s3:PutInventoryConfiguration` permission allows a user to create
9865
- # an [S3 Inventory][3] report that includes all object metadata fields
9866
- # available and to specify the destination bucket to store the
9867
- # inventory. A user with read access to objects in the destination
9868
- # bucket can also access all object metadata fields that are available
9869
- # in the inventory report.
10017
+ # : To use this operation, you must have permission to perform the
10018
+ # `s3:PutInventoryConfiguration` action. The bucket owner has this
10019
+ # permission by default and can grant this permission to others.
9870
10020
  #
9871
- # To restrict access to an inventory report, see [Restricting access to
9872
- # an Amazon S3 Inventory report][4] in the *Amazon S3 User Guide*. For
9873
- # more information about the metadata fields available in S3 Inventory,
9874
- # see [Amazon S3 Inventory lists][5] in the *Amazon S3 User Guide*. For
9875
- # more information about permissions, see [Permissions related to bucket
9876
- # subresource operations][6] and [Identity and access management in
9877
- # Amazon S3][7] in the *Amazon S3 User Guide*.
10021
+ # The `s3:PutInventoryConfiguration` permission allows a user to
10022
+ # create an [S3 Inventory][3] report that includes all object metadata
10023
+ # fields available and to specify the destination bucket to store the
10024
+ # inventory. A user with read access to objects in the destination
10025
+ # bucket can also access all object metadata fields that are available
10026
+ # in the inventory report.
9878
10027
  #
9879
- # **Special Errors**
10028
+ # To restrict access to an inventory report, see [Restricting access
10029
+ # to an Amazon S3 Inventory report][4] in the *Amazon S3 User Guide*.
10030
+ # For more information about the metadata fields available in S3
10031
+ # Inventory, see [Amazon S3 Inventory lists][5] in the *Amazon S3 User
10032
+ # Guide*. For more information about permissions, see [Permissions
10033
+ # related to bucket subresource operations][6] and [Identity and
10034
+ # access management in Amazon S3][7] in the *Amazon S3 User Guide*.
9880
10035
  #
9881
- # * **HTTP 400 Bad Request Error**
10036
+ # `PutBucketInventoryConfiguration` has the following special errors:
9882
10037
  #
9883
- # * *Code:* InvalidArgument
10038
+ # HTTP 400 Bad Request Error
9884
10039
  #
9885
- # * *Cause:* Invalid Argument
10040
+ # : *Code:* InvalidArgument
9886
10041
  #
9887
- # * **HTTP 400 Bad Request Error**
10042
+ # *Cause:* Invalid Argument
9888
10043
  #
9889
- # * *Code:* TooManyConfigurations
10044
+ # HTTP 400 Bad Request Error
9890
10045
  #
9891
- # * *Cause:* You are attempting to create a new configuration but have
9892
- # already reached the 1,000-configuration limit.
10046
+ # : *Code:* TooManyConfigurations
9893
10047
  #
9894
- # * **HTTP 403 Forbidden Error**
10048
+ # *Cause:* You are attempting to create a new configuration but have
10049
+ # already reached the 1,000-configuration limit.
9895
10050
  #
9896
- # * *Code:* AccessDenied
10051
+ # HTTP 403 Forbidden Error
9897
10052
  #
9898
- # * *Cause:* You are not the owner of the specified bucket, or you do
9899
- # not have the `s3:PutInventoryConfiguration` bucket permission to
9900
- # set the configuration on the bucket.
10053
+ # : *Cause:* You are not the owner of the specified bucket, or you do
10054
+ # not have the `s3:PutInventoryConfiguration` bucket permission to set
10055
+ # the configuration on the bucket.
9901
10056
  #
9902
- # **Related Resources**
10057
+ # The following operations are related to
10058
+ # `PutBucketInventoryConfiguration`:
9903
10059
  #
9904
10060
  # * [GetBucketInventoryConfiguration][8]
9905
10061
  #
@@ -10018,7 +10174,7 @@ module Aws::S3
10018
10174
  # STANDARD\_IA or ONEZONE\_IA, see [Examples of Lifecycle
10019
10175
  # Configuration][4].
10020
10176
  #
10021
- # **Related Resources**
10177
+ # The following operations are related to `PutBucketLifecycle`:
10022
10178
  #
10023
10179
  # * [GetBucketLifecycle][5](Deprecated)
10024
10180
  #
@@ -10145,56 +10301,58 @@ module Aws::S3
10145
10301
  #
10146
10302
  # </note>
10147
10303
  #
10148
- # **Rules**
10304
+ # Rules
10149
10305
  #
10150
- # You specify the lifecycle configuration in your request body. The
10151
- # lifecycle configuration is specified as XML consisting of one or more
10152
- # rules. An Amazon S3 Lifecycle configuration can have up to 1,000
10153
- # rules. This limit is not adjustable. Each rule consists of the
10154
- # following:
10306
+ # : You specify the lifecycle configuration in your request body. The
10307
+ # lifecycle configuration is specified as XML consisting of one or
10308
+ # more rules. An Amazon S3 Lifecycle configuration can have up to
10309
+ # 1,000 rules. This limit is not adjustable. Each rule consists of the
10310
+ # following:
10155
10311
  #
10156
- # * Filter identifying a subset of objects to which the rule applies.
10157
- # The filter can be based on a key name prefix, object tags, or a
10158
- # combination of both.
10312
+ # * Filter identifying a subset of objects to which the rule applies.
10313
+ # The filter can be based on a key name prefix, object tags, or a
10314
+ # combination of both.
10159
10315
  #
10160
- # * Status whether the rule is in effect.
10316
+ # * Status whether the rule is in effect.
10161
10317
  #
10162
- # * One or more lifecycle transition and expiration actions that you
10163
- # want Amazon S3 to perform on the objects identified by the filter.
10164
- # If the state of your bucket is versioning-enabled or
10165
- # versioning-suspended, you can have many versions of the same object
10166
- # (one current version and zero or more noncurrent versions). Amazon
10167
- # S3 provides predefined actions that you can specify for current and
10168
- # noncurrent object versions.
10318
+ # * One or more lifecycle transition and expiration actions that you
10319
+ # want Amazon S3 to perform on the objects identified by the filter.
10320
+ # If the state of your bucket is versioning-enabled or
10321
+ # versioning-suspended, you can have many versions of the same
10322
+ # object (one current version and zero or more noncurrent versions).
10323
+ # Amazon S3 provides predefined actions that you can specify for
10324
+ # current and noncurrent object versions.
10169
10325
  #
10170
- # For more information, see [Object Lifecycle Management][3] and
10171
- # [Lifecycle Configuration Elements][4].
10326
+ # For more information, see [Object Lifecycle Management][3] and
10327
+ # [Lifecycle Configuration Elements][4].
10172
10328
  #
10173
- # **Permissions**
10329
+ # Permissions
10174
10330
  #
10175
- # By default, all Amazon S3 resources are private, including buckets,
10176
- # objects, and related subresources (for example, lifecycle
10177
- # configuration and website configuration). Only the resource owner
10178
- # (that is, the Amazon Web Services account that created it) can access
10179
- # the resource. The resource owner can optionally grant access
10180
- # permissions to others by writing an access policy. For this operation,
10181
- # a user must get the `s3:PutLifecycleConfiguration` permission.
10331
+ # : By default, all Amazon S3 resources are private, including buckets,
10332
+ # objects, and related subresources (for example, lifecycle
10333
+ # configuration and website configuration). Only the resource owner
10334
+ # (that is, the Amazon Web Services account that created it) can
10335
+ # access the resource. The resource owner can optionally grant access
10336
+ # permissions to others by writing an access policy. For this
10337
+ # operation, a user must get the `s3:PutLifecycleConfiguration`
10338
+ # permission.
10182
10339
  #
10183
- # You can also explicitly deny permissions. Explicit deny also
10184
- # supersedes any other permissions. If you want to block users or
10185
- # accounts from removing or deleting objects from your bucket, you must
10186
- # deny them permissions for the following actions:
10340
+ # You can also explicitly deny permissions. Explicit deny also
10341
+ # supersedes any other permissions. If you want to block users or
10342
+ # accounts from removing or deleting objects from your bucket, you
10343
+ # must deny them permissions for the following actions:
10187
10344
  #
10188
- # * `s3:DeleteObject`
10345
+ # * `s3:DeleteObject`
10189
10346
  #
10190
- # * `s3:DeleteObjectVersion`
10347
+ # * `s3:DeleteObjectVersion`
10191
10348
  #
10192
- # * `s3:PutLifecycleConfiguration`
10349
+ # * `s3:PutLifecycleConfiguration`
10193
10350
  #
10194
- # For more information about permissions, see [Managing Access
10195
- # Permissions to Your Amazon S3 Resources][5].
10351
+ # For more information about permissions, see [Managing Access
10352
+ # Permissions to Your Amazon S3 Resources][5].
10196
10353
  #
10197
- # The following are related to `PutBucketLifecycleConfiguration`:
10354
+ # The following operations are related to
10355
+ # `PutBucketLifecycleConfiguration`:
10198
10356
  #
10199
10357
  # * [Examples of Lifecycle Configuration][6]
10200
10358
  #
@@ -10359,31 +10517,31 @@ module Aws::S3
10359
10517
  # using policies. For more information, see [Permissions for server
10360
10518
  # access log delivery][1] in the *Amazon S3 User Guide*.
10361
10519
  #
10362
- # **Grantee Values**
10520
+ # Grantee Values
10363
10521
  #
10364
- # You can specify the person (grantee) to whom you're assigning access
10365
- # rights (using request elements) in the following ways:
10522
+ # : You can specify the person (grantee) to whom you're assigning
10523
+ # access rights (using request elements) in the following ways:
10366
10524
  #
10367
- # * By the person's ID:
10525
+ # * By the person's ID:
10368
10526
  #
10369
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10370
- # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
10371
- # </Grantee>`
10527
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10528
+ # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
10529
+ # </Grantee>`
10372
10530
  #
10373
- # DisplayName is optional and ignored in the request.
10531
+ # DisplayName is optional and ignored in the request.
10374
10532
  #
10375
- # * By Email address:
10533
+ # * By Email address:
10376
10534
  #
10377
- # ` <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10378
- # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress></Grantee>`
10535
+ # ` <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10536
+ # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress></Grantee>`
10379
10537
  #
10380
- # The grantee is resolved to the CanonicalUser and, in a response to a
10381
- # GET Object acl request, appears as the CanonicalUser.
10538
+ # The grantee is resolved to the CanonicalUser and, in a response to
10539
+ # a GET Object acl request, appears as the CanonicalUser.
10382
10540
  #
10383
- # * By URI:
10541
+ # * By URI:
10384
10542
  #
10385
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10386
- # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
10543
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10544
+ # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
10387
10545
  #
10388
10546
  # To enable logging, you use LoggingEnabled and its children request
10389
10547
  # elements. To disable logging, you use an empty BucketLoggingStatus
@@ -10748,8 +10906,6 @@ module Aws::S3
10748
10906
  #
10749
10907
  # </note>
10750
10908
  #
10751
- # **Responses**
10752
- #
10753
10909
  # If the configuration in the request body includes only one
10754
10910
  # `TopicConfiguration` specifying only the
10755
10911
  # `s3:ReducedRedundancyLostObject` event type, the response will also
@@ -10955,10 +11111,14 @@ module Aws::S3
10955
11111
  # you're not using an identity that belongs to the bucket owner's
10956
11112
  # account, Amazon S3 returns a `405 Method Not Allowed` error.
10957
11113
  #
10958
- # As a security precaution, the root user of the Amazon Web Services
10959
- # account that owns a bucket can always use this operation, even if the
10960
- # policy explicitly denies the root user the ability to perform this
10961
- # action.
11114
+ # To ensure that bucket owners don't inadvertently lock themselves out
11115
+ # of their own buckets, the root principal in a bucket owner's Amazon
11116
+ # Web Services account can perform the `GetBucketPolicy`,
11117
+ # `PutBucketPolicy`, and `DeleteBucketPolicy` API actions, even if their
11118
+ # bucket policy explicitly denies the root principal's access. Bucket
11119
+ # owner root principals can only be blocked from performing these API
11120
+ # actions by VPC endpoint policies and Amazon Web Services Organizations
11121
+ # policies.
10962
11122
  #
10963
11123
  # For more information, see [Bucket policy examples][1].
10964
11124
  #
@@ -11075,35 +11235,35 @@ module Aws::S3
11075
11235
  # For information about enabling versioning on a bucket, see [Using
11076
11236
  # Versioning][3].
11077
11237
  #
11078
- # **Handling Replication of Encrypted Objects**
11238
+ # Handling Replication of Encrypted Objects
11079
11239
  #
11080
- # By default, Amazon S3 doesn't replicate objects that are stored at
11081
- # rest using server-side encryption with KMS keys. To replicate Amazon
11082
- # Web Services KMS-encrypted objects, add the following:
11083
- # `SourceSelectionCriteria`, `SseKmsEncryptedObjects`, `Status`,
11084
- # `EncryptionConfiguration`, and `ReplicaKmsKeyID`. For information
11085
- # about replication configuration, see [Replicating Objects Created with
11086
- # SSE Using KMS keys][4].
11240
+ # : By default, Amazon S3 doesn't replicate objects that are stored at
11241
+ # rest using server-side encryption with KMS keys. To replicate Amazon
11242
+ # Web Services KMS-encrypted objects, add the following:
11243
+ # `SourceSelectionCriteria`, `SseKmsEncryptedObjects`, `Status`,
11244
+ # `EncryptionConfiguration`, and `ReplicaKmsKeyID`. For information
11245
+ # about replication configuration, see [Replicating Objects Created
11246
+ # with SSE Using KMS keys][4].
11087
11247
  #
11088
- # For information on `PutBucketReplication` errors, see [List of
11089
- # replication-related error codes][5]
11248
+ # For information on `PutBucketReplication` errors, see [List of
11249
+ # replication-related error codes][5]
11090
11250
  #
11091
- # **Permissions**
11251
+ # Permissions
11092
11252
  #
11093
- # To create a `PutBucketReplication` request, you must have
11094
- # `s3:PutReplicationConfiguration` permissions for the bucket.
11253
+ # : To create a `PutBucketReplication` request, you must have
11254
+ # `s3:PutReplicationConfiguration` permissions for the bucket.
11095
11255
  #
11096
- # By default, a resource owner, in this case the Amazon Web Services
11097
- # account that created the bucket, can perform this operation. The
11098
- # resource owner can also grant others permissions to perform the
11099
- # operation. For more information about permissions, see [Specifying
11100
- # Permissions in a Policy][6] and [Managing Access Permissions to Your
11101
- # Amazon S3 Resources][7].
11256
+ # By default, a resource owner, in this case the Amazon Web Services
11257
+ # account that created the bucket, can perform this operation. The
11258
+ # resource owner can also grant others permissions to perform the
11259
+ # operation. For more information about permissions, see [Specifying
11260
+ # Permissions in a Policy][6] and [Managing Access Permissions to Your
11261
+ # Amazon S3 Resources][7].
11102
11262
  #
11103
- # <note markdown="1"> To perform this operation, the user or role performing the action must
11104
- # have the [iam:PassRole][8] permission.
11263
+ # <note markdown="1"> To perform this operation, the user or role performing the action
11264
+ # must have the [iam:PassRole][8] permission.
11105
11265
  #
11106
- # </note>
11266
+ # </note>
11107
11267
  #
11108
11268
  # The following operations are related to `PutBucketReplication`:
11109
11269
  #
@@ -11236,7 +11396,7 @@ module Aws::S3
11236
11396
  # destination: { # required
11237
11397
  # bucket: "BucketName", # required
11238
11398
  # account: "AccountId",
11239
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
11399
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW
11240
11400
  # access_control_translation: {
11241
11401
  # owner: "Destination", # required, accepts Destination
11242
11402
  # },
@@ -11552,16 +11712,16 @@ module Aws::S3
11552
11712
  # header and the `Status` and the `MfaDelete` request elements in a
11553
11713
  # request to set the versioning state of the bucket.
11554
11714
  #
11555
- # If you have an object expiration lifecycle policy in your
11715
+ # If you have an object expiration lifecycle configuration in your
11556
11716
  # non-versioned bucket and you want to maintain the same permanent
11557
11717
  # delete behavior when you enable versioning, you must add a noncurrent
11558
- # expiration policy. The noncurrent expiration lifecycle policy will
11559
- # manage the deletes of the noncurrent object versions in the
11718
+ # expiration policy. The noncurrent expiration lifecycle configuration
11719
+ # will manage the deletes of the noncurrent object versions in the
11560
11720
  # version-enabled bucket. (A version-enabled bucket maintains one
11561
11721
  # current and zero or more noncurrent object versions.) For more
11562
11722
  # information, see [Lifecycle and Versioning][2].
11563
11723
  #
11564
- # **Related Resources**
11724
+ # The following operations are related to `PutBucketVersioning`:
11565
11725
  #
11566
11726
  # * [CreateBucket][3]
11567
11727
  #
@@ -11925,9 +12085,9 @@ module Aws::S3
11925
12085
  # returns this ID in the response. When you enable versioning for a
11926
12086
  # bucket, if Amazon S3 receives multiple write requests for the same
11927
12087
  # object simultaneously, it stores all of the objects. For more
11928
- # information about versioning, see [Adding Objects to Versioning
11929
- # Enabled Buckets][8]. For information about returning the versioning
11930
- # state of a bucket, see [GetBucketVersioning][9].
12088
+ # information about versioning, see [Adding Objects to
12089
+ # Versioning-Enabled Buckets][8]. For information about returning the
12090
+ # versioning state of a bucket, see [GetBucketVersioning][9].
11931
12091
  #
11932
12092
  # For more information about related Amazon S3 APIs, see the following:
11933
12093
  #
@@ -12284,27 +12444,6 @@ module Aws::S3
12284
12444
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
12285
12445
  #
12286
12446
  #
12287
- # @example Example: To upload object and specify user-defined metadata
12288
- #
12289
- # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
12290
- # # enabled, S3 returns version ID in response.
12291
- #
12292
- # resp = client.put_object({
12293
- # body: "filetoupload",
12294
- # bucket: "examplebucket",
12295
- # key: "exampleobject",
12296
- # metadata: {
12297
- # "metadata1" => "value1",
12298
- # "metadata2" => "value2",
12299
- # },
12300
- # })
12301
- #
12302
- # resp.to_h outputs the following:
12303
- # {
12304
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12305
- # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
12306
- # }
12307
- #
12308
12447
  # @example Example: To upload an object and specify optional tags
12309
12448
  #
12310
12449
  # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
@@ -12341,6 +12480,26 @@ module Aws::S3
12341
12480
  # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
12342
12481
  # }
12343
12482
  #
12483
+ # @example Example: To upload an object and specify server-side encryption and object tags
12484
+ #
12485
+ # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
12486
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
12487
+ #
12488
+ # resp = client.put_object({
12489
+ # body: "filetoupload",
12490
+ # bucket: "examplebucket",
12491
+ # key: "exampleobject",
12492
+ # server_side_encryption: "AES256",
12493
+ # tagging: "key1=value1&key2=value2",
12494
+ # })
12495
+ #
12496
+ # resp.to_h outputs the following:
12497
+ # {
12498
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12499
+ # server_side_encryption: "AES256",
12500
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
12501
+ # }
12502
+ #
12344
12503
  # @example Example: To create an object.
12345
12504
  #
12346
12505
  # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
@@ -12394,24 +12553,25 @@ module Aws::S3
12394
12553
  # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
12395
12554
  # }
12396
12555
  #
12397
- # @example Example: To upload an object and specify server-side encryption and object tags
12556
+ # @example Example: To upload object and specify user-defined metadata
12398
12557
  #
12399
- # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
12400
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
12558
+ # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
12559
+ # # enabled, S3 returns version ID in response.
12401
12560
  #
12402
12561
  # resp = client.put_object({
12403
12562
  # body: "filetoupload",
12404
12563
  # bucket: "examplebucket",
12405
12564
  # key: "exampleobject",
12406
- # server_side_encryption: "AES256",
12407
- # tagging: "key1=value1&key2=value2",
12565
+ # metadata: {
12566
+ # "metadata1" => "value1",
12567
+ # "metadata2" => "value2",
12568
+ # },
12408
12569
  # })
12409
12570
  #
12410
12571
  # resp.to_h outputs the following:
12411
12572
  # {
12412
12573
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12413
- # server_side_encryption: "AES256",
12414
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
12574
+ # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
12415
12575
  # }
12416
12576
  #
12417
12577
  # @example Streaming a file from disk
@@ -12448,7 +12608,7 @@ module Aws::S3
12448
12608
  # "MetadataKey" => "MetadataValue",
12449
12609
  # },
12450
12610
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
12451
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
12611
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW
12452
12612
  # website_redirect_location: "WebsiteRedirectLocation",
12453
12613
  # sse_customer_algorithm: "SSECustomerAlgorithm",
12454
12614
  # sse_customer_key: "SSECustomerKey",
@@ -12513,131 +12673,132 @@ module Aws::S3
12513
12673
  # still supported. For more information, see [Controlling object
12514
12674
  # ownership][3] in the *Amazon S3 User Guide*.
12515
12675
  #
12516
- # **Access Permissions**
12676
+ # Permissions
12517
12677
  #
12518
- # You can set access permissions using one of the following methods:
12678
+ # : You can set access permissions using one of the following methods:
12519
12679
  #
12520
- # * Specify a canned ACL with the `x-amz-acl` request header. Amazon S3
12521
- # supports a set of predefined ACLs, known as canned ACLs. Each canned
12522
- # ACL has a predefined set of grantees and permissions. Specify the
12523
- # canned ACL name as the value of `x-amz-ac`l. If you use this header,
12524
- # you cannot use other access control-specific headers in your
12525
- # request. For more information, see [Canned ACL][4].
12680
+ # * Specify a canned ACL with the `x-amz-acl` request header. Amazon
12681
+ # S3 supports a set of predefined ACLs, known as canned ACLs. Each
12682
+ # canned ACL has a predefined set of grantees and permissions.
12683
+ # Specify the canned ACL name as the value of `x-amz-ac`l. If you
12684
+ # use this header, you cannot use other access control-specific
12685
+ # headers in your request. For more information, see [Canned
12686
+ # ACL][4].
12526
12687
  #
12527
- # * Specify access permissions explicitly with the `x-amz-grant-read`,
12528
- # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
12529
- # `x-amz-grant-full-control` headers. When using these headers, you
12530
- # specify explicit access permissions and grantees (Amazon Web
12531
- # Services accounts or Amazon S3 groups) who will receive the
12532
- # permission. If you use these ACL-specific headers, you cannot use
12533
- # `x-amz-acl` header to set a canned ACL. These parameters map to the
12534
- # set of permissions that Amazon S3 supports in an ACL. For more
12535
- # information, see [Access Control List (ACL) Overview][2].
12688
+ # * Specify access permissions explicitly with the `x-amz-grant-read`,
12689
+ # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
12690
+ # `x-amz-grant-full-control` headers. When using these headers, you
12691
+ # specify explicit access permissions and grantees (Amazon Web
12692
+ # Services accounts or Amazon S3 groups) who will receive the
12693
+ # permission. If you use these ACL-specific headers, you cannot use
12694
+ # `x-amz-acl` header to set a canned ACL. These parameters map to
12695
+ # the set of permissions that Amazon S3 supports in an ACL. For more
12696
+ # information, see [Access Control List (ACL) Overview][2].
12536
12697
  #
12537
- # You specify each grantee as a type=value pair, where the type is one
12538
- # of the following:
12698
+ # You specify each grantee as a type=value pair, where the type is
12699
+ # one of the following:
12539
12700
  #
12540
- # * `id` – if the value specified is the canonical user ID of an
12541
- # Amazon Web Services account
12701
+ # * `id` – if the value specified is the canonical user ID of an
12702
+ # Amazon Web Services account
12542
12703
  #
12543
- # * `uri` – if you are granting permissions to a predefined group
12704
+ # * `uri` – if you are granting permissions to a predefined group
12544
12705
  #
12545
- # * `emailAddress` – if the value specified is the email address of an
12546
- # Amazon Web Services account
12706
+ # * `emailAddress` – if the value specified is the email address of
12707
+ # an Amazon Web Services account
12547
12708
  #
12548
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in
12549
- # the following Amazon Web Services Regions:
12709
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
12710
+ # the following Amazon Web Services Regions:
12550
12711
  #
12551
- # * US East (N. Virginia)
12712
+ # * US East (N. Virginia)
12552
12713
  #
12553
- # * US West (N. California)
12714
+ # * US West (N. California)
12554
12715
  #
12555
- # * US West (Oregon)
12716
+ # * US West (Oregon)
12556
12717
  #
12557
- # * Asia Pacific (Singapore)
12718
+ # * Asia Pacific (Singapore)
12558
12719
  #
12559
- # * Asia Pacific (Sydney)
12720
+ # * Asia Pacific (Sydney)
12560
12721
  #
12561
- # * Asia Pacific (Tokyo)
12722
+ # * Asia Pacific (Tokyo)
12562
12723
  #
12563
- # * Europe (Ireland)
12724
+ # * Europe (Ireland)
12564
12725
  #
12565
- # * South America (São Paulo)
12726
+ # * South America (São Paulo)
12566
12727
  #
12567
- # For a list of all the Amazon S3 supported Regions and endpoints,
12568
- # see [Regions and Endpoints][5] in the Amazon Web Services General
12569
- # Reference.
12728
+ # For a list of all the Amazon S3 supported Regions and endpoints,
12729
+ # see [Regions and Endpoints][5] in the Amazon Web Services
12730
+ # General Reference.
12570
12731
  #
12571
- # </note>
12732
+ # </note>
12572
12733
  #
12573
- # For example, the following `x-amz-grant-read` header grants list
12574
- # objects permission to the two Amazon Web Services accounts
12575
- # identified by their email addresses.
12734
+ # For example, the following `x-amz-grant-read` header grants list
12735
+ # objects permission to the two Amazon Web Services accounts
12736
+ # identified by their email addresses.
12576
12737
  #
12577
- # `x-amz-grant-read: emailAddress="xyz@amazon.com",
12578
- # emailAddress="abc@amazon.com" `
12738
+ # `x-amz-grant-read: emailAddress="xyz@amazon.com",
12739
+ # emailAddress="abc@amazon.com" `
12579
12740
  #
12580
- # You can use either a canned ACL or specify access permissions
12581
- # explicitly. You cannot do both.
12741
+ # You can use either a canned ACL or specify access permissions
12742
+ # explicitly. You cannot do both.
12582
12743
  #
12583
- # **Grantee Values**
12744
+ # Grantee Values
12584
12745
  #
12585
- # You can specify the person (grantee) to whom you're assigning access
12586
- # rights (using request elements) in the following ways:
12746
+ # : You can specify the person (grantee) to whom you're assigning
12747
+ # access rights (using request elements) in the following ways:
12587
12748
  #
12588
- # * By the person's ID:
12749
+ # * By the person's ID:
12589
12750
  #
12590
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12591
- # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
12592
- # </Grantee>`
12751
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12752
+ # xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName>
12753
+ # </Grantee>`
12593
12754
  #
12594
- # DisplayName is optional and ignored in the request.
12755
+ # DisplayName is optional and ignored in the request.
12595
12756
  #
12596
- # * By URI:
12757
+ # * By URI:
12597
12758
  #
12598
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12599
- # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
12759
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12760
+ # xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>`
12600
12761
  #
12601
- # * By Email address:
12762
+ # * By Email address:
12602
12763
  #
12603
- # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12604
- # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress>lt;/Grantee>`
12764
+ # `<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12765
+ # xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress>lt;/Grantee>`
12605
12766
  #
12606
- # The grantee is resolved to the CanonicalUser and, in a response to a
12607
- # GET Object acl request, appears as the CanonicalUser.
12767
+ # The grantee is resolved to the CanonicalUser and, in a response to
12768
+ # a GET Object acl request, appears as the CanonicalUser.
12608
12769
  #
12609
- # <note markdown="1"> Using email addresses to specify a grantee is only supported in the
12610
- # following Amazon Web Services Regions:
12770
+ # <note markdown="1"> Using email addresses to specify a grantee is only supported in
12771
+ # the following Amazon Web Services Regions:
12611
12772
  #
12612
- # * US East (N. Virginia)
12773
+ # * US East (N. Virginia)
12613
12774
  #
12614
- # * US West (N. California)
12775
+ # * US West (N. California)
12615
12776
  #
12616
- # * US West (Oregon)
12777
+ # * US West (Oregon)
12617
12778
  #
12618
- # * Asia Pacific (Singapore)
12779
+ # * Asia Pacific (Singapore)
12619
12780
  #
12620
- # * Asia Pacific (Sydney)
12781
+ # * Asia Pacific (Sydney)
12621
12782
  #
12622
- # * Asia Pacific (Tokyo)
12783
+ # * Asia Pacific (Tokyo)
12623
12784
  #
12624
- # * Europe (Ireland)
12785
+ # * Europe (Ireland)
12625
12786
  #
12626
- # * South America (São Paulo)
12787
+ # * South America (São Paulo)
12627
12788
  #
12628
- # For a list of all the Amazon S3 supported Regions and endpoints, see
12629
- # [Regions and Endpoints][5] in the Amazon Web Services General
12630
- # Reference.
12789
+ # For a list of all the Amazon S3 supported Regions and endpoints,
12790
+ # see [Regions and Endpoints][5] in the Amazon Web Services General
12791
+ # Reference.
12631
12792
  #
12632
- # </note>
12793
+ # </note>
12633
12794
  #
12634
- # **Versioning**
12795
+ # Versioning
12635
12796
  #
12636
- # The ACL of an object is set at the object version level. By default,
12637
- # PUT sets the ACL of the current version of an object. To set the ACL
12638
- # of a different version, use the `versionId` subresource.
12797
+ # : The ACL of an object is set at the object version level. By default,
12798
+ # PUT sets the ACL of the current version of an object. To set the ACL
12799
+ # of a different version, use the `versionId` subresource.
12639
12800
  #
12640
- # **Related Resources**
12801
+ # The following operations are related to `PutObjectAcl`:
12641
12802
  #
12642
12803
  # * [CopyObject][6]
12643
12804
  #
@@ -13207,7 +13368,7 @@ module Aws::S3
13207
13368
  # For information about the Amazon S3 object tagging feature, see
13208
13369
  # [Object Tagging][3].
13209
13370
  #
13210
- # **Special Errors**
13371
+ # `PutObjectTagging` has the following special errors:
13211
13372
  #
13212
13373
  # * * <i>Code: InvalidTagError </i>
13213
13374
  #
@@ -13229,7 +13390,7 @@ module Aws::S3
13229
13390
  # * *Cause: The service was unable to apply the provided tag to the
13230
13391
  # object.*
13231
13392
  #
13232
- # **Related Resources**
13393
+ # The following operations are related to `PutObjectTagging`:
13233
13394
  #
13234
13395
  # * [GetObjectTagging][1]
13235
13396
  #
@@ -13395,7 +13556,7 @@ module Aws::S3
13395
13556
  # For more information about when Amazon S3 considers a bucket or an
13396
13557
  # object public, see [The Meaning of "Public"][2].
13397
13558
  #
13398
- # **Related Resources**
13559
+ # The following operations are related to `PutPublicAccessBlock`:
13399
13560
  #
13400
13561
  # * [GetPublicAccessBlock][3]
13401
13562
  #
@@ -13493,44 +13654,37 @@ module Aws::S3
13493
13654
  #
13494
13655
  # * `restore an archive` - Restore an archived object
13495
13656
  #
13496
- # To use this operation, you must have permissions to perform the
13497
- # `s3:RestoreObject` action. The bucket owner has this permission by
13498
- # default and can grant this permission to others. For more information
13499
- # about permissions, see [Permissions Related to Bucket Subresource
13500
- # Operations][1] and [Managing Access Permissions to Your Amazon S3
13501
- # Resources][2] in the *Amazon S3 User Guide*.
13502
- #
13503
13657
  # For more information about the `S3` structure in the request body, see
13504
13658
  # the following:
13505
13659
  #
13506
- # * * [PutObject][3]
13660
+ # * [PutObject][1]
13507
13661
  #
13508
- # * [Managing Access with ACLs][4] in the *Amazon S3 User Guide*
13662
+ # * [Managing Access with ACLs][2] in the *Amazon S3 User Guide*
13509
13663
  #
13510
- # * [Protecting Data Using Server-Side Encryption][5] in the *Amazon
13511
- # S3 User Guide*
13664
+ # * [Protecting Data Using Server-Side Encryption][3] in the *Amazon S3
13665
+ # User Guide*
13512
13666
  #
13513
- # * Define the SQL expression for the `SELECT` type of restoration for
13514
- # your query in the request body's `SelectParameters` structure. You
13515
- # can use expressions like the following examples.
13667
+ # Define the SQL expression for the `SELECT` type of restoration for
13668
+ # your query in the request body's `SelectParameters` structure. You
13669
+ # can use expressions like the following examples.
13516
13670
  #
13517
- # * The following expression returns all records from the specified
13518
- # object.
13671
+ # * The following expression returns all records from the specified
13672
+ # object.
13519
13673
  #
13520
- # `SELECT * FROM Object`
13674
+ # `SELECT * FROM Object`
13521
13675
  #
13522
- # * Assuming that you are not using any headers for data stored in the
13523
- # object, you can specify columns with positional headers.
13676
+ # * Assuming that you are not using any headers for data stored in the
13677
+ # object, you can specify columns with positional headers.
13524
13678
  #
13525
- # `SELECT s._1, s._2 FROM Object s WHERE s._3 > 100`
13679
+ # `SELECT s._1, s._2 FROM Object s WHERE s._3 > 100`
13526
13680
  #
13527
- # * If you have headers and you set the `fileHeaderInfo` in the `CSV`
13528
- # structure in the request body to `USE`, you can specify headers in
13529
- # the query. (If you set the `fileHeaderInfo` field to `IGNORE`, the
13530
- # first row is skipped for the query.) You cannot mix ordinal
13531
- # positions with header column names.
13681
+ # * If you have headers and you set the `fileHeaderInfo` in the `CSV`
13682
+ # structure in the request body to `USE`, you can specify headers in
13683
+ # the query. (If you set the `fileHeaderInfo` field to `IGNORE`, the
13684
+ # first row is skipped for the query.) You cannot mix ordinal
13685
+ # positions with header column names.
13532
13686
  #
13533
- # `SELECT s.Id, s.FirstName, s.SSN FROM S3Object s`
13687
+ # `SELECT s.Id, s.FirstName, s.SSN FROM S3Object s`
13534
13688
  #
13535
13689
  # When making a select request, you can also do the following:
13536
13690
  #
@@ -13546,7 +13700,7 @@ module Aws::S3
13546
13700
  #
13547
13701
  # * The output results are new Amazon S3 objects. Unlike archive
13548
13702
  # retrievals, they are stored until explicitly deleted-manually or
13549
- # through a lifecycle policy.
13703
+ # through a lifecycle configuration.
13550
13704
  #
13551
13705
  # * You can issue more than one select request on the same Amazon S3
13552
13706
  # object. Amazon S3 doesn't duplicate requests, so avoid issuing
@@ -13555,128 +13709,141 @@ module Aws::S3
13555
13709
  # * Amazon S3 accepts a select request even if the object has already
13556
13710
  # been restored. A select request doesn’t return error response `409`.
13557
13711
  #
13558
- # **Restoring objects**
13559
- #
13560
- # Objects that you archive to the S3 Glacier Flexible Retrieval or S3
13561
- # Glacier Deep Archive storage class, and S3 Intelligent-Tiering Archive
13562
- # or S3 Intelligent-Tiering Deep Archive tiers, are not accessible in
13563
- # real time. For objects in the S3 Glacier Flexible Retrieval or S3
13564
- # Glacier Deep Archive storage classes, you must first initiate a
13565
- # restore request, and then wait until a temporary copy of the object is
13566
- # available. If you want a permanent copy of the object, create a copy
13567
- # of it in the Amazon S3 Standard storage class in your S3 bucket. To
13568
- # access an archived object, you must restore the object for the
13569
- # duration (number of days) that you specify. For objects in the Archive
13570
- # Access or Deep Archive Access tiers of S3 Intelligent-Tiering, you
13571
- # must first initiate a restore request, and then wait until the object
13572
- # is moved into the Frequent Access tier.
13573
- #
13574
- # To restore a specific object version, you can provide a version ID. If
13575
- # you don't provide a version ID, Amazon S3 restores the current
13576
- # version.
13577
- #
13578
- # When restoring an archived object, you can specify one of the
13579
- # following data access tier options in the `Tier` element of the
13580
- # request body:
13581
- #
13582
- # * `Expedited` - Expedited retrievals allow you to quickly access your
13583
- # data stored in the S3 Glacier Flexible Retrieval storage class or S3
13584
- # Intelligent-Tiering Archive tier when occasional urgent requests for
13585
- # a subset of archives are required. For all but the largest archived
13586
- # objects (250 MB+), data accessed using Expedited retrievals is
13587
- # typically made available within 1–5 minutes. Provisioned capacity
13588
- # ensures that retrieval capacity for Expedited retrievals is
13589
- # available when you need it. Expedited retrievals and provisioned
13590
- # capacity are not available for objects stored in the S3 Glacier Deep
13591
- # Archive storage class or S3 Intelligent-Tiering Deep Archive tier.
13592
- #
13593
- # * `Standard` - Standard retrievals allow you to access any of your
13594
- # archived objects within several hours. This is the default option
13595
- # for retrieval requests that do not specify the retrieval option.
13596
- # Standard retrievals typically finish within 3–5 hours for objects
13597
- # stored in the S3 Glacier Flexible Retrieval storage class or S3
13598
- # Intelligent-Tiering Archive tier. They typically finish within 12
13599
- # hours for objects stored in the S3 Glacier Deep Archive storage
13600
- # class or S3 Intelligent-Tiering Deep Archive tier. Standard
13601
- # retrievals are free for objects stored in S3 Intelligent-Tiering.
13602
- #
13603
- # * `Bulk` - Bulk retrievals free for objects stored in the S3 Glacier
13604
- # Flexible Retrieval and S3 Intelligent-Tiering storage classes,
13605
- # enabling you to retrieve large amounts, even petabytes, of data at
13606
- # no cost. Bulk retrievals typically finish within 5–12 hours for
13607
- # objects stored in the S3 Glacier Flexible Retrieval storage class or
13608
- # S3 Intelligent-Tiering Archive tier. Bulk retrievals are also the
13609
- # lowest-cost retrieval option when restoring objects from S3 Glacier
13610
- # Deep Archive. They typically finish within 48 hours for objects
13611
- # stored in the S3 Glacier Deep Archive storage class or S3
13612
- # Intelligent-Tiering Deep Archive tier.
13613
- #
13614
- # For more information about archive retrieval options and provisioned
13615
- # capacity for `Expedited` data access, see [Restoring Archived
13616
- # Objects][6] in the *Amazon S3 User Guide*.
13617
- #
13618
- # You can use Amazon S3 restore speed upgrade to change the restore
13619
- # speed to a faster speed while it is in progress. For more information,
13620
- # see [ Upgrading the speed of an in-progress restore][7] in the *Amazon
13621
- # S3 User Guide*.
13712
+ # Permissions
13713
+ #
13714
+ # : To use this operation, you must have permissions to perform the
13715
+ # `s3:RestoreObject` action. The bucket owner has this permission by
13716
+ # default and can grant this permission to others. For more
13717
+ # information about permissions, see [Permissions Related to Bucket
13718
+ # Subresource Operations][4] and [Managing Access Permissions to Your
13719
+ # Amazon S3 Resources][5] in the *Amazon S3 User Guide*.
13720
+ #
13721
+ # Restoring objects
13722
+ #
13723
+ # : Objects that you archive to the S3 Glacier Flexible Retrieval or S3
13724
+ # Glacier Deep Archive storage class, and S3 Intelligent-Tiering
13725
+ # Archive or S3 Intelligent-Tiering Deep Archive tiers, are not
13726
+ # accessible in real time. For objects in the S3 Glacier Flexible
13727
+ # Retrieval or S3 Glacier Deep Archive storage classes, you must first
13728
+ # initiate a restore request, and then wait until a temporary copy of
13729
+ # the object is available. If you want a permanent copy of the object,
13730
+ # create a copy of it in the Amazon S3 Standard storage class in your
13731
+ # S3 bucket. To access an archived object, you must restore the object
13732
+ # for the duration (number of days) that you specify. For objects in
13733
+ # the Archive Access or Deep Archive Access tiers of S3
13734
+ # Intelligent-Tiering, you must first initiate a restore request, and
13735
+ # then wait until the object is moved into the Frequent Access tier.
13736
+ #
13737
+ # To restore a specific object version, you can provide a version ID.
13738
+ # If you don't provide a version ID, Amazon S3 restores the current
13739
+ # version.
13740
+ #
13741
+ # When restoring an archived object, you can specify one of the
13742
+ # following data access tier options in the `Tier` element of the
13743
+ # request body:
13744
+ #
13745
+ # * `Expedited` - Expedited retrievals allow you to quickly access
13746
+ # your data stored in the S3 Glacier Flexible Retrieval storage
13747
+ # class or S3 Intelligent-Tiering Archive tier when occasional
13748
+ # urgent requests for restoring archives are required. For all but
13749
+ # the largest archived objects (250 MB+), data accessed using
13750
+ # Expedited retrievals is typically made available within 1–5
13751
+ # minutes. Provisioned capacity ensures that retrieval capacity for
13752
+ # Expedited retrievals is available when you need it. Expedited
13753
+ # retrievals and provisioned capacity are not available for objects
13754
+ # stored in the S3 Glacier Deep Archive storage class or S3
13755
+ # Intelligent-Tiering Deep Archive tier.
13756
+ #
13757
+ # * `Standard` - Standard retrievals allow you to access any of your
13758
+ # archived objects within several hours. This is the default option
13759
+ # for retrieval requests that do not specify the retrieval option.
13760
+ # Standard retrievals typically finish within 3–5 hours for objects
13761
+ # stored in the S3 Glacier Flexible Retrieval storage class or S3
13762
+ # Intelligent-Tiering Archive tier. They typically finish within 12
13763
+ # hours for objects stored in the S3 Glacier Deep Archive storage
13764
+ # class or S3 Intelligent-Tiering Deep Archive tier. Standard
13765
+ # retrievals are free for objects stored in S3 Intelligent-Tiering.
13766
+ #
13767
+ # * `Bulk` - Bulk retrievals free for objects stored in the S3 Glacier
13768
+ # Flexible Retrieval and S3 Intelligent-Tiering storage classes,
13769
+ # enabling you to retrieve large amounts, even petabytes, of data at
13770
+ # no cost. Bulk retrievals typically finish within 5–12 hours for
13771
+ # objects stored in the S3 Glacier Flexible Retrieval storage class
13772
+ # or S3 Intelligent-Tiering Archive tier. Bulk retrievals are also
13773
+ # the lowest-cost retrieval option when restoring objects from S3
13774
+ # Glacier Deep Archive. They typically finish within 48 hours for
13775
+ # objects stored in the S3 Glacier Deep Archive storage class or S3
13776
+ # Intelligent-Tiering Deep Archive tier.
13777
+ #
13778
+ # For more information about archive retrieval options and provisioned
13779
+ # capacity for `Expedited` data access, see [Restoring Archived
13780
+ # Objects][6] in the *Amazon S3 User Guide*.
13781
+ #
13782
+ # You can use Amazon S3 restore speed upgrade to change the restore
13783
+ # speed to a faster speed while it is in progress. For more
13784
+ # information, see [ Upgrading the speed of an in-progress restore][7]
13785
+ # in the *Amazon S3 User Guide*.
13622
13786
  #
13623
- # To get the status of object restoration, you can send a `HEAD`
13624
- # request. Operations return the `x-amz-restore` header, which provides
13625
- # information about the restoration status, in the response. You can use
13626
- # Amazon S3 event notifications to notify you when a restore is
13627
- # initiated or completed. For more information, see [Configuring Amazon
13628
- # S3 Event Notifications][8] in the *Amazon S3 User Guide*.
13787
+ # To get the status of object restoration, you can send a `HEAD`
13788
+ # request. Operations return the `x-amz-restore` header, which
13789
+ # provides information about the restoration status, in the response.
13790
+ # You can use Amazon S3 event notifications to notify you when a
13791
+ # restore is initiated or completed. For more information, see
13792
+ # [Configuring Amazon S3 Event Notifications][8] in the *Amazon S3
13793
+ # User Guide*.
13629
13794
  #
13630
- # After restoring an archived object, you can update the restoration
13631
- # period by reissuing the request with a new period. Amazon S3 updates
13632
- # the restoration period relative to the current time and charges only
13633
- # for the request-there are no data transfer charges. You cannot update
13634
- # the restoration period when Amazon S3 is actively processing your
13635
- # current restore request for the object.
13795
+ # After restoring an archived object, you can update the restoration
13796
+ # period by reissuing the request with a new period. Amazon S3 updates
13797
+ # the restoration period relative to the current time and charges only
13798
+ # for the request-there are no data transfer charges. You cannot
13799
+ # update the restoration period when Amazon S3 is actively processing
13800
+ # your current restore request for the object.
13636
13801
  #
13637
- # If your bucket has a lifecycle configuration with a rule that includes
13638
- # an expiration action, the object expiration overrides the life span
13639
- # that you specify in a restore request. For example, if you restore an
13640
- # object copy for 10 days, but the object is scheduled to expire in 3
13641
- # days, Amazon S3 deletes the object in 3 days. For more information
13642
- # about lifecycle configuration, see
13643
- # [PutBucketLifecycleConfiguration][9] and [Object Lifecycle
13644
- # Management][10] in *Amazon S3 User Guide*.
13802
+ # If your bucket has a lifecycle configuration with a rule that
13803
+ # includes an expiration action, the object expiration overrides the
13804
+ # life span that you specify in a restore request. For example, if you
13805
+ # restore an object copy for 10 days, but the object is scheduled to
13806
+ # expire in 3 days, Amazon S3 deletes the object in 3 days. For more
13807
+ # information about lifecycle configuration, see
13808
+ # [PutBucketLifecycleConfiguration][9] and [Object Lifecycle
13809
+ # Management][10] in *Amazon S3 User Guide*.
13645
13810
  #
13646
- # **Responses**
13811
+ # Responses
13647
13812
  #
13648
- # A successful action returns either the `200 OK` or `202 Accepted`
13649
- # status code.
13813
+ # : A successful action returns either the `200 OK` or `202 Accepted`
13814
+ # status code.
13650
13815
  #
13651
- # * If the object is not previously restored, then Amazon S3 returns
13652
- # `202 Accepted` in the response.
13816
+ # * If the object is not previously restored, then Amazon S3 returns
13817
+ # `202 Accepted` in the response.
13653
13818
  #
13654
- # * If the object is previously restored, Amazon S3 returns `200 OK` in
13655
- # the response.
13819
+ # * If the object is previously restored, Amazon S3 returns `200 OK`
13820
+ # in the response.
13821
+ # ^
13656
13822
  #
13657
- # **Special Errors**
13823
+ # * Special errors:
13658
13824
  #
13659
- # * * *Code: RestoreAlreadyInProgress*
13825
+ # * *Code: RestoreAlreadyInProgress*
13660
13826
  #
13661
- # * *Cause: Object restore is already in progress. (This error does
13662
- # not apply to SELECT type requests.)*
13827
+ # * *Cause: Object restore is already in progress. (This error does
13828
+ # not apply to SELECT type requests.)*
13663
13829
  #
13664
- # * *HTTP Status Code: 409 Conflict*
13830
+ # * *HTTP Status Code: 409 Conflict*
13665
13831
  #
13666
- # * *SOAP Fault Code Prefix: Client*
13832
+ # * *SOAP Fault Code Prefix: Client*
13667
13833
  #
13668
- # * * *Code: GlacierExpeditedRetrievalNotAvailable*
13834
+ # * * *Code: GlacierExpeditedRetrievalNotAvailable*
13669
13835
  #
13670
- # * *Cause: expedited retrievals are currently not available. Try
13671
- # again later. (Returned if there is insufficient capacity to
13672
- # process the Expedited request. This error applies only to
13673
- # Expedited retrievals and not to S3 Standard or Bulk retrievals.)*
13836
+ # * *Cause: expedited retrievals are currently not available. Try
13837
+ # again later. (Returned if there is insufficient capacity to
13838
+ # process the Expedited request. This error applies only to
13839
+ # Expedited retrievals and not to S3 Standard or Bulk
13840
+ # retrievals.)*
13674
13841
  #
13675
- # * *HTTP Status Code: 503*
13842
+ # * *HTTP Status Code: 503*
13676
13843
  #
13677
- # * *SOAP Fault Code Prefix: N/A*
13844
+ # * *SOAP Fault Code Prefix: N/A*
13678
13845
  #
13679
- # **Related Resources**
13846
+ # The following operations are related to `RestoreObject`:
13680
13847
  #
13681
13848
  # * [PutBucketLifecycleConfiguration][9]
13682
13849
  #
@@ -13684,11 +13851,11 @@ module Aws::S3
13684
13851
  #
13685
13852
  #
13686
13853
  #
13687
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
13688
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
13689
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
13690
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
13691
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
13854
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
13855
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
13856
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
13857
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
13858
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
13692
13859
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
13693
13860
  # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html
13694
13861
  # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
@@ -13870,7 +14037,7 @@ module Aws::S3
13870
14037
  # value: "MetadataValue",
13871
14038
  # },
13872
14039
  # ],
13873
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
14040
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW
13874
14041
  # },
13875
14042
  # },
13876
14043
  # },
@@ -13909,80 +14076,76 @@ module Aws::S3
13909
14076
  #
13910
14077
  #
13911
14078
  #
13912
- # **Permissions**
14079
+ # Permissions
13913
14080
  #
13914
- # You must have `s3:GetObject` permission for this operation. Amazon S3
13915
- # Select does not support anonymous access. For more information about
13916
- # permissions, see [Specifying Permissions in a Policy][3] in the
13917
- # *Amazon S3 User Guide*.
14081
+ # : You must have `s3:GetObject` permission for this operation. Amazon
14082
+ # S3 Select does not support anonymous access. For more information
14083
+ # about permissions, see [Specifying Permissions in a Policy][3] in
14084
+ # the *Amazon S3 User Guide*.
13918
14085
  #
14086
+ # Object Data Formats
13919
14087
  #
14088
+ # : You can use Amazon S3 Select to query objects that have the
14089
+ # following format properties:
13920
14090
  #
13921
- # *Object Data Formats*
14091
+ # * *CSV, JSON, and Parquet* - Objects must be in CSV, JSON, or
14092
+ # Parquet format.
13922
14093
  #
13923
- # You can use Amazon S3 Select to query objects that have the following
13924
- # format properties:
14094
+ # * *UTF-8* - UTF-8 is the only encoding type Amazon S3 Select
14095
+ # supports.
13925
14096
  #
13926
- # * *CSV, JSON, and Parquet* - Objects must be in CSV, JSON, or Parquet
13927
- # format.
14097
+ # * *GZIP or BZIP2* - CSV and JSON files can be compressed using GZIP
14098
+ # or BZIP2. GZIP and BZIP2 are the only compression formats that
14099
+ # Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select
14100
+ # supports columnar compression for Parquet using GZIP or Snappy.
14101
+ # Amazon S3 Select does not support whole-object compression for
14102
+ # Parquet objects.
13928
14103
  #
13929
- # * *UTF-8* - UTF-8 is the only encoding type Amazon S3 Select supports.
14104
+ # * *Server-side encryption* - Amazon S3 Select supports querying
14105
+ # objects that are protected with server-side encryption.
13930
14106
  #
13931
- # * *GZIP or BZIP2* - CSV and JSON files can be compressed using GZIP or
13932
- # BZIP2. GZIP and BZIP2 are the only compression formats that Amazon
13933
- # S3 Select supports for CSV and JSON files. Amazon S3 Select supports
13934
- # columnar compression for Parquet using GZIP or Snappy. Amazon S3
13935
- # Select does not support whole-object compression for Parquet
13936
- # objects.
14107
+ # For objects that are encrypted with customer-provided encryption
14108
+ # keys (SSE-C), you must use HTTPS, and you must use the headers
14109
+ # that are documented in the [GetObject][4]. For more information
14110
+ # about SSE-C, see [Server-Side Encryption (Using Customer-Provided
14111
+ # Encryption Keys)][5] in the *Amazon S3 User Guide*.
13937
14112
  #
13938
- # * *Server-side encryption* - Amazon S3 Select supports querying
13939
- # objects that are protected with server-side encryption.
14113
+ # For objects that are encrypted with Amazon S3 managed keys
14114
+ # (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS), server-side
14115
+ # encryption is handled transparently, so you don't need to specify
14116
+ # anything. For more information about server-side encryption,
14117
+ # including SSE-S3 and SSE-KMS, see [Protecting Data Using
14118
+ # Server-Side Encryption][6] in the *Amazon S3 User Guide*.
13940
14119
  #
13941
- # For objects that are encrypted with customer-provided encryption
13942
- # keys (SSE-C), you must use HTTPS, and you must use the headers that
13943
- # are documented in the [GetObject][4]. For more information about
13944
- # SSE-C, see [Server-Side Encryption (Using Customer-Provided
13945
- # Encryption Keys)][5] in the *Amazon S3 User Guide*.
14120
+ # Working with the Response Body
13946
14121
  #
13947
- # For objects that are encrypted with Amazon S3 managed keys (SSE-S3)
13948
- # and Amazon Web Services KMS keys (SSE-KMS), server-side encryption
13949
- # is handled transparently, so you don't need to specify anything.
13950
- # For more information about server-side encryption, including SSE-S3
13951
- # and SSE-KMS, see [Protecting Data Using Server-Side Encryption][6]
13952
- # in the *Amazon S3 User Guide*.
14122
+ # : Given the response size is unknown, Amazon S3 Select streams the
14123
+ # response as a series of messages and includes a `Transfer-Encoding`
14124
+ # header with `chunked` as its value in the response. For more
14125
+ # information, see [Appendix: SelectObjectContent Response][7].
13953
14126
  #
13954
- # **Working with the Response Body**
14127
+ # GetObject Support
13955
14128
  #
13956
- # Given the response size is unknown, Amazon S3 Select streams the
13957
- # response as a series of messages and includes a `Transfer-Encoding`
13958
- # header with `chunked` as its value in the response. For more
13959
- # information, see [Appendix: SelectObjectContent Response][7].
14129
+ # : The `SelectObjectContent` action does not support the following
14130
+ # `GetObject` functionality. For more information, see [GetObject][4].
13960
14131
  #
14132
+ # * `Range`: Although you can specify a scan range for an Amazon S3
14133
+ # Select request (see [SelectObjectContentRequest - ScanRange][8] in
14134
+ # the request parameters), you cannot specify the range of bytes of
14135
+ # an object to return.
13961
14136
  #
14137
+ # * GLACIER, DEEP\_ARCHIVE and REDUCED\_REDUNDANCY storage classes:
14138
+ # You cannot specify the GLACIER, DEEP\_ARCHIVE, or
14139
+ # `REDUCED_REDUNDANCY` storage classes. For more information, about
14140
+ # storage classes see [Storage Classes][9] in the *Amazon S3 User
14141
+ # Guide*.
13962
14142
  #
13963
- # **GetObject Support**
14143
+ # Special Errors
13964
14144
  #
13965
- # The `SelectObjectContent` action does not support the following
13966
- # `GetObject` functionality. For more information, see [GetObject][4].
14145
+ # : For a list of special errors for this operation, see [List of SELECT
14146
+ # Object Content Error Codes][10]
13967
14147
  #
13968
- # * `Range`: Although you can specify a scan range for an Amazon S3
13969
- # Select request (see [SelectObjectContentRequest - ScanRange][8] in
13970
- # the request parameters), you cannot specify the range of bytes of an
13971
- # object to return.
13972
- #
13973
- # * GLACIER, DEEP\_ARCHIVE and REDUCED\_REDUNDANCY storage classes: You
13974
- # cannot specify the GLACIER, DEEP\_ARCHIVE, or `REDUCED_REDUNDANCY`
13975
- # storage classes. For more information, about storage classes see
13976
- # [Storage Classes][9] in the *Amazon S3 User Guide*.
13977
- #
13978
- #
13979
- #
13980
- # **Special Errors**
13981
- #
13982
- # For a list of special errors for this operation, see [List of SELECT
13983
- # Object Content Error Codes][10]
13984
- #
13985
- # **Related Resources**
14148
+ # The following operations are related to `SelectObjectContent`:
13986
14149
  #
13987
14150
  # * [GetObject][4]
13988
14151
  #
@@ -14389,7 +14552,7 @@ module Aws::S3
14389
14552
  #
14390
14553
  # * x-amz-server-side-encryption-customer-key-MD5
14391
14554
  #
14392
- # **Special Errors**
14555
+ # `UploadPart` has the following special errors:
14393
14556
  #
14394
14557
  # * * *Code: NoSuchUpload*
14395
14558
  #
@@ -14401,7 +14564,7 @@ module Aws::S3
14401
14564
  #
14402
14565
  # * *SOAP Fault Code Prefix: Client*
14403
14566
  #
14404
- # **Related Resources**
14567
+ # The following operations are related to `UploadPart`:
14405
14568
  #
14406
14569
  # * [CreateMultipartUpload][2]
14407
14570
  #
@@ -14717,42 +14880,41 @@ module Aws::S3
14717
14880
  #
14718
14881
  # Amazon S3 returns `412 Precondition Failed` response code.
14719
14882
  #
14720
- # **Versioning**
14883
+ # Versioning
14721
14884
  #
14722
- # If your bucket has versioning enabled, you could have multiple
14723
- # versions of the same object. By default, `x-amz-copy-source`
14724
- # identifies the current version of the object to copy. If the current
14725
- # version is a delete marker and you don't specify a versionId in the
14726
- # `x-amz-copy-source`, Amazon S3 returns a 404 error, because the object
14727
- # does not exist. If you specify versionId in the `x-amz-copy-source`
14728
- # and the versionId is a delete marker, Amazon S3 returns an HTTP 400
14729
- # error, because you are not allowed to specify a delete marker as a
14730
- # version for the `x-amz-copy-source`.
14885
+ # : If your bucket has versioning enabled, you could have multiple
14886
+ # versions of the same object. By default, `x-amz-copy-source`
14887
+ # identifies the current version of the object to copy. If the current
14888
+ # version is a delete marker and you don't specify a versionId in the
14889
+ # `x-amz-copy-source`, Amazon S3 returns a 404 error, because the
14890
+ # object does not exist. If you specify versionId in the
14891
+ # `x-amz-copy-source` and the versionId is a delete marker, Amazon S3
14892
+ # returns an HTTP 400 error, because you are not allowed to specify a
14893
+ # delete marker as a version for the `x-amz-copy-source`.
14731
14894
  #
14732
- # You can optionally specify a specific version of the source object to
14733
- # copy by adding the `versionId` subresource as shown in the following
14734
- # example:
14895
+ # You can optionally specify a specific version of the source object
14896
+ # to copy by adding the `versionId` subresource as shown in the
14897
+ # following example:
14735
14898
  #
14736
- # `x-amz-copy-source: /bucket/object?versionId=version id`
14899
+ # `x-amz-copy-source: /bucket/object?versionId=version id`
14737
14900
  #
14738
- # **Special Errors**
14901
+ # Special errors
14902
+ # : * * *Code: NoSuchUpload*
14739
14903
  #
14740
- # * * *Code: NoSuchUpload*
14741
- #
14742
- # * *Cause: The specified multipart upload does not exist. The upload
14743
- # ID might be invalid, or the multipart upload might have been
14744
- # aborted or completed.*
14904
+ # * *Cause: The specified multipart upload does not exist. The
14905
+ # upload ID might be invalid, or the multipart upload might have
14906
+ # been aborted or completed.*
14745
14907
  #
14746
- # * *HTTP Status Code: 404 Not Found*
14908
+ # * *HTTP Status Code: 404 Not Found*
14747
14909
  #
14748
- # * * *Code: InvalidRequest*
14910
+ # * * *Code: InvalidRequest*
14749
14911
  #
14750
- # * *Cause: The specified copy source is not supported as a byte-range
14751
- # copy source.*
14912
+ # * *Cause: The specified copy source is not supported as a
14913
+ # byte-range copy source.*
14752
14914
  #
14753
- # * *HTTP Status Code: 400 Bad Request*
14915
+ # * *HTTP Status Code: 400 Bad Request*
14754
14916
  #
14755
- # **Related Resources**
14917
+ # The following operations are related to `UploadPartCopy`:
14756
14918
  #
14757
14919
  # * [CreateMultipartUpload][7]
14758
14920
  #
@@ -15108,9 +15270,7 @@ module Aws::S3
15108
15270
  #
15109
15271
  # @option params [Integer] :status_code
15110
15272
  # The integer status code for an HTTP response of a corresponding
15111
- # `GetObject` request.
15112
- #
15113
- # **Status Codes**
15273
+ # `GetObject` request. The following is a list of status codes.
15114
15274
  #
15115
15275
  # * `200 - OK`
15116
15276
  #
@@ -15408,7 +15568,7 @@ module Aws::S3
15408
15568
  # sse_customer_algorithm: "SSECustomerAlgorithm",
15409
15569
  # ssekms_key_id: "SSEKMSKeyId",
15410
15570
  # sse_customer_key_md5: "SSECustomerKeyMD5",
15411
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
15571
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW
15412
15572
  # tag_count: 1,
15413
15573
  # version_id: "ObjectVersionId",
15414
15574
  # bucket_key_enabled: false,
@@ -15436,7 +15596,7 @@ module Aws::S3
15436
15596
  params: params,
15437
15597
  config: config)
15438
15598
  context[:gem_name] = 'aws-sdk-s3'
15439
- context[:gem_version] = '1.120.1'
15599
+ context[:gem_version] = '1.122.0'
15440
15600
  Seahorse::Client::Request.new(handlers, context)
15441
15601
  end
15442
15602