aws-sdk-s3 1.144.0 → 1.145.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -561,7 +561,7 @@ module Aws::S3
561
561
  # are not supported. Directory bucket names must be unique in the chosen
562
562
  # Availability Zone. Bucket names must follow the format `
563
563
  # bucket_base_name--az-id--x-s3` (for example, `
564
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
564
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
565
565
  # naming restrictions, see [Directory bucket naming rules][1] in the
566
566
  # *Amazon S3 User Guide*.
567
567
  #
@@ -699,8 +699,8 @@ module Aws::S3
699
699
  # error).
700
700
  #
701
701
  # Note that if `CompleteMultipartUpload` fails, applications should be
702
- # prepared to retry the failed requests. For more information, see
703
- # [Amazon S3 Error Best Practices][3].
702
+ # prepared to retry any failed requests (including 500 error responses).
703
+ # For more information, see [Amazon S3 Error Best Practices][3].
704
704
  #
705
705
  # You can't use `Content-Type: application/x-www-form-urlencoded` for
706
706
  # the CompleteMultipartUpload requests. Also, if you don't provide a
@@ -812,7 +812,7 @@ module Aws::S3
812
812
  # are not supported. Directory bucket names must be unique in the chosen
813
813
  # Availability Zone. Bucket names must follow the format `
814
814
  # bucket_base_name--az-id--x-s3` (for example, `
815
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
815
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
816
816
  # naming restrictions, see [Directory bucket naming rules][1] in the
817
817
  # *Amazon S3 User Guide*.
818
818
  #
@@ -1094,11 +1094,14 @@ module Aws::S3
1094
1094
  #
1095
1095
  # Both the Region that you want to copy the object from and the Region
1096
1096
  # that you want to copy the object to must be enabled for your account.
1097
+ # For more information about how to enable a Region for your account,
1098
+ # see [Enable or disable a Region for standalone accounts][3] in the
1099
+ # *Amazon Web Services Account Management Guide*.
1097
1100
  #
1098
1101
  # Amazon S3 transfer acceleration does not support cross-Region copies.
1099
1102
  # If you request a cross-Region copy using a transfer acceleration
1100
1103
  # endpoint, you get a `400 Bad Request` error. For more information, see
1101
- # [Transfer Acceleration][3].
1104
+ # [Transfer Acceleration][4].
1102
1105
  #
1103
1106
  # Authentication and authorization
1104
1107
  #
@@ -1106,7 +1109,7 @@ module Aws::S3
1106
1109
  # IAM credentials (access key ID and secret access key for the IAM
1107
1110
  # identities). All headers with the `x-amz-` prefix, including
1108
1111
  # `x-amz-copy-source`, must be signed. For more information, see [REST
1109
- # Authentication][4].
1112
+ # Authentication][5].
1110
1113
  #
1111
1114
  # **Directory buckets** - You must use the IAM credentials to
1112
1115
  # authenticate and authorize your access to the `CopyObject` API
@@ -1130,7 +1133,7 @@ module Aws::S3
1130
1133
  # source object that is being copied.
1131
1134
  #
1132
1135
  # * If the destination bucket is a general purpose bucket, you must
1133
- # have <b> <code>s3:PubObject</code> </b> permission to write the
1136
+ # have <b> <code>s3:PutObject</code> </b> permission to write the
1134
1137
  # object copy to the destination bucket.
1135
1138
  #
1136
1139
  # * **Directory bucket permissions** - You must have permissions in a
@@ -1152,9 +1155,9 @@ module Aws::S3
1152
1155
  # set to `ReadOnly` on the copy destination bucket.
1153
1156
  #
1154
1157
  # For example policies, see [Example bucket policies for S3 Express
1155
- # One Zone][5] and [Amazon Web Services Identity and Access
1158
+ # One Zone][6] and [Amazon Web Services Identity and Access
1156
1159
  # Management (IAM) identity-based policies for S3 Express One
1157
- # Zone][6] in the *Amazon S3 User Guide*.
1160
+ # Zone][7] in the *Amazon S3 User Guide*.
1158
1161
  #
1159
1162
  # Response and special errors
1160
1163
  #
@@ -1178,14 +1181,13 @@ module Aws::S3
1178
1181
  # response is embedded in the `200 OK` response. For example, in a
1179
1182
  # cross-region copy, you may encounter throttling and receive a
1180
1183
  # `200 OK` response. For more information, see [Resolve the Error
1181
- # 200 response when copying objects to Amazon
1182
- # S3](repost.aws/knowledge-center/s3-resolve-200-internalerror).
1183
- # The `200 OK` status code means the copy was accepted, but it
1184
- # doesn't mean the copy is complete. Another example is when you
1185
- # disconnect from Amazon S3 before the copy is complete, Amazon S3
1186
- # might cancel the copy and you may receive a `200 OK` response.
1187
- # You must stay connected to Amazon S3 until the entire response
1188
- # is successfully received and processed.
1184
+ # 200 response when copying objects to Amazon S3][8]. The `200 OK`
1185
+ # status code means the copy was accepted, but it doesn't mean
1186
+ # the copy is complete. Another example is when you disconnect
1187
+ # from Amazon S3 before the copy is complete, Amazon S3 might
1188
+ # cancel the copy and you may receive a `200 OK` response. You
1189
+ # must stay connected to Amazon S3 until the entire response is
1190
+ # successfully received and processed.
1189
1191
  #
1190
1192
  # If you call this API operation directly, make sure to design
1191
1193
  # your application to parse the content of the response and handle
@@ -1201,8 +1203,9 @@ module Aws::S3
1201
1203
  # : The copy request charge is based on the storage class and Region
1202
1204
  # that you specify for the destination object. The request can also
1203
1205
  # result in a data retrieval charge for the source if the source
