aws-sdk-s3 1.157.0 → 1.158.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -544,12 +544,20 @@ module Aws::S3
544
544
  # for the part storage, you should call the [ListParts][1] API operation
545
545
  # and ensure that the parts list is empty.
546
546
  #
547
- # <note markdown="1"> **Directory buckets** - For directory buckets, you must make requests
548
- # for this API operation to the Zonal endpoint. These endpoints support
549
- # virtual-hosted-style requests in the format
550
- # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name `.
551
- # Path-style requests are not supported. For more information, see
552
- # [Regional and Zonal endpoints][2] in the *Amazon S3 User Guide*.
547
+ # <note markdown="1"> * **Directory buckets** - If multipart uploads in a directory bucket
548
+ # are in progress, you can't delete the bucket until all the
549
+ # in-progress multipart uploads are aborted or completed. To delete
550
+ # these in-progress multipart uploads, use the `ListMultipartUploads`
551
+ # operation to list the in-progress multipart uploads in the bucket
552
+ # and use the `AbortMultupartUpload` operation to abort all the
553
+ # in-progress multipart uploads.
554
+ #
555
+ # * **Directory buckets** - For directory buckets, you must make
556
+ # requests for this API operation to the Zonal endpoint. These
557
+ # endpoints support virtual-hosted-style requests in the format
558
+ # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name
559
+ # `. Path-style requests are not supported. For more information, see
560
+ # [Regional and Zonal endpoints][2] in the *Amazon S3 User Guide*.
553
561
  #
554
562
  # </note>
555
563
  #
@@ -1132,12 +1140,20 @@ module Aws::S3
1132
1140
  # between directory buckets, and between general purpose buckets and
1133
1141
  # directory buckets.
1134
1142
  #
1135
- # <note markdown="1"> <b>Directory buckets </b> - For directory buckets, you must make
1136
- # requests for this API operation to the Zonal endpoint. These endpoints
1137
- # support virtual-hosted-style requests in the format
1138
- # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name `.
1139
- # Path-style requests are not supported. For more information, see
1140
- # [Regional and Zonal endpoints][2] in the *Amazon S3 User Guide*.
1143
+ # <note markdown="1"> * Amazon S3 supports copy operations using Multi-Region Access Points
1144
+ # only as a destination when using the Multi-Region Access Point ARN.
1145
+ #
1146
+ # * <b>Directory buckets </b> - For directory buckets, you must make
1147
+ # requests for this API operation to the Zonal endpoint. These
1148
+ # endpoints support virtual-hosted-style requests in the format
1149
+ # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name
1150
+ # `. Path-style requests are not supported. For more information, see
1151
+ # [Regional and Zonal endpoints][2] in the *Amazon S3 User Guide*.
1152
+ #
1153
+ # * VPC endpoints don't support cross-Region requests (including
1154
+ # copies). If you're using VPC endpoints, your source and destination
1155
+ # buckets should be in the same Amazon Web Services Region as your VPC
1156
+ # endpoint.
1141
1157
  #
1142
1158
  # </note>
1143
1159
  #
@@ -4498,6 +4514,15 @@ module Aws::S3
4498
4514
  # * {Types::DeleteObjectOutput#request_charged #request_charged} => String
4499
4515
  #
4500
4516
  #
4517
+ # @example Example: To delete an object (from a non-versioned bucket)
4518
+ #
4519
+ # # The following example deletes an object from a non-versioned bucket.
4520
+ #
4521
+ # resp = client.delete_object({
4522
+ # bucket: "ExampleBucket",
4523
+ # key: "HappyFace.jpg",
4524
+ # })
4525
+ #
4501
4526
  # @example Example: To delete an object
4502
4527
  #
4503
4528
  # # The following example deletes an object from an S3 bucket.
@@ -4511,15 +4536,6 @@ module Aws::S3
4511
4536
  # {
4512
4537
  # }
4513
4538
  #
4514
- # @example Example: To delete an object (from a non-versioned bucket)
4515
- #
4516
- # # The following example deletes an object from a non-versioned bucket.
4517
- #
4518
- # resp = client.delete_object({
4519
- # bucket: "ExampleBucket",
4520
- # key: "HappyFace.jpg",
4521
- # })
4522
- #
4523
4539
  # @example Request syntax with placeholder values
4524
4540
  #
4525
4541
  # resp = client.delete_object({
@@ -4618,35 +4634,35 @@ module Aws::S3
4618
4634
  # * {Types::DeleteObjectTaggingOutput#version_id #version_id} => String
4619
4635
  #
4620
4636
  #
4621
- # @example Example: To remove tag set from an object version
4637
+ # @example Example: To remove tag set from an object
4622
4638
  #
