aws-sdk-s3 1.120.1 → 1.122.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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