1204
- # storage class bills for data retrieval. For pricing information, see
1205
- # [Amazon S3 pricing][7].
1206
+ # storage class bills for data retrieval. If the copy source is in a
1207
+ # different region, the data transfer is billed to the copy source
1208
+ # account. For pricing information, see [Amazon S3 pricing][9].
1206
1209
  #
1207
1210
  # HTTP Host header syntax
1208
1211
  #
@@ -1211,21 +1214,23 @@ module Aws::S3
1211
1214
  #
1212
1215
  # The following operations are related to `CopyObject`:
1213
1216
  #
1214
- # * [PutObject][8]
1217
+ # * [PutObject][10]
1215
1218
  #
1216
- # * [GetObject][9]
1219
+ # * [GetObject][11]
1217
1220
  #
1218
1221
  #
1219
1222
  #
1220
1223
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html
1221
1224
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
1222
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html
1223
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
1224
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html
1225
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html
1226
- # [7]: http://aws.amazon.com/s3/pricing/
1227
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1228
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
1225
+ # [3]: https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html#manage-acct-regions-enable-standalone
1226
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html
1227
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
1228
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html
1229
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html
1230
+ # [8]: https://repost.aws/knowledge-center/s3-resolve-200-internalerror
1231
+ # [9]: http://aws.amazon.com/s3/pricing/
1232
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1233
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
1229
1234
  #
1230
1235
  # @option params [String] :acl
1231
1236
  # The canned access control list (ACL) to apply to the object.
@@ -1269,7 +1274,7 @@ module Aws::S3
1269
1274
  # are not supported. Directory bucket names must be unique in the chosen
1270
1275
  # Availability Zone. Bucket names must follow the format `
1271
1276
  # bucket_base_name--az-id--x-s3` (for example, `
1272
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
1277
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
1273
1278
  # naming restrictions, see [Directory bucket naming rules][1] in the
1274
1279
  # *Amazon S3 User Guide*.
1275
1280
  #
@@ -2092,22 +2097,31 @@ module Aws::S3
2092
2097
  # includes the `x-amz-object-ownership` header, then the
2093
2098
  # `s3:PutBucketOwnershipControls` permission is required.
2094
2099
  #
2095
- # If your `CreateBucket` request sets `BucketOwnerEnforced` for
2096
- # Amazon S3 Object Ownership and specifies a bucket ACL that
2097
- # provides access to an external Amazon Web Services account, your
2098
- # request fails with a `400` error and returns the
2099
- # `InvalidBucketAcLWithObjectOwnership` error code. For more
2100
- # information, see [Setting Object Ownership on an existing bucket
2101
- # ][5] in the *Amazon S3 User Guide*.
2100
+ # To set an ACL on a bucket as part of a `CreateBucket` request,
2101
+ # you must explicitly set S3 Object Ownership for the bucket to a
2102
+ # different value than the default, `BucketOwnerEnforced`.
2103
+ # Additionally, if your desired bucket ACL grants public access,
2104
+ # you must first create the bucket (without the bucket ACL) and
2105
+ # then explicitly disable Block Public Access on the bucket before
2106
+ # using `PutBucketAcl` to set the ACL. If you try to create a
2107
+ # bucket with a public ACL, the request will fail.
2108
+ #
2109
+ # For the majority of modern use cases in S3, we recommend that
2110
+ # you keep all Block Public Access settings enabled and keep ACLs
2111
+ # disabled. If you would like to share data with users outside of
2112
+ # your account, you can use bucket policies as needed. For more
2113
+ # information, see [Controlling ownership of objects and disabling
2114
+ # ACLs for your bucket ][5] and [Blocking public access to your
2115
+ # Amazon S3 storage ][6] in the *Amazon S3 User Guide*.
2102
2116
  #
2103
2117
  # * **S3 Block Public Access** - If your specific use case requires
2104
2118
  # granting public access to your S3 resources, you can disable
2105
2119
  # Block Public Access. Specifically, you can create a new bucket
2106
2120
  # with Block Public Access enabled, then separately call the [
2107
- # `DeletePublicAccessBlock` ][6] API. To use this operation, you
2121
+ # `DeletePublicAccessBlock` ][7] API. To use this operation, you
2108
2122
  # must have the `s3:PutBucketPublicAccessBlock` permission. For
2109
2123
  # more information about S3 Block Public Access, see [Blocking
2110
- # public access to your Amazon S3 storage ][7] in the *Amazon S3
2124
+ # public access to your Amazon S3 storage ][6] in the *Amazon S3
2111
2125
  # User Guide*.
2112
2126
  #
2113
2127
  # * **Directory bucket permissions** - You must have the
@@ -2149,9 +2163,9 @@ module Aws::S3
2149
2163
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html
2150
2164
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html
2151
2165
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
2152
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-ownership-existing-bucket.html
2153
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html
2154
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html
2166
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
2167
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html
2168
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html
2155
2169
  # [8]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html
2156
2170
  # [9]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html
2157
2171
  # [10]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-one-zone.html#s3-express-features
@@ -2178,7 +2192,7 @@ module Aws::S3
2178
2192
  # Virtual-hosted-style requests aren't supported. Directory bucket
2179
2193
  # names must be unique in the chosen Availability Zone. Bucket names
2180
2194
  # must also follow the format ` bucket_base_name--az_id--x-s3` (for
2181
- # example, ` DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about
2195
+ # example, ` DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about
2182
2196
  # bucket naming restrictions, see [Directory bucket naming rules][2] in
2183
2197
  # the *Amazon S3 User Guide*
2184
2198
  #
@@ -2588,7 +2602,7 @@ module Aws::S3
2588
2602
  # are not supported. Directory bucket names must be unique in the chosen
2589
2603
  # Availability Zone. Bucket names must follow the format `
2590
2604
  # bucket_base_name--az-id--x-s3` (for example, `
2591
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
2605
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
2592
2606
  # naming restrictions, see [Directory bucket naming rules][1] in the
2593
2607
  # *Amazon S3 User Guide*.
2594
2608
  #