4623
- # # The following example removes tag set associated with the specified object version. The request specifies both the
4624
- # # object key and object version.
4639
+ # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
4640
+ # # operation removes tag set from the latest object version.
4625
4641
  #
4626
4642
  # resp = client.delete_object_tagging({
4627
4643
  # bucket: "examplebucket",
4628
4644
  # key: "HappyFace.jpg",
4629
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
4630
4645
  # })
4631
4646
  #
4632
4647
  # resp.to_h outputs the following:
4633
4648
  # {
4634
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
4649
+ # version_id: "null",
4635
4650
  # }
4636
4651
  #
4637
- # @example Example: To remove tag set from an object
4652
+ # @example Example: To remove tag set from an object version
4638
4653
  #
4639
- # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
4640
- # # operation removes tag set from the latest object version.
4654
+ # # The following example removes tag set associated with the specified object version. The request specifies both the
4655
+ # # object key and object version.
4641
4656
  #
4642
4657
  # resp = client.delete_object_tagging({
4643
4658
  # bucket: "examplebucket",
4644
4659
  # key: "HappyFace.jpg",
4660
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
4645
4661
  # })
4646
4662
  #
4647
4663
  # resp.to_h outputs the following:
4648
4664
  # {
4649
- # version_id: "null",
4665
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
4650
4666
  # }
4651
4667
  #
4652
4668
  # @example Request syntax with placeholder values
@@ -7704,49 +7720,49 @@ module Aws::S3
7704
7720
  # * {Types::GetObjectOutput#object_lock_legal_hold_status #object_lock_legal_hold_status} => String
7705
7721
  #
7706
7722
  #
7707
- # @example Example: To retrieve a byte range of an object
7723
+ # @example Example: To retrieve an object
7708
7724
  #
7709
- # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
7710
- # # specific byte range.
7725
+ # # The following example retrieves an object for an S3 bucket.
7711
7726
  #
7712
7727
  # resp = client.get_object({
7713
7728
  # bucket: "examplebucket",
7714
- # key: "SampleFile.txt",
7715
- # range: "bytes=0-9",
7729
+ # key: "HappyFace.jpg",
7716
7730
  # })
7717
7731
  #
7718
7732
  # resp.to_h outputs the following:
7719
7733
  # {
7720
7734
  # accept_ranges: "bytes",
7721
- # content_length: 10,
7722
- # content_range: "bytes 0-9/43",
7723
- # content_type: "text/plain",
7724
- # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
7725
- # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
7735
+ # content_length: 3191,
7736
+ # content_type: "image/jpeg",
7737
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
7738
+ # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
7726
7739
  # metadata: {
7727
7740
  # },
7741
+ # tag_count: 2,
7728
7742
  # version_id: "null",
7729
7743
  # }
7730
7744
  #
7731
- # @example Example: To retrieve an object
7745
+ # @example Example: To retrieve a byte range of an object
7732
7746
  #
7733
- # # The following example retrieves an object for an S3 bucket.
7747
+ # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
7748
+ # # specific byte range.
7734
7749
  #
7735
7750
  # resp = client.get_object({
7736
7751
  # bucket: "examplebucket",
7737
- # key: "HappyFace.jpg",
7752
+ # key: "SampleFile.txt",
7753
+ # range: "bytes=0-9",
7738
7754
  # })
7739
7755
  #
7740
7756
  # resp.to_h outputs the following:
7741
7757
  # {
7742
7758
  # accept_ranges: "bytes",
7743
- # content_length: 3191,
7744
- # content_type: "image/jpeg",
7745
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
7746
- # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
7759
+ # content_length: 10,
7760
+ # content_range: "bytes 0-9/43",
7761
+ # content_type: "text/plain",
7762
+ # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
7763
+ # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
7747
7764
  # metadata: {
7748
7765
  # },
7749
- # tag_count: 2,
7750
7766
  # version_id: "null",
7751
7767
  # }
7752
7768
  #
@@ -8997,29 +9013,24 @@ module Aws::S3
8997
9013
  # have permission to access it. The action returns a `200 OK` if the
8998
9014
  # bucket exists and you have permission to access it.
8999
9015
  #
9000
- # If the bucket does not exist or you do not have permission to access
9016
+ # <note markdown="1"> If the bucket does not exist or you do not have permission to access
9001
9017
  # it, the `HEAD` request returns a generic `400 Bad Request`, `403
9002
9018
  # Forbidden` or `404 Not Found` code. A message body is not included, so
9003
9019
  # you cannot determine the exception beyond these HTTP response codes.
9004
9020
  #