@@ -3350,7 +3364,7 @@ module Aws::S3
3350
3364
  # Virtual-hosted-style requests aren't supported. Directory bucket
3351
3365
  # names must be unique in the chosen Availability Zone. Bucket names
3352
3366
  # must also follow the format ` bucket_base_name--az_id--x-s3` (for
3353
- # example, ` DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about
3367
+ # example, ` DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about
3354
3368
  # bucket naming restrictions, see [Directory bucket naming rules][1] in
3355
3369
  # the *Amazon S3 User Guide*
3356
3370
  #
@@ -3979,7 +3993,7 @@ module Aws::S3
3979
3993
  # Virtual-hosted-style requests aren't supported. Directory bucket
3980
3994
  # names must be unique in the chosen Availability Zone. Bucket names
3981
3995
  # must also follow the format ` bucket_base_name--az_id--x-s3` (for
3982
- # example, ` DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about
3996
+ # example, ` DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about
3983
3997
  # bucket naming restrictions, see [Directory bucket naming rules][1] in
3984
3998
  # the *Amazon S3 User Guide*
3985
3999
  #
@@ -4222,15 +4236,26 @@ module Aws::S3
4222
4236
  # Removes an object from a bucket. The behavior depends on the bucket's
4223
4237
  # versioning state:
4224
4238
  #
4225
- # * If versioning is enabled, the operation removes the null version (if
4226
- # there is one) of an object and inserts a delete marker, which
4227
- # becomes the latest version of the object. If there isn't a null
4228
- # version, Amazon S3 does not remove any objects but will still
4229
- # respond that the command was successful.
4230
- #
4231
- # * If versioning is suspended or not enabled, the operation permanently
4239
+ # * If bucket versioning is not enabled, the operation permanently
4232
4240
  # deletes the object.
4233
4241
  #
4242
+ # * If bucket versioning is enabled, the operation inserts a delete
4243
+ # marker, which becomes the current version of the object. To
4244
+ # permanently delete an object in a versioned bucket, you must include
4245
+ # the object’s `versionId` in the request. For more information about
4246
+ # versioning-enabled buckets, see [Deleting object versions from a
4247
+ # versioning-enabled bucket][1].
4248
+ #
4249
+ # * If bucket versioning is suspended, the operation removes the object
4250
+ # that has a null `versionId`, if there is one, and inserts a delete
4251
+ # marker that becomes the current version of the object. If there
4252
+ # isn't an object with a null `versionId`, and all versions of the
4253
+ # object have a `versionId`, Amazon S3 does not remove the object and
4254
+ # only inserts a delete marker. To permanently delete an object that
4255
+ # has a `versionId`, you must include the object’s `versionId` in the
4256
+ # request. For more information about versioning-suspended buckets,
4257
+ # see [Deleting objects from versioning-suspended buckets][2].
4258
+ #
4234
4259
  # <note markdown="1"> * **Directory buckets** - S3 Versioning isn't enabled and supported
4235
4260
  # for directory buckets. For this API operation, only the `null` value
4236
4261
  # of the version ID is supported by directory buckets. You can only
@@ -4241,7 +4266,7 @@ module Aws::S3
4241
4266
  # endpoints support virtual-hosted-style requests in the format
4242
4267
  # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name
4243
4268
  # `. Path-style requests are not supported. For more information, see
4244
- # [Regional and Zonal endpoints][1] in the *Amazon S3 User Guide*.
4269
+ # [Regional and Zonal endpoints][3] in the *Amazon S3 User Guide*.
4245
4270
  #
4246
4271
  # </note>
4247
4272
  #
@@ -4254,8 +4279,8 @@ module Aws::S3
4254
4279
  # versioning configuration is MFA Delete enabled, you must include the
4255
4280
  # `x-amz-mfa` request header in the DELETE `versionId` request. Requests
4256
4281
  # that include `x-amz-mfa` must use HTTPS. For more information about
4257
- # MFA Delete, see [Using MFA Delete][2] in the *Amazon S3 User Guide*.
4258
- # To see sample requests that use versioning, see [Sample Request][3].
4282
+ # MFA Delete, see [Using MFA Delete][4] in the *Amazon S3 User Guide*.
4283
+ # To see sample requests that use versioning, see [Sample Request][5].
4259
4284
  #
4260
4285
  # <note markdown="1"> **Directory buckets** - MFA delete is not supported by directory
4261
4286
  # buckets.
@@ -4263,7 +4288,7 @@ module Aws::S3
4263
4288
  # </note>
4264
4289
  #
4265
4290
  # You can delete objects by explicitly calling DELETE Object or calling
4266
- # ([PutBucketLifecycle][4]) to enable Amazon S3 to remove them for you.
4291
+ # ([PutBucketLifecycle][6]) to enable Amazon S3 to remove them for you.
4267
4292
  # If you want to block users or accounts from removing or deleting
4268
4293
  # objects from your bucket, you must deny them the `s3:DeleteObject`,
4269
4294
  # `s3:DeleteObjectVersion`, and `s3:PutLifeCycleConfiguration` actions.
@@ -4282,12 +4307,12 @@ module Aws::S3
4282
4307
  # a bucket, you must always have the `s3:DeleteObject` permission.
4283
4308
  #
4284
4309
  # * <b> <code>s3:DeleteObjectVersion</code> </b> - To delete a
4285
- # specific version of an object from a versiong-enabled bucket,
4310
+ # specific version of an object from a versioning-enabled bucket,
4286
4311
  # you must have the `s3:DeleteObjectVersion` permission.
4287
4312
  #
4288
4313
  # * **Directory bucket permissions** - To grant access to this API
4289
4314
  # operation on a directory bucket, we recommend that you use the [
4290
- # `CreateSession` ][5] API operation for session-based
4315
+ # `CreateSession` ][7] API operation for session-based
4291
4316
  # authorization. Specifically, you grant the
4292
4317
  # `s3express:CreateSession` permission to the directory bucket in a