9005
- # <note markdown="1"> <b>Directory buckets </b> - You must make requests for this API
9006
- # operation to the Zonal endpoint. These endpoints support
9007
- # virtual-hosted-style requests in the format
9008
- # `https://bucket_name.s3express-az_id.region.amazonaws.com`. Path-style
9009
- # requests are not supported. For more information, see [Regional and
9010
- # Zonal endpoints][1] in the *Amazon S3 User Guide*.
9011
- #
9012
9021
  # </note>
9013
9022
  #
9014
9023
  # Authentication and authorization
9015
9024
  #
9016
- # : All `HeadBucket` requests must be authenticated and signed by using
9017
- # IAM credentials (access key ID and secret access key for the IAM
9018
- # identities). All headers with the `x-amz-` prefix, including
9025
+ # : **General purpose buckets** - Request to public buckets that grant
9026
+ # the s3:ListBucket permission publicly do not need to be signed. All
9027
+ # other `HeadBucket` requests must be authenticated and signed by
9028
+ # using IAM credentials (access key ID and secret access key for the
9029
+ # IAM identities). All headers with the `x-amz-` prefix, including
9019
9030
  # `x-amz-copy-source`, must be signed. For more information, see [REST
9020
- # Authentication][2].
9031
+ # Authentication][1].
9021
9032
  #
9022
- # **Directory bucket** - You must use IAM credentials to authenticate
9033
+ # **Directory buckets** - You must use IAM credentials to authenticate
9023
9034
  # and authorize your access to the `HeadBucket` API operation, instead
9024
9035
  # of using the temporary security credentials through the
9025
9036
  # `CreateSession` API operation.
@@ -9035,7 +9046,7 @@ module Aws::S3
9035
9046
  # you must have permissions to perform the `s3:ListBucket` action.
9036
9047
  # The bucket owner has this permission by default and can grant this
9037
9048
  # permission to others. For more information about permissions, see
9038
- # [Managing access permissions to your Amazon S3 resources][3] in
9049
+ # [Managing access permissions to your Amazon S3 resources][2] in
9039
9050
  # the *Amazon S3 User Guide*.
9040
9051
  #
9041
9052
  # * **Directory bucket permissions** - You must have the <b>
@@ -9046,9 +9057,9 @@ module Aws::S3
9046
9057
  # `ReadOnly` on the bucket.
9047
9058
  #
9048
9059
  # For more information about example bucket policies, see [Example
9049
- # bucket policies for S3 Express One Zone][4] and [Amazon Web
9060
+ # bucket policies for S3 Express One Zone][3] and [Amazon Web
9050
9061
  # Services Identity and Access Management (IAM) identity-based
9051
- # policies for S3 Express One Zone][5] in the *Amazon S3 User
9062
+ # policies for S3 Express One Zone][4] in the *Amazon S3 User
9052
9063
  # Guide*.
9053
9064
  #
9054
9065
  # HTTP Host header syntax
@@ -9056,13 +9067,21 @@ module Aws::S3
9056
9067
  # : <b>Directory buckets </b> - The HTTP Host header syntax is `
9057
9068
  # Bucket_name.s3express-az_id.region.amazonaws.com`.
9058
9069
  #
9070
+ # <note markdown="1"> You must make requests for this API operation to the Zonal endpoint.
9071
+ # These endpoints support virtual-hosted-style requests in the format
9072
+ # `https://bucket_name.s3express-az_id.region.amazonaws.com`.
9073
+ # Path-style requests are not supported. For more information, see
9074
+ # [Regional and Zonal endpoints][5] in the *Amazon S3 User Guide*.
9059
9075
  #
9076
+ # </note>
9060
9077
  #
9061
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
9062
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
9063
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
9064
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html
9065
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html
9078
+ #
9079
+ #
9080
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
9081
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
9082
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html
9083
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html
9084
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
9066
9085
  #
9067
9086
  # @option params [required, String] :bucket
9068
9087
  # The bucket name.
@@ -9170,7 +9189,7 @@ module Aws::S3
9170
9189
  # returning the object itself. This operation is useful if you're
9171
9190
  # interested only in an object's metadata.
9172
9191
  #
9173
- # A `HEAD` request has the same options as a `GET` operation on an
9192
+ # <note markdown="1"> A `HEAD` request has the same options as a `GET` operation on an
9174
9193
  # object. The response is identical to the `GET` response except that
9175
9194
  # there is no response body. Because of this, if the `HEAD` request
9176
9195
  # generates an error, it returns a generic code, such as `400 Bad
@@ -9178,18 +9197,11 @@ module Aws::S3
9178
9197
  # `412 Precondition Failed`, or `304 Not Modified`. It's not possible
9179
9198
  # to retrieve the exact exception of these error codes.
9180
9199
  #
9200
+ # </note>
9201
+ #
9181
9202
  # Request headers are limited to 8 KB in size. For more information, see
9182
9203
  # [Common Request Headers][1].
9183
9204
  #
9184
- # <note markdown="1"> **Directory buckets** - For directory buckets, you must make requests
9185
- # for this API operation to the Zonal endpoint. These endpoints support
9186
- # virtual-hosted-style requests in the format
9187
- # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name `.
9188
- # Path-style requests are not supported. For more information, see
9189
- # [Regional and Zonal endpoints][2] in the *Amazon S3 User Guide*.
9190
- #
9191
- # </note>
9192
- #
9193
9205
  # Permissions
9194
9206
  #
9195
9207
  # :
@@ -9198,7 +9210,7 @@ module Aws::S3
9198
9210
  # have the `s3:GetObject` permission. You need the relevant read
9199
9211
  # object (or version) permission for this operation. For more
9200
9212
  # information, see [Actions, resources, and condition keys for
9201
- # Amazon S3][3] in the *Amazon S3 User Guide*.
9213
+ # Amazon S3][2] in the *Amazon S3 User Guide*.
9202
9214
  #
9203
9215
  # If the object you request doesn't exist, the error that Amazon S3
9204
9216
  # returns depends on whether you also have the `s3:ListBucket`
@@ -9212,7 +9224,7 @@ module Aws::S3
9212
9224
  #
9213
9225
  # * **Directory bucket permissions** - To grant access to this API
9214
9226
  # operation on a directory bucket, we recommend that you use the [
9215
- # `CreateSession` ][4] API operation for session-based
9227
+ # `CreateSession` ][3] API operation for session-based
9216
9228
  # authorization. Specifically, you grant the
9217
9229
  # `s3express:CreateSession` permission to the directory bucket in a
9218
9230
  # bucket policy or an IAM identity-based policy. Then, you make the
@@ -9223,7 +9235,7 @@ module Aws::S3
9223
9235
  # token for use. Amazon Web Services CLI or SDKs create session and
9224
9236
  # refresh the session token automatically to avoid service
9225
9237
  # interruptions when a session expires. For more information about
9226
- # authorization, see [ `CreateSession` ][4].
9238
+ # authorization, see [ `CreateSession` ][3].
9227
9239
  #
9228
9240
  # Encryption
9229
9241
  # : <note markdown="1"> Encryption request headers, like `x-amz-server-side-encryption`,
@@ -9255,7 +9267,7 @@ module Aws::S3
9255
9267
  # * `x-amz-server-side-encryption-customer-key-MD5`
9256
9268
  #
9257
9269
  # For more information about SSE-C, see [Server-Side Encryption (Using
9258
- # Customer-Provided Encryption Keys)][5] in the *Amazon S3 User
9270
+ # Customer-Provided Encryption Keys)][4] in the *Amazon S3 User
9259
9271
  # Guide*.
9260
9272
  #
9261
9273
  # <note markdown="1"> **Directory bucket permissions** - For directory buckets, only
@@ -9289,6 +9301,15 @@ module Aws::S3
9289
9301
  # : <b>Directory buckets </b> - The HTTP Host header syntax is `
9290
9302
  # Bucket_name.s3express-az_id.region.amazonaws.com`.
9291
9303
  #
9304
+ # <note markdown="1"> For directory buckets, you must make requests for this API operation
9305
+ # to the Zonal endpoint. These endpoints support virtual-hosted-style
9306
+ # requests in the format
9307
+ # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name
9308
+ # `. Path-style requests are not supported. For more information, see
9309
+ # [Regional and Zonal endpoints][5] in the *Amazon S3 User Guide*.
9310
+ #
9311
+ # </note>
9312
+ #
9292
9313
  # The following actions are related to `HeadObject`:
9293
9314
  #
9294
9315
  # * [GetObject][6]
@@ -9298,10 +9319,10 @@ module Aws::S3
9298
9319
  #
9299
9320
  #
9300
9321
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html
9301
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
9302
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html
9303
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
9304
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
9322
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html
9323
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
9324
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
9325
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
9305
9326
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
9306
9327
  # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
9307
9328
  #
@@ -10076,10 +10097,28 @@ module Aws::S3
10076
10097
  #
10077
10098
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html
10078
10099
  #
10100
+ # @option params [Integer] :max_buckets
10101
+ # Maximum number of buckets to be returned in response. When the number
10102
+ # is more than the count of buckets that are owned by an Amazon Web
10103
+ # Services account, return all the buckets in response.
10104
+ #
10105
+ # @option params [String] :continuation_token
10106
+ # `ContinuationToken` indicates to Amazon S3 that the list is being
10107
+ # continued on this bucket with a token. `ContinuationToken` is
10108
+ # obfuscated and is not a real key. You can use this `ContinuationToken`
10109
+ # for pagination of the list results.
10110
+ #
10111
+ # Length Constraints: Minimum length of 0. Maximum length of 1024.
10112
+ #
10113
+ # Required: No.
10114
+ #
10079
10115
  # @return [Types::ListBucketsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10080