4293
4318
  # bucket policy or an IAM identity-based policy. Then, you make the
@@ -4298,7 +4323,7 @@ module Aws::S3
4298
4323
  # token for use. Amazon Web Services CLI or SDKs create session and
4299
4324
  # refresh the session token automatically to avoid service
4300
4325
  # interruptions when a session expires. For more information about
4301
- # authorization, see [ `CreateSession` ][5].
4326
+ # authorization, see [ `CreateSession` ][7].
4302
4327
  #
4303
4328
  # HTTP Host header syntax
4304
4329
  #
@@ -4307,18 +4332,20 @@ module Aws::S3
4307
4332
  #
4308
4333
  # The following action is related to `DeleteObject`:
4309
4334
  #
4310
- # * [PutObject][6]
4335
+ # * [PutObject][8]
4311
4336
  #
4312
4337
  # ^
4313
4338
  #
4314
4339
  #
4315
4340
  #
4316
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
4317
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html
4318
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete
4319
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
4320
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
4321
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
4341
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectVersions.html
4342
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectsfromVersioningSuspendedBuckets.html
4343
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
4344
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html
4345
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete
4346
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
4347
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
4348
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
4322
4349
  #
4323
4350
  # @option params [required, String] :bucket
4324
4351
  # The bucket name of the bucket containing the object.
@@ -4329,7 +4356,7 @@ module Aws::S3
4329
4356
  # are not supported. Directory bucket names must be unique in the chosen
4330
4357
  # Availability Zone. Bucket names must follow the format `
4331
4358
  # bucket_base_name--az-id--x-s3` (for example, `
4332
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
4359
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
4333
4360
  # naming restrictions, see [Directory bucket naming rules][1] in the
4334
4361
  # *Amazon S3 User Guide*.
4335
4362
  #
@@ -4543,35 +4570,35 @@ module Aws::S3
4543
4570
  # * {Types::DeleteObjectTaggingOutput#version_id #version_id} => String
4544
4571
  #
4545
4572
  #
4546
- # @example Example: To remove tag set from an object
4573
+ # @example Example: To remove tag set from an object version
4547
4574
  #
4548
- # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
4549
- # # operation removes tag set from the latest object version.
4575
+ # # The following example removes tag set associated with the specified object version. The request specifies both the
4576
+ # # object key and object version.
4550
4577
  #
4551
4578
  # resp = client.delete_object_tagging({
4552
4579
  # bucket: "examplebucket",
4553
4580
  # key: "HappyFace.jpg",
4581
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
4554
4582
  # })
4555
4583
  #
4556
4584
  # resp.to_h outputs the following:
4557
4585
  # {
4558
- # version_id: "null",
4586
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
4559
4587
  # }
4560
4588
  #
4561
- # @example Example: To remove tag set from an object version
4589
+ # @example Example: To remove tag set from an object
4562
4590
  #
4563
- # # The following example removes tag set associated with the specified object version. The request specifies both the
4564
- # # object key and object version.
4591
+ # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
4592
+ # # operation removes tag set from the latest object version.
4565
4593
  #
4566
4594
  # resp = client.delete_object_tagging({
4567
4595
  # bucket: "examplebucket",
4568
4596
  # key: "HappyFace.jpg",
4569
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
4570
4597
  # })
4571
4598
  #
4572
4599
  # resp.to_h outputs the following:
4573
4600
  # {
4574
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
4601
+ # version_id: "null",
4575
4602
  # }
4576
4603
  #
4577
4604
  # @example Request syntax with placeholder values
@@ -4720,7 +4747,7 @@ module Aws::S3
4720
4747
  # are not supported. Directory bucket names must be unique in the chosen
4721
4748
  # Availability Zone. Bucket names must follow the format `
4722
4749
  # bucket_base_name--az-id--x-s3` (for example, `
4723
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
4750
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
4724
4751
  # naming restrictions, see [Directory bucket naming rules][1] in the
4725
4752
  # *Amazon S3 User Guide*.
4726
4753
  #
@@ -5781,13 +5808,16 @@ module Aws::S3
5781
5808
  # </note>
5782
5809
  #
5783
5810
  # <note markdown="1"> Bucket lifecycle configuration now supports specifying a lifecycle
5784
- # rule using an object key name prefix, one or more object tags, or a
5785
- # combination of both. Accordingly, this section describes the latest
5786
- # API. The response describes the new filter element that you can use to
5787
- # specify a filter to select a subset of objects to which the rule
5788
- # applies. If you are using a previous version of the lifecycle
5789
- # configuration, it still works. For the earlier action, see
5790
- # [GetBucketLifecycle][1].
5811
+ # rule using an object key name prefix, one or more object tags, object
5812
+ # size, or any combination of these. Accordingly, this section describes
5813
+ # the latest API. The previous version of the API supported filtering
5814
+ # based only on an object key name prefix, which is supported for
5815
+ # backward compatibility. For the related API description, see
5816
+ # [GetBucketLifecycle][1]. Accordingly, this section describes the
5817
+ # latest API. The response describes the new filter element that you can
5818
+ # use to specify a filter to select a subset of objects to which the
5819
+ # rule applies. If you are using a previous version of the lifecycle
5820
+ # configuration, it still works. For the earlier action,
5791
5821
  #
5792
5822
  # </note>
5793
5823
  #
@@ -6547,7 +6577,7 @@ module Aws::S3
6547
6577
  # Virtual-hosted-style requests aren't supported. Directory bucket
6548
6578
  # names must be unique in the chosen Availability Zone. Bucket names
6549
6579
  # must also follow the format ` bucket_base_name--az_id--x-s3` (for
6550
- # example, ` DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about
6580
+ # example, ` DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about
6551
6581
  # bucket naming restrictions, see [Directory bucket naming rules][1] in
6552
6582
  # the *Amazon S3 User Guide*
6553
6583
  #
@@ -7302,7 +7332,7 @@ module Aws::S3
7302
7332
  # are not supported. Directory bucket names must be unique in the chosen