10116
  #
10081
10117
  # * {Types::ListBucketsOutput#buckets #buckets} => Array&lt;Types::Bucket&gt;
10082
10118
  # * {Types::ListBucketsOutput#owner #owner} => Types::Owner
10119
+ # * {Types::ListBucketsOutput#continuation_token #continuation_token} => String
10120
+ #
10121
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
10083
10122
  #
10084
10123
  #
10085
10124
  # @example Example: To list all buckets
@@ -10111,6 +10150,13 @@ module Aws::S3
10111
10150
  # },
10112
10151
  # }
10113
10152
  #
10153
+ # @example Request syntax with placeholder values
10154
+ #
10155
+ # resp = client.list_buckets({
10156
+ # max_buckets: 1,
10157
+ # continuation_token: "Token",
10158
+ # })
10159
+ #
10114
10160
  # @example Response structure
10115
10161
  #
10116
10162
  # resp.buckets #=> Array
@@ -10118,6 +10164,7 @@ module Aws::S3
10118
10164
  # resp.buckets[0].creation_date #=> Time
10119
10165
  # resp.owner.display_name #=> String
10120
10166
  # resp.owner.id #=> String
10167
+ # resp.continuation_token #=> String
10121
10168
  #
10122
10169
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBuckets AWS API Documentation
10123
10170
  #
@@ -10166,9 +10213,9 @@ module Aws::S3
10166
10213
  #
10167
10214
  # @option params [String] :continuation_token
10168
10215
  # `ContinuationToken` indicates to Amazon S3 that the list is being
10169
- # continued on this bucket with a token. `ContinuationToken` is
10170
- # obfuscated and is not a real key. You can use this `ContinuationToken`
10171
- # for pagination of the list results.
10216
+ # continued on buckets in this account with a token. `ContinuationToken`
10217
+ # is obfuscated and is not a real bucket name. You can use this
10218
+ # `ContinuationToken` for the pagination of the list results.
10172
10219
  #
10173
10220
  # @option params [Integer] :max_directory_buckets
10174
10221
  # Maximum number of buckets to be returned in response. When the number
@@ -10212,7 +10259,11 @@ module Aws::S3
10212
10259
  #
10213
10260
  # <note markdown="1"> **Directory buckets** - If multipart uploads in a directory bucket are
10214
10261
  # in progress, you can't delete the bucket until all the in-progress
10215
- # multipart uploads are aborted or completed.
10262
+ # multipart uploads are aborted or completed. To delete these
10263
+ # in-progress multipart uploads, use the `ListMultipartUploads`
10264
+ # operation to list the in-progress multipart uploads in the bucket and
10265
+ # use the `AbortMultupartUpload` operation to abort all the in-progress
10266
+ # multipart uploads.
10216
10267
  #
10217
10268
  # </note>
10218
10269
  #
@@ -10378,12 +10429,26 @@ module Aws::S3
10378
10429
  # </note>
10379
10430
  #
10380
10431
  # @option params [String] :encoding_type
10381
- # Requests Amazon S3 to encode the object keys in the response and
10382
- # specifies the encoding method to use. An object key can contain any
10383
- # Unicode character; however, the XML 1.0 parser cannot parse some
10384
- # characters, such as characters with an ASCII value from 0 to 10. For
10385
- # characters that are not supported in XML 1.0, you can add this
10386
- # parameter to request that Amazon S3 encode the keys in the response.
10432
+ # Encoding type used by Amazon S3 to encode the [object keys][1] in the
10433
+ # response. Responses are encoded only in UTF-8. An object key can
10434
+ # contain any Unicode character. However, the XML 1.0 parser can't
10435
+ # parse certain characters, such as characters with an ASCII value from
10436
+ # 0 to 10. For characters that aren't supported in XML 1.0, you can add
10437
+ # this parameter to request that Amazon S3 encode the keys in the
10438
+ # response. For more information about characters to avoid in object key
10439
+ # names, see [Object key naming guidelines][2].
10440
+ #
10441
+ # <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
10442
+ # in an object's key name will be percent-encoded according to UTF-8
10443
+ # code values. For example, the object `test_file(3).png` will appear as
10444
+ # `test_file%283%29.png`.
10445
+ #
10446
+ # </note>
10447
+ #
10448
+ #
10449
+ #
10450
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
10451
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
10387
10452
  #
10388
10453
  # @option params [String] :key_marker
10389
10454
  # Specifies the multipart upload after which listing should begin.
@@ -10675,12 +10740,26 @@ module Aws::S3
10675
10740
  # the response.
10676
10741
  #
10677
10742
  # @option params [String] :encoding_type
10678
- # Requests Amazon S3 to encode the object keys in the response and
10679
- # specifies the encoding method to use. An object key can contain any
10680
- # Unicode character; however, the XML 1.0 parser cannot parse some
10681
- # characters, such as characters with an ASCII value from 0 to 10. For
10682
- # characters that are not supported in XML 1.0, you can add this
10683
- # parameter to request that Amazon S3 encode the keys in the response.
10743
+ # Encoding type used by Amazon S3 to encode the [object keys][1] in the
10744
+ # response. Responses are encoded only in UTF-8. An object key can
10745
+ # contain any Unicode character. However, the XML 1.0 parser can't
10746
+ # parse certain characters, such as characters with an ASCII value from
10747
+ # 0 to 10. For characters that aren't supported in XML 1.0, you can add
10748
+ # this parameter to request that Amazon S3 encode the keys in the
10749
+ # response. For more information about characters to avoid in object key
10750
+ # names, see [Object key naming guidelines][2].
10751
+ #
10752
+ # <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
10753
+ # in an object's key name will be percent-encoded according to UTF-8
10754
+ # code values. For example, the object `test_file(3).png` will appear as
10755
+ # `test_file%283%29.png`.
10756
+ #
10757
+ # </note>
10758
+ #
10759
+ #
10760
+ #
10761
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
10762
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
10684
10763
  #
10685
10764
  # @option params [String] :key_marker
10686
10765
  # Specifies the key to start with when listing objects in a bucket.
@@ -10934,12 +11013,26 @@ module Aws::S3
10934
11013
  # A delimiter is a character that you use to group keys.
10935
11014
  #
10936
11015
  # @option params [String] :encoding_type
10937
- # Requests Amazon S3 to encode the object keys in the response and
10938
- # specifies the encoding method to use. An object key can contain any
10939
- # Unicode character; however, the XML 1.0 parser cannot parse some
10940
- # characters, such as characters with an ASCII value from 0 to 10. For
10941
- # characters that are not supported in XML 1.0, you can add this
10942
- # parameter to request that Amazon S3 encode the keys in the response.
11016
+ # Encoding type used by Amazon S3 to encode the [object keys][1] in the
11017
+ # response. Responses are encoded only in UTF-8. An object key can
11018
+ # contain any Unicode character. However, the XML 1.0 parser can't
11019
+ # parse certain characters, such as characters with an ASCII value from
11020
+ # 0 to 10. For characters that aren't supported in XML 1.0, you can add
11021
+ # this parameter to request that Amazon S3 encode the keys in the
11022
+ # response. For more information about characters to avoid in object key
11023
+ # names, see [Object key naming guidelines][2].
11024
+ #
11025
+ # <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
11026
+ # in an object's key name will be percent-encoded according to UTF-8
11027
+ # code values. For example, the object `test_file(3).png` will appear as
11028
+ # `test_file%283%29.png`.
11029
+ #
11030
+ # </note>
11031
+ #
11032
+ #
11033
+ #
11034
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
11035
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
10943
11036
  #
10944
11037
  # @option params [String] :marker
10945
11038
  # Marker is where you want Amazon S3 to start listing from. Amazon S3
@@ -11081,12 +11174,20 @@ module Aws::S3
11081
11174
  # programmatically][1] in the *Amazon S3 User Guide*. To get a list of
11082
11175
  # your buckets, see [ListBuckets][2].
11083
11176
  #
11084
- # <note markdown="1"> **Directory buckets** - For directory buckets, you must make requests
11085
- # for this API operation to the Zonal endpoint. These endpoints support
11086
- # virtual-hosted-style requests in the format
11087
- # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name `.
11088
- # Path-style requests are not supported. For more information, see
11089
- # [Regional and Zonal endpoints][3] in the *Amazon S3 User Guide*.
11177
+ # <note markdown="1"> * **General purpose bucket** - For general purpose buckets,
11178
+ # `ListObjectsV2` doesn't return prefixes that are related only to
11179
+ # in-progress multipart uploads.
11180
+ #
11181
+ # * **Directory buckets** - For directory buckets, `ListObjectsV2`
11182
+ # response includes the prefixes that are related only to in-progress
11183
+ # multipart uploads.
11184
+ #
11185
+ # * **Directory buckets** - For directory buckets, you must make
11186
+ # requests for this API operation to the Zonal endpoint. These
11187
+ # endpoints support virtual-hosted-style requests in the format
11188
+ # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name
11189
+ # `. Path-style requests are not supported. For more information, see
11190
+ # [Regional and Zonal endpoints][3] in the *Amazon S3 User Guide*.
11090
11191
  #