7303
7333
  # Availability Zone. Bucket names must follow the format `
7304
7334
  # bucket_base_name--az-id--x-s3` (for example, `
7305
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
7335
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
7306
7336
  # naming restrictions, see [Directory bucket naming rules][1] in the
7307
7337
  # *Amazon S3 User Guide*.
7308
7338
  #
@@ -7626,49 +7656,49 @@ module Aws::S3
7626
7656
  # * {Types::GetObjectOutput#object_lock_legal_hold_status #object_lock_legal_hold_status} => String
7627
7657
  #
7628
7658
  #
7629
- # @example Example: To retrieve a byte range of an object
7659
+ # @example Example: To retrieve an object
7630
7660
  #
7631
- # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
7632
- # # specific byte range.
7661
+ # # The following example retrieves an object for an S3 bucket.
7633
7662
  #
7634
7663
  # resp = client.get_object({
7635
7664
  # bucket: "examplebucket",
7636
- # key: "SampleFile.txt",
7637
- # range: "bytes=0-9",
7665
+ # key: "HappyFace.jpg",
7638
7666
  # })
7639
7667
  #
7640
7668
  # resp.to_h outputs the following:
7641
7669
  # {
7642
7670
  # accept_ranges: "bytes",
7643
- # content_length: 10,
7644
- # content_range: "bytes 0-9/43",
7645
- # content_type: "text/plain",
7646
- # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
7647
- # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
7671
+ # content_length: 3191,
7672
+ # content_type: "image/jpeg",
7673
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
7674
+ # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
7648
7675
  # metadata: {
7649
7676
  # },
7677
+ # tag_count: 2,
7650
7678
  # version_id: "null",
7651
7679
  # }
7652
7680
  #
7653
- # @example Example: To retrieve an object
7681
+ # @example Example: To retrieve a byte range of an object
7654
7682
  #
7655
- # # The following example retrieves an object for an S3 bucket.
7683
+ # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
7684
+ # # specific byte range.
7656
7685
  #
7657
7686
  # resp = client.get_object({
7658
7687
  # bucket: "examplebucket",
7659
- # key: "HappyFace.jpg",
7688
+ # key: "SampleFile.txt",
7689
+ # range: "bytes=0-9",
7660
7690
  # })
7661
7691
  #
7662
7692
  # resp.to_h outputs the following:
7663
7693
  # {
7664
7694
  # accept_ranges: "bytes",
7665
- # content_length: 3191,
7666
- # content_type: "image/jpeg",
7667
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
7668
- # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
7695
+ # content_length: 10,
7696
+ # content_range: "bytes 0-9/43",
7697
+ # content_type: "text/plain",
7698
+ # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
7699
+ # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
7669
7700
  # metadata: {
7670
7701
  # },
7671
- # tag_count: 2,
7672
7702
  # version_id: "null",
7673
7703
  # }
7674
7704
  #
@@ -8135,7 +8165,7 @@ module Aws::S3
8135
8165
  # are not supported. Directory bucket names must be unique in the chosen
8136
8166
  # Availability Zone. Bucket names must follow the format `
8137
8167
  # bucket_base_name--az-id--x-s3` (for example, `
8138
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
8168
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
8139
8169
  # naming restrictions, see [Directory bucket naming rules][1] in the
8140
8170
  # *Amazon S3 User Guide*.
8141
8171
  #
@@ -8668,49 +8698,49 @@ module Aws::S3
8668
8698
  # * {Types::GetObjectTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
8669
8699
  #
8670
8700
  #
8671
- # @example Example: To retrieve tag set of a specific object version
8701
+ # @example Example: To retrieve tag set of an object
8672
8702
  #
8673
- # # The following example retrieves tag set of an object. The request specifies object version.
8703
+ # # The following example retrieves tag set of an object.
8674
8704
  #
8675
8705
  # resp = client.get_object_tagging({
8676
8706
  # bucket: "examplebucket",
8677
- # key: "exampleobject",
8678
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
8707
+ # key: "HappyFace.jpg",
8679
8708
  # })
8680
8709
  #
8681
8710
  # resp.to_h outputs the following:
8682
8711
  # {
8683
8712
  # tag_set: [
8684
8713
  # {
8685
- # key: "Key1",
8686
- # value: "Value1",
8714
+ # key: "Key4",
8715
+ # value: "Value4",
8716
+ # },
8717
+ # {
8718
+ # key: "Key3",
8719
+ # value: "Value3",
8687
8720
  # },
8688
8721
  # ],
8689
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
8722
+ # version_id: "null",
8690
8723
  # }
8691
8724
  #
8692
- # @example Example: To retrieve tag set of an object
8725
+ # @example Example: To retrieve tag set of a specific object version
8693
8726
  #
8694
- # # The following example retrieves tag set of an object.
8727
+ # # The following example retrieves tag set of an object. The request specifies object version.
8695
8728
  #
8696
8729
  # resp = client.get_object_tagging({
8697
8730
  # bucket: "examplebucket",
8698
- # key: "HappyFace.jpg",
8731
+ # key: "exampleobject",
8732
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
8699
8733
  # })
8700
8734
  #
8701
8735
  # resp.to_h outputs the following:
8702
8736
  # {
8703
8737
  # tag_set: [
8704
8738
  # {
8705
- # key: "Key4",
8706
- # value: "Value4",
8707
- # },
8708
- # {
8709
- # key: "Key3",
8710
- # value: "Value3",
8739
+ # key: "Key1",
8740
+ # value: "Value1",
8711
8741
  # },
8712
8742
  # ],
8713
- # version_id: "null",
8743
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
8714
8744
  # }
8715
8745
  #
8716
8746
  # @example Request syntax with placeholder values
@@ -8922,7 +8952,7 @@ module Aws::S3
8922
8952
  # If the bucket does not exist or you do not have permission to access