11091
11192
  # </note>
11092
11193
  #
@@ -11215,10 +11316,26 @@ module Aws::S3
11215
11316
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html
11216
11317
  #
11217
11318
  # @option params [String] :encoding_type
11218
- # Encoding type used by Amazon S3 to encode object keys in the response.
11219
- # If using `url`, non-ASCII characters used in an object's key name
11220
- # will be URL encoded. For example, the object `test_file(3).png` will
11221
- # appear as `test_file%283%29.png`.
11319
+ # Encoding type used by Amazon S3 to encode the [object keys][1] in the
11320
+ # response. Responses are encoded only in UTF-8. An object key can
11321
+ # contain any Unicode character. However, the XML 1.0 parser can't
11322
+ # parse certain characters, such as characters with an ASCII value from
11323
+ # 0 to 10. For characters that aren't supported in XML 1.0, you can add
11324
+ # this parameter to request that Amazon S3 encode the keys in the
11325
+ # response. For more information about characters to avoid in object key
11326
+ # names, see [Object key naming guidelines][2].
11327
+ #
11328
+ # <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
11329
+ # in an object's key name will be percent-encoded according to UTF-8
11330
+ # code values. For example, the object `test_file(3).png` will appear as
11331
+ # `test_file%283%29.png`.
11332
+ #
11333
+ # </note>
11334
+ #
11335
+ #
11336
+ #
11337
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
11338
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
11222
11339
  #
11223
11340
  # @option params [Integer] :max_keys
11224
11341
  # Sets the maximum number of keys returned in the response. By default,
@@ -12437,9 +12554,15 @@ module Aws::S3
12437
12554
  # S3 does not validate the KMS key ID provided in PutBucketEncryption
12438
12555
  # requests.
12439
12556
  #
12440
- # This action requires Amazon Web Services Signature Version 4. For more
12441
- # information, see [ Authenticating Requests (Amazon Web Services
12442
- # Signature Version 4)][3].
12557
+ # If you're specifying a customer managed KMS key, we recommend using a
12558
+ # fully qualified KMS key ARN. If you use a KMS key alias instead, then
12559
+ # KMS resolves the key within the requester’s account. This behavior can
12560
+ # result in data that's encrypted with a KMS key that belongs to the
12561
+ # requester, and not the bucket owner.
12562
+ #
12563
+ # Also, this action requires Amazon Web Services Signature Version 4.
12564
+ # For more information, see [ Authenticating Requests (Amazon Web
12565
+ # Services Signature Version 4)][3].
12443
12566
  #
12444
12567
  # To use this operation, you must have permission to perform the
12445
12568
  # `s3:PutEncryptionConfiguration` action. The bucket owner has this
@@ -14507,6 +14630,14 @@ module Aws::S3
14507
14630
  #
14508
14631
  # </note>
14509
14632
  #
14633
+ # <note markdown="1"> When you enable versioning on a bucket for the first time, it might
14634
+ # take a short amount of time for the change to be fully propagated. We
14635
+ # recommend that you wait for 15 minutes after enabling versioning
14636
+ # before issuing write operations (`PUT` or `DELETE`) on objects in the
14637
+ # bucket.
14638
+ #
14639
+ # </note>
14640
+ #
14510
14641
  # Sets the versioning state of an existing bucket.
14511
14642
  #
14512
14643
  # You can set the versioning state with one of the following values:
@@ -15445,61 +15576,78 @@ module Aws::S3
15445
15576
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
15446
15577
  #
15447
15578
  #
15448
- # @example Example: To upload an object
15579
+ # @example Example: To create an object.
15449
15580
  #
15450
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
15451
- # # syntax. S3 returns VersionId of the newly created object.
15581
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
15582
+ #
15583
+ # resp = client.put_object({
15584
+ # body: "filetoupload",
15585
+ # bucket: "examplebucket",
15586
+ # key: "objectkey",
15587
+ # })
15588
+ #
15589
+ # resp.to_h outputs the following:
15590
+ # {
15591
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15592
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
15593
+ # }
15594
+ #
15595
+ # @example Example: To upload an object (specify optional headers)
15596
+ #
15597
+ # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
15598
+ # # storage class and use server-side encryption.
15452
15599
  #
15453
15600
  # resp = client.put_object({
15454
15601
  # body: "HappyFace.jpg",
15455
15602
  # bucket: "examplebucket",
15456
15603
  # key: "HappyFace.jpg",
15604
+ # server_side_encryption: "AES256",
15605
+ # storage_class: "STANDARD_IA",
15457
15606
  # })
15458
15607
  #
15459
15608
  # resp.to_h outputs the following:
15460
15609
  # {