8923
8953
  # it, the `HEAD` request returns a generic `400 Bad Request`, `403
8924
8954
  # Forbidden` or `404 Not Found` code. A message body is not included, so
8925
- # you cannot determine the exception beyond these error codes.
8955
+ # you cannot determine the exception beyond these HTTP response codes.
8926
8956
  #
8927
8957
  # <note markdown="1"> <b>Directory buckets </b> - You must make requests for this API
8928
8958
  # operation to the Zonal endpoint. These endpoints support
@@ -8995,7 +9025,7 @@ module Aws::S3
8995
9025
  # are not supported. Directory bucket names must be unique in the chosen
8996
9026
  # Availability Zone. Bucket names must follow the format `
8997
9027
  # bucket_base_name--az-id--x-s3` (for example, `
8998
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
9028
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
8999
9029
  # naming restrictions, see [Directory bucket naming rules][1] in the
9000
9030
  # *Amazon S3 User Guide*.
9001
9031
  #
@@ -9236,7 +9266,7 @@ module Aws::S3
9236
9266
  # are not supported. Directory bucket names must be unique in the chosen
9237
9267
  # Availability Zone. Bucket names must follow the format `
9238
9268
  # bucket_base_name--az-id--x-s3` (for example, `
9239
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
9269
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
9240
9270
  # naming restrictions, see [Directory bucket naming rules][1] in the
9241
9271
  # *Amazon S3 User Guide*.
9242
9272
  #
@@ -10225,7 +10255,7 @@ module Aws::S3
10225
10255
  # are not supported. Directory bucket names must be unique in the chosen
10226
10256
  # Availability Zone. Bucket names must follow the format `
10227
10257
  # bucket_base_name--az-id--x-s3` (for example, `
10228
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
10258
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
10229
10259
  # naming restrictions, see [Directory bucket naming rules][1] in the
10230
10260
  # *Amazon S3 User Guide*.
10231
10261
  #
@@ -10650,9 +10680,7 @@ module Aws::S3
10650
10680
  #
10651
10681
  # @example Example: To list object versions
10652
10682
  #
10653
- # # The following example return versions of an object with specific key name prefix. The request limits the number of items
10654
- # # returned to two. If there are are more than two object version, S3 returns NextToken in the response. You can specify
10655
- # # this token value in your next request to fetch next set of object versions.
10683
+ # # The following example returns versions of an object with specific key name prefix.
10656
10684
  #
10657
10685
  # resp = client.list_object_versions({
10658
10686
  # bucket: "examplebucket",
@@ -10795,7 +10823,7 @@ module Aws::S3
10795
10823
  # are not supported. Directory bucket names must be unique in the chosen
10796
10824
  # Availability Zone. Bucket names must follow the format `
10797
10825
  # bucket_base_name--az-id--x-s3` (for example, `
10798
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
10826
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
10799
10827
  # naming restrictions, see [Directory bucket naming rules][1] in the
10800
10828
  # *Amazon S3 User Guide*.
10801
10829
  #
@@ -11060,7 +11088,7 @@ module Aws::S3
11060
11088
  # are not supported. Directory bucket names must be unique in the chosen
11061
11089
  # Availability Zone. Bucket names must follow the format `
11062
11090
  # bucket_base_name--az-id--x-s3` (for example, `
11063
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
11091
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
11064
11092
  # naming restrictions, see [Directory bucket naming rules][1] in the
11065
11093
  # *Amazon S3 User Guide*.
11066
11094
  #
@@ -11116,6 +11144,9 @@ module Aws::S3
11116
11144
  #
11117
11145
  # @option params [String] :encoding_type
11118
11146
  # Encoding type used by Amazon S3 to encode object keys in the response.
11147
+ # If using `url`, non-ASCII characters used in an object's key name
11148
+ # will be URL encoded. For example, the object test\_file(3).png will
11149
+ # appear as test\_file%283%29.png.
11119
11150
  #
11120
11151
  # @option params [Integer] :max_keys
11121
11152
  # Sets the maximum number of keys returned in the response. By default,
@@ -11382,7 +11413,7 @@ module Aws::S3
11382
11413
  # are not supported. Directory bucket names must be unique in the chosen
11383
11414
  # Availability Zone. Bucket names must follow the format `
11384
11415
  # bucket_base_name--az-id--x-s3` (for example, `
11385
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
11416
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
11386
11417
  # naming restrictions, see [Directory bucket naming rules][1] in the
11387
11418
  # *Amazon S3 User Guide*.
11388
11419
  #
@@ -12879,11 +12910,11 @@ module Aws::S3
12879
12910
  # configuration, see [Managing your storage lifecycle][1].
12880
12911
  #
12881
12912
  # <note markdown="1"> Bucket lifecycle configuration now supports specifying a lifecycle
12882
- # rule using an object key name prefix, one or more object tags, or a
12883
- # combination of both. Accordingly, this section describes the latest
12884
- # API. The previous version of the API supported filtering based only on
12885
- # an object key name prefix, which is supported for backward
12886
- # compatibility. For the related API description, see
12913
+ # rule using an object key name prefix, one or more object tags, object
12914
+ # size, or any combination of these. Accordingly, this section describes
12915
+ # the latest API. The previous version of the API supported filtering
12916
+ # based only on an object key name prefix, which is supported for
12917
+ # backward compatibility. For the related API description, see
12887
12918
  # [PutBucketLifecycle][2].
12888
12919
  #
12889
12920
  # </note>
@@ -12898,7 +12929,7 @@ module Aws::S3
12898
12929
  #
12899
12930
  # * A filter identifying a subset of objects to which the rule
12900
12931
  # applies. The filter can be based on a key name prefix, object
12901
- # tags, or a combination of both.
12932
+ # tags, object size, or any combination of these.
12902
12933
  #
12903
12934
  # * A status indicating whether the rule is in effect.
12904
12935
  #
@@ -13801,7 +13832,7 @@ module Aws::S3
13801
13832
  # Virtual-hosted-style requests aren't supported. Directory bucket
13802
13833
  # names must be unique in the chosen Availability Zone. Bucket names
13803
13834
  # must also follow the format ` bucket_base_name--az_id--x-s3` (for
13804
- # example, ` DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about
13835
+ # example, ` DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about
13805
13836
  # bucket naming restrictions, see [Directory bucket naming rules][1] in
13806
13837
  # the *Amazon S3 User Guide*
13807
13838
  #
@@ -14880,7 +14911,7 @@ module Aws::S3
14880
14911
  # are not supported. Directory bucket names must be unique in the chosen
14881
14912
  # Availability Zone. Bucket names must follow the format `
14882
14913
  # bucket_base_name--az-id--x-s3` (for example, `
14883
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
14914
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
14884
14915
  # naming restrictions, see [Directory bucket naming rules][1] in the
14885
14916
  # *Amazon S3 User Guide*.
14886
14917
  #
@@ -15342,20 +15373,24 @@ module Aws::S3
15342
15373
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
15343
15374
  #
15344
15375
  #
15345
- # @example Example: To create an object.
15376
+ # @example Example: To upload an object and specify server-side encryption and object tags
15346
15377
  #
15347
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
15378
+ # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
15379
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
15348
15380
  #
15349
15381
  # resp = client.put_object({
15350
15382
  # body: "filetoupload",
15351
15383
  # bucket: "examplebucket",
15352
- # key: "objectkey",
15384
+ # key: "exampleobject",
15385
+ # server_side_encryption: "AES256",
15386
+ # tagging: "key1=value1&key2=value2",
15353
15387
  # })
15354
15388
  #
15355
15389
  # resp.to_h outputs the following:
15356
15390
  # {
15357
15391
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15358
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
15392
+ # server_side_encryption: "AES256",
15393
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
15359
15394
  # }
15360
15395
  #
15361
15396
  # @example Example: To upload object and specify user-defined metadata
@@ -15379,6 +15414,24 @@ module Aws::S3
15379
15414
  # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
15380
15415
  # }
15381
15416
  #
15417
+ # @example Example: To upload an object and specify canned ACL.
15418
+ #
15419
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
15420
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
15421
+ #
15422
+ # resp = client.put_object({
15423
+ # acl: "authenticated-read",
15424
+ # body: "filetoupload",
15425
+ # bucket: "examplebucket",
15426
+ # key: "exampleobject",
15427
+ # })
15428
+ #
15429
+ # resp.to_h outputs the following:
15430
+ # {
15431
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15432
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
15433
+ # }
15434
+ #
15382
15435
  # @example Example: To upload an object
15383
15436
  #
15384
15437
  # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
@@ -15396,22 +15449,20 @@ module Aws::S3
15396
15449
  # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
15397
15450
  # }
15398
15451
  #
15399
- # @example Example: To upload an object and specify canned ACL.
15452
+ # @example Example: To create an object.
15400
15453
  #
15401
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
15402
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
15454
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
15403
15455
  #
15404
15456
  # resp = client.put_object({
15405
- # acl: "authenticated-read",
15406
15457
  # body: "filetoupload",
15407
15458
  # bucket: "examplebucket",
15408
- # key: "exampleobject",
15459
+ # key: "objectkey",
15409
15460
  # })
15410
15461
  #
15411
15462
  # resp.to_h outputs the following:
15412
15463
  # {
15413
15464
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15414
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
15465
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
15415
15466
  # }
15416
15467
  #
15417
15468
  # @example Example: To upload an object (specify optional headers)
@@ -15452,26 +15503,6 @@ module Aws::S3
15452
15503
  # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
15453
15504
  # }
15454
15505
  #
15455
- # @example Example: To upload an object and specify server-side encryption and object tags
15456
- #
15457
- # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
15458
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
15459
- #
15460
- # resp = client.put_object({
15461
- # body: "filetoupload",
15462
- # bucket: "examplebucket",
15463
- # key: "exampleobject",
15464
- # server_side_encryption: "AES256",
15465
- # tagging: "key1=value1&key2=value2",
15466
- # })
15467
- #
15468
- # resp.to_h outputs the following:
15469
- # {
15470
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
15471
- # server_side_encryption: "AES256",
15472
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
15473
- # }
15474
- #
15475
15506
  # @example Streaming a file from disk
15476
15507
  # # upload file from disk in a single request, may not exceed 5GB
15477
15508
  # File.open('/source/file/path', 'rb') do |file|
@@ -16602,10 +16633,10 @@ module Aws::S3
16602
16633
  #
16603
16634
  # This action performs the following types of requests:
16604
16635
  #
16605
- # * `select` - Perform a select query on an archived object
16606
- #
16607
16636
  # * `restore an archive` - Restore an archived object
16608
16637
  #
16638
+ # ^
16639
+ #
16609
16640
  # For more information about the `S3` structure in the request body, see
16610
16641
  # the following:
16611
16642
  #
@@ -16616,51 +16647,6 @@ module Aws::S3
16616
16647
  # * [Protecting Data Using Server-Side Encryption][3] in the *Amazon S3
16617
16648
  # User Guide*
16618
16649
  #