15461
15610
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15462
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
15611
+ # server_side_encryption: "AES256",
15612
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
15463
15613
  # }
15464
15614
  #
15465
- # @example Example: To upload an object and specify server-side encryption and object tags
15615
+ # @example Example: To upload an object and specify canned ACL.
15466
15616
  #
15467
- # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
15468
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
15617
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
15618
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
15469
15619
  #
15470
15620
  # resp = client.put_object({
15621
+ # acl: "authenticated-read",
15471
15622
  # body: "filetoupload",
15472
15623
  # bucket: "examplebucket",
15473
15624
  # key: "exampleobject",
15474
- # server_side_encryption: "AES256",
15475
- # tagging: "key1=value1&key2=value2",
15476
15625
  # })
15477
15626
  #
15478
15627
  # resp.to_h outputs the following:
15479
15628
  # {
15480
15629
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15481
- # server_side_encryption: "AES256",
15482
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
15630
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
15483
15631
  # }
15484
15632
  #
15485
- # @example Example: To upload an object (specify optional headers)
15633
+ # @example Example: To upload an object and specify server-side encryption and object tags
15486
15634
  #
15487
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
15488
- # # storage class and use server-side encryption.
15635
+ # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
15636
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
15489
15637
  #
15490
15638
  # resp = client.put_object({
15491
- # body: "HappyFace.jpg",
15639
+ # body: "filetoupload",
15492
15640
  # bucket: "examplebucket",
15493
- # key: "HappyFace.jpg",
15641
+ # key: "exampleobject",
15494
15642
  # server_side_encryption: "AES256",
15495
- # storage_class: "STANDARD_IA",
15643
+ # tagging: "key1=value1&key2=value2",
15496
15644
  # })
15497
15645
  #
15498
15646
  # resp.to_h outputs the following:
15499
15647
  # {
15500
15648
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15501
15649
  # server_side_encryption: "AES256",
15502
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
15650
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
15503
15651
  # }
15504
15652
  #
15505
15653
  # @example Example: To upload object and specify user-defined metadata
@@ -15523,56 +15671,39 @@ module Aws::S3
15523
15671
  # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
15524
15672
  # }
15525
15673
  #
15526
- # @example Example: To upload an object and specify optional tags
15674
+ # @example Example: To upload an object
15527
15675
  #
15528
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
15529
- # # S3 returns version ID of the newly created object.
15676
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
15677
+ # # syntax. S3 returns VersionId of the newly created object.
15530
15678
  #
15531
15679
  # resp = client.put_object({
15532
- # body: "c:\\HappyFace.jpg",
15680
+ # body: "HappyFace.jpg",
15533
15681
  # bucket: "examplebucket",
15534
15682
  # key: "HappyFace.jpg",
15535
- # tagging: "key1=value1&key2=value2",
15536
15683
  # })
15537
15684
  #
15538
15685
  # resp.to_h outputs the following:
15539
15686
  # {
15540
15687
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15541
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
15542
- # }
15543
- #
15544
- # @example Example: To upload an object and specify canned ACL.
15545
- #
15546
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
15547
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
15548
- #
15549
- # resp = client.put_object({
15550
- # acl: "authenticated-read",
15551
- # body: "filetoupload",
15552
- # bucket: "examplebucket",
15553
- # key: "exampleobject",
15554
- # })
15555
- #
15556
- # resp.to_h outputs the following:
15557
- # {
15558
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15559
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
15688
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
15560
15689
  # }
15561
15690
  #
15562
- # @example Example: To create an object.
15691
+ # @example Example: To upload an object and specify optional tags
15563
15692
  #
15564
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
15693
+ # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
15694
+ # # S3 returns version ID of the newly created object.
15565
15695
  #
15566
15696
  # resp = client.put_object({
15567
- # body: "filetoupload",
15697
+ # body: "c:\\HappyFace.jpg",
15568
15698
  # bucket: "examplebucket",
15569
- # key: "objectkey",
15699
+ # key: "HappyFace.jpg",
15700
+ # tagging: "key1=value1&key2=value2",
15570
15701
  # })
15571
15702
  #
15572
15703
  # resp.to_h outputs the following:
15573
15704
  # {
15574
15705
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15575
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
15706
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
15576
15707
  # }
15577
15708
  #
15578
15709
  # @example Streaming a file from disk
@@ -18863,7 +18994,7 @@ module Aws::S3
18863
18994
  params: params,
18864
18995
  config: config)
18865
18996
  context[:gem_name] = 'aws-sdk-s3'
18866
- context[:gem_version] = '1.157.0'
18997
+ context[:gem_version] = '1.158.0'
18867
18998
  Seahorse::Client::Request.new(handlers, context)
18868
18999
  end
18869
19000