16619
- # Define the SQL expression for the `SELECT` type of restoration for
16620
- # your query in the request body's `SelectParameters` structure. You
16621
- # can use expressions like the following examples.
16622
- #
16623
- # * The following expression returns all records from the specified
16624
- # object.
16625
- #
16626
- # `SELECT * FROM Object`
16627
- #
16628
- # * Assuming that you are not using any headers for data stored in the
16629
- # object, you can specify columns with positional headers.
16630
- #
16631
- # `SELECT s._1, s._2 FROM Object s WHERE s._3 > 100`
16632
- #
16633
- # * If you have headers and you set the `fileHeaderInfo` in the `CSV`
16634
- # structure in the request body to `USE`, you can specify headers in
16635
- # the query. (If you set the `fileHeaderInfo` field to `IGNORE`, the
16636
- # first row is skipped for the query.) You cannot mix ordinal
16637
- # positions with header column names.
16638
- #
16639
- # `SELECT s.Id, s.FirstName, s.SSN FROM S3Object s`
16640
- #
16641
- # When making a select request, you can also do the following:
16642
- #
16643
- # * To expedite your queries, specify the `Expedited` tier. For more
16644
- # information about tiers, see "Restoring Archives," later in this
16645
- # topic.
16646
- #
16647
- # * Specify details about the data serialization format of both the
16648
- # input object that is being queried and the serialization of the
16649
- # CSV-encoded query results.
16650
- #
16651
- # The following are additional important facts about the select feature:
16652
- #
16653
- # * The output results are new Amazon S3 objects. Unlike archive
16654
- # retrievals, they are stored until explicitly deleted-manually or
16655
- # through a lifecycle configuration.
16656
- #
16657
- # * You can issue more than one select request on the same Amazon S3
16658
- # object. Amazon S3 doesn't duplicate requests, so avoid issuing
16659
- # duplicate requests.
16660
- #
16661
- # * Amazon S3 accepts a select request even if the object has already
16662
- # been restored. A select request doesn’t return error response `409`.
16663
- #
16664
16650
  # Permissions
16665
16651
  #
16666
16652
  # : To use this operation, you must have permissions to perform the
@@ -16778,8 +16764,7 @@ module Aws::S3
16778
16764
  #
16779
16765
  # * *Code: RestoreAlreadyInProgress*
16780
16766
  #
16781
- # * *Cause: Object restore is already in progress. (This error does
16782
- # not apply to SELECT type requests.)*
16767
+ # * *Cause: Object restore is already in progress.*
16783
16768
  #
16784
16769
  # * *HTTP Status Code: 409 Conflict*
16785
16770
  #
@@ -17619,7 +17604,7 @@ module Aws::S3
17619
17604
  # are not supported. Directory bucket names must be unique in the chosen
17620
17605
  # Availability Zone. Bucket names must follow the format `
17621
17606
  # bucket_base_name--az-id--x-s3` (for example, `
17622
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
17607
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
17623
17608
  # naming restrictions, see [Directory bucket naming rules][1] in the
17624
17609
  # *Amazon S3 User Guide*.
17625
17610
  #
@@ -17935,7 +17920,7 @@ module Aws::S3
17935
17920
  # the source object that is being copied.
17936
17921
  #
17937
17922
  # * If the destination bucket is a general purpose bucket, you must
17938
- # have the <b> <code>s3:PubObject</code> </b> permission to write
17923
+ # have the <b> <code>s3:PutObject</code> </b> permission to write
17939
17924
  # the object copy to the destination bucket.
17940
17925
  #
17941
17926
  # For information about permissions required to use the multipart
@@ -18037,7 +18022,7 @@ module Aws::S3
18037
18022
  # are not supported. Directory bucket names must be unique in the chosen
18038
18023
  # Availability Zone. Bucket names must follow the format `
18039
18024
  # bucket_base_name--az-id--x-s3` (for example, `
18040
- # DOC-EXAMPLE-BUCKET--usw2-az2--x-s3`). For information about bucket
18025
+ # DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information about bucket
18041
18026
  # naming restrictions, see [Directory bucket naming rules][1] in the
18042
18027
  # *Amazon S3 User Guide*.
18043
18028
  #
@@ -18312,45 +18297,45 @@ module Aws::S3
18312
18297
  # * {Types::UploadPartCopyOutput#request_charged #request_charged} => String
18313
18298
  #
18314
18299
  #
18315
- # @example Example: To upload a part by copying byte range from an existing object as data source
18300
+ # @example Example: To upload a part by copying data from an existing object as data source
18316
18301
  #
18317
- # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
18318
- # # data source.
18302
+ # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
18319
18303
  #
18320
18304
  # resp = client.upload_part_copy({
18321
18305
  # bucket: "examplebucket",
18322
18306
  # copy_source: "/bucketname/sourceobjectkey",
18323
- # copy_source_range: "bytes=1-100000",
18324
18307
  # key: "examplelargeobject",
18325
- # part_number: 2,
18308
+ # part_number: 1,
18326
18309
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
18327
18310
  # })
18328
18311
  #
18329
18312
  # resp.to_h outputs the following:
18330
18313
  # {
18331
18314
  # copy_part_result: {
18332
- # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
18333
- # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
18315
+ # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
18316
+ # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
18334
18317
  # },
18335
18318
  # }
18336
18319
  #
18337
- # @example Example: To upload a part by copying data from an existing object as data source
18320
+ # @example Example: To upload a part by copying byte range from an existing object as data source
18338
18321
  #
18339
- # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
18322
+ # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
18323
+ # # data source.
18340
18324
  #
18341
18325
  # resp = client.upload_part_copy({
18342
18326
  # bucket: "examplebucket",
18343
18327
  # copy_source: "/bucketname/sourceobjectkey",
18328
+ # copy_source_range: "bytes=1-100000",
18344
18329
  # key: "examplelargeobject",
18345
- # part_number: 1,
18330
+ # part_number: 2,
18346
18331
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
18347
18332
  # })
18348
18333
  #
18349
18334
  # resp.to_h outputs the following:
18350
18335
  # {
18351
18336
  # copy_part_result: {
18352
- # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
18353
- # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
18337
+ # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
18338
+ # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
18354
18339
  # },
18355
18340
  # }
18356
18341
  #
@@ -18807,7 +18792,7 @@ module Aws::S3
18807
18792
  params: params,
18808
18793
  config: config)
18809
18794
  context[:gem_name] = 'aws-sdk-s3'
18810
- context[:gem_version] = '1.144.0'
18795
+ context[:gem_version] = '1.145.0'
18811
18796
  Seahorse::Client::Request.new(handlers, context)
18812
18797
  end
18813
18798