aws-sdk-s3 1.172.0 → 1.174.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -703,6 +703,18 @@ module Aws::S3
703
703
  # you provide does not match the actual owner of the bucket, the request
704
704
  # fails with the HTTP status code `403 Forbidden` (access denied).
705
705
  #
706
+ # @option params [Time,DateTime,Date,Integer,String] :if_match_initiated_time
707
+ # If present, this header aborts an in progress multipart upload only if
708
+ # it was initiated on the provided timestamp. If the initiated timestamp
709
+ # of the multipart upload does not match the provided value, the
710
+ # operation returns a `412 Precondition Failed` error. If the initiated
711
+ # timestamp matches or if the multipart upload doesn’t exist, the
712
+ # operation returns a `204 Success (No Content)` response.
713
+ #
714
+ # <note markdown="1"> This functionality is only supported for directory buckets.
715
+ #
716
+ # </note>
717
+ #
706
718
  # @return [Types::AbortMultipartUploadOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
707
719
  #
708
720
  # * {Types::AbortMultipartUploadOutput#request_charged #request_charged} => String
@@ -730,6 +742,7 @@ module Aws::S3
730
742
  # upload_id: "MultipartUploadId", # required
731
743
  # request_payer: "requester", # accepts requester
732
744
  # expected_bucket_owner: "AccountId",
745
+ # if_match_initiated_time: Time.now,
733
746
  # })
734
747
  #
735
748
  # @example Response structure
@@ -1009,6 +1022,27 @@ module Aws::S3
1009
1022
  # you provide does not match the actual owner of the bucket, the request
1010
1023
  # fails with the HTTP status code `403 Forbidden` (access denied).
1011
1024
  #
1025
+ # @option params [String] :if_match
1026
+ # Uploads the object only if the ETag (entity tag) value provided during
1027
+ # the WRITE operation matches the ETag of the object in S3. If the ETag
1028
+ # values do not match, the operation returns a `412 Precondition Failed`
1029
+ # error.
1030
+ #
1031
+ # If a conflicting operation occurs during the upload S3 returns a `409
1032
+ # ConditionalRequestConflict` response. On a 409 failure you should
1033
+ # fetch the object's ETag, re-initiate the multipart upload with
1034
+ # `CreateMultipartUpload`, and re-upload each part.
1035
+ #
1036
+ # Expects the ETag value as a string.
1037
+ #
1038
+ # For more information about conditional requests, see [RFC 7232][1], or
1039
+ # [Conditional requests][2] in the *Amazon S3 User Guide*.
1040
+ #
1041
+ #
1042
+ #
1043
+ # [1]: https://tools.ietf.org/html/rfc7232
1044
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
1045
+ #
1012
1046
  # @option params [String] :if_none_match
1013
1047
  # Uploads the object only if the object key name does not already exist
1014
1048
  # in the bucket specified. Otherwise, Amazon S3 returns a `412
@@ -1144,6 +1178,7 @@ module Aws::S3
1144
1178
  # checksum_sha256: "ChecksumSHA256",
1145
1179
  # request_payer: "requester", # accepts requester
1146
1180
  # expected_bucket_owner: "AccountId",
1181
+ # if_match: "IfMatch",
1147
1182
  # if_none_match: "IfNoneMatch",
1148
1183
  # sse_customer_algorithm: "SSECustomerAlgorithm",
1149
1184
  # sse_customer_key: "SSECustomerKey",
@@ -2471,33 +2506,33 @@ module Aws::S3
2471
2506
  # * {Types::CreateBucketOutput#location #location} => String
2472
2507
  #
2473
2508
  #
2474
- # @example Example: To create a bucket in a specific region
2509
+ # @example Example: To create a bucket
2475
2510
  #
2476
- # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
2511
+ # # The following example creates a bucket.
2477
2512
  #
2478
2513
  # resp = client.create_bucket({
2479
2514
  # bucket: "examplebucket",
2480
- # create_bucket_configuration: {
2481
- # location_constraint: "eu-west-1",
2482
- # },
2483
2515
  # })
2484
2516
  #
2485
2517
  # resp.to_h outputs the following:
2486
2518
  # {
2487
- # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
2519
+ # location: "/examplebucket",
2488
2520
  # }
2489
2521
  #
2490
- # @example Example: To create a bucket
2522
+ # @example Example: To create a bucket in a specific region
2491
2523
  #
2492
- # # The following example creates a bucket.
2524
+ # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
2493
2525
  #
2494
2526
  # resp = client.create_bucket({
2495
2527
  # bucket: "examplebucket",
2528
+ # create_bucket_configuration: {
2529
+ # location_constraint: "eu-west-1",
2530
+ # },
2496
2531
  # })
2497
2532
  #
2498
2533
  # resp.to_h outputs the following:
2499
2534
  # {
2500
- # location: "/examplebucket",
2535
+ # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
2501
2536
  # }
2502
2537
  #
2503
2538
  # @example Request syntax with placeholder values
@@ -3876,7 +3911,7 @@ module Aws::S3
3876
3911
  req.send_request(options)
3877
3912
  end
3878
3913
 
3879
- # <note markdown="1"> This operation is not supported by directory buckets.
3914
+ # <note markdown="1"> This operation is not supported for directory buckets.
3880
3915
  #
3881
3916
  # </note>
3882
3917
  #
@@ -3942,7 +3977,7 @@ module Aws::S3
3942
3977
  req.send_request(options)
3943
3978
  end
3944
3979
 
3945
- # <note markdown="1"> This operation is not supported by directory buckets.
3980
+ # <note markdown="1"> This operation is not supported for directory buckets.
3946
3981
  #
3947
3982
  # </note>
3948
3983
  #
@@ -4106,7 +4141,7 @@ module Aws::S3
4106
4141
  req.send_request(options)
4107
4142
  end
4108
4143
 
4109
- # <note markdown="1"> This operation is not supported by directory buckets.
4144
+ # <note markdown="1"> This operation is not supported for directory buckets.
4110
4145
  #
4111
4146
  # </note>
4112
4147
  #
@@ -4173,7 +4208,7 @@ module Aws::S3
4173
4208
  req.send_request(options)
4174
4209
  end
4175
4210
 
4176
- # <note markdown="1"> This operation is not supported by directory buckets.
4211
+ # <note markdown="1"> This operation is not supported for directory buckets.
4177
4212
  #
4178
4213
  # </note>
4179
4214
  #
@@ -4238,38 +4273,71 @@ module Aws::S3
4238
4273
  req.send_request(options)
4239
4274
  end
4240
4275
 
4241
- # <note markdown="1"> This operation is not supported by directory buckets.
4242
- #
4243
- # </note>
4244
- #
4245
4276
  # Deletes the lifecycle configuration from the specified bucket. Amazon
4246
4277
  # S3 removes all the lifecycle configuration rules in the lifecycle
4247
4278
  # subresource associated with the bucket. Your objects never expire, and
4248
4279
  # Amazon S3 no longer automatically deletes any objects on the basis of
4249
4280
  # rules contained in the deleted lifecycle configuration.
4250
4281
  #
4251
- # To use this operation, you must have permission to perform the
4252
- # `s3:PutLifecycleConfiguration` action. By default, the bucket owner
4253
- # has this permission and the bucket owner can grant this permission to
4254
- # others.
4282
+ # Permissions
4283
+ # : * **General purpose bucket permissions** - By default, all Amazon S3
4284
+ # resources are private, including buckets, objects, and related
4285
+ # subresources (for example, lifecycle configuration and website
4286
+ # configuration). Only the resource owner (that is, the Amazon Web
4287
+ # Services account that created it) can access the resource. The
4288
+ # resource owner can optionally grant access permissions to others
4289
+ # by writing an access policy. For this operation, a user must have
4290
+ # the `s3:PutLifecycleConfiguration` permission.
4291
+ #
4292
+ # For more information about permissions, see [Managing Access
4293
+ # Permissions to Your Amazon S3 Resources][1].
4294
+ # ^
4295
+ #
4296
+ # * **Directory bucket permissions** - You must have the
4297
+ # `s3express:PutLifecycleConfiguration` permission in an IAM
4298
+ # identity-based policy to use this operation. Cross-account access
4299
+ # to this API operation isn't supported. The resource owner can
4300
+ # optionally grant access permissions to others by creating a role
4301
+ # or user for them as long as they are within the same account as
4302
+ # the owner and resource.
4303
+ #
4304
+ # For more information about directory bucket policies and
4305
+ # permissions, see [Authorizing Regional endpoint APIs with IAM][2]
4306
+ # in the *Amazon S3 User Guide*.
4255
4307
  #
4256
- # There is usually some time lag before lifecycle configuration deletion
4257
- # is fully propagated to all the Amazon S3 systems.
4308
+ # <note markdown="1"> <b>Directory buckets </b> - For directory buckets, you must make
4309
+ # requests for this API operation to the Regional endpoint. These
4310
+ # endpoints support path-style requests in the format
4311
+ # `https://s3express-control.region_code.amazonaws.com/bucket-name
4312
+ # `. Virtual-hosted-style requests aren't supported. For more
4313
+ # information, see [Regional and Zonal endpoints][3] in the *Amazon
4314
+ # S3 User Guide*.
4315
+ #
4316
+ # </note>
4317
+ # ^
4318
+ #
4319
+ # HTTP Host header syntax
4320
+ #
4321
+ # : <b>Directory buckets </b> - The HTTP Host header syntax is
4322
+ # `s3express-control.region.amazonaws.com`.
4258
4323
  #
4259
4324
  # For more information about the object expiration, see [Elements to
4260
- # Describe Lifecycle Actions][1].
4325
+ # Describe Lifecycle Actions][4].
4261
4326
  #
4262
4327
  # Related actions include:
4263
4328
  #
4264
- # * [PutBucketLifecycleConfiguration][2]
4329
+ # * [PutBucketLifecycleConfiguration][5]
4265
4330
  #
4266
- # * [GetBucketLifecycleConfiguration][3]
4331
+ # * [GetBucketLifecycleConfiguration][6]
4267
4332
  #
4268
4333
  #
4269
4334
  #
4270
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-actions
4271
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
4272
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
4335
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
4336
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html
4337
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
4338
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-actions
4339
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
4340
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
4273
4341
  #
4274
4342
  # @option params [required, String] :bucket
4275
4343
  # The bucket name of the lifecycle to delete.
@@ -4279,6 +4347,11 @@ module Aws::S3
4279
4347
  # you provide does not match the actual owner of the bucket, the request
4280
4348
  # fails with the HTTP status code `403 Forbidden` (access denied).
4281
4349
  #
4350
+ # <note markdown="1"> This parameter applies to general purpose buckets only. It is not
4351
+ # supported for directory bucket lifecycle configurations.
4352
+ #
4353
+ # </note>
4354
+ #
4282
4355
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4283
4356
  #
4284
4357
  #
@@ -4306,7 +4379,7 @@ module Aws::S3
4306
4379
  req.send_request(options)
4307
4380
  end
4308
4381
 
4309
- # <note markdown="1"> This operation is not supported by directory buckets.
4382
+ # <note markdown="1"> This operation is not supported for directory buckets.
4310
4383
  #
4311
4384
  # </note>
4312
4385
  #
@@ -4376,7 +4449,7 @@ module Aws::S3
4376
4449
  req.send_request(options)
4377
4450
  end
4378
4451
 
4379
- # <note markdown="1"> This operation is not supported by directory buckets.
4452
+ # <note markdown="1"> This operation is not supported for directory buckets.
4380
4453
  #
4381
4454
  # </note>
4382
4455
  #
@@ -4550,7 +4623,7 @@ module Aws::S3
4550
4623
  req.send_request(options)
4551
4624
  end
4552
4625
 
4553
- # <note markdown="1"> This operation is not supported by directory buckets.
4626
+ # <note markdown="1"> This operation is not supported for directory buckets.
4554
4627
  #
4555
4628
  # </note>
4556
4629
  #
@@ -4620,7 +4693,7 @@ module Aws::S3
4620
4693
  req.send_request(options)
4621
4694
  end
4622
4695
 
4623
- # <note markdown="1"> This operation is not supported by directory buckets.
4696
+ # <note markdown="1"> This operation is not supported for directory buckets.
4624
4697
  #
4625
4698
  # </note>
4626
4699
  #
@@ -4676,7 +4749,7 @@ module Aws::S3
4676
4749
  req.send_request(options)
4677
4750
  end
4678
4751
 
4679
- # <note markdown="1"> This operation is not supported by directory buckets.
4752
+ # <note markdown="1"> This operation is not supported for directory buckets.
4680
4753
  #
4681
4754
  # </note>
4682
4755
  #
@@ -4915,6 +4988,49 @@ module Aws::S3
4915
4988
  # you provide does not match the actual owner of the bucket, the request
4916
4989
  # fails with the HTTP status code `403 Forbidden` (access denied).
4917
4990
  #
4991
+ # @option params [String] :if_match
4992
+ # The `If-Match` header field makes the request method conditional on
4993
+ # ETags. If the ETag value does not match, the operation returns a `412
4994
+ # Precondition Failed` error. If the ETag matches or if the object
4995
+ # doesn't exist, the operation will return a `204 Success (No Content)
4996
+ # response`.
4997
+ #
4998
+ # For more information about conditional requests, see [RFC 7232][1].
4999
+ #
5000
+ # <note markdown="1"> This functionality is only supported for directory buckets.
5001
+ #
5002
+ # </note>
5003
+ #
5004
+ #
5005
+ #
5006
+ # [1]: https://docs.aws.amazon.com/https:/tools.ietf.org/html/rfc7232
5007
+ #
5008
+ # @option params [Time,DateTime,Date,Integer,String] :if_match_last_modified_time
5009
+ # If present, the object is deleted only if its modification times
5010
+ # matches the provided `Timestamp`. If the `Timestamp` values do not
5011
+ # match, the operation returns a `412 Precondition Failed` error. If the
5012
+ # `Timestamp` matches or if the object doesn’t exist, the operation
5013
+ # returns a `204 Success (No Content)` response.
5014
+ #
5015
+ # <note markdown="1"> This functionality is only supported for directory buckets.
5016
+ #
5017
+ # </note>
5018
+ #
5019
+ # @option params [Integer] :if_match_size
5020
+ # If present, the object is deleted only if its size matches the
5021
+ # provided size in bytes. If the `Size` value does not match, the
5022
+ # operation returns a `412 Precondition Failed` error. If the `Size`
5023
+ # matches or if the object doesn’t exist, the operation returns a `204
5024
+ # Success (No Content)` response.
5025
+ #
5026
+ # <note markdown="1"> This functionality is only supported for directory buckets.
5027
+ #
5028
+ # </note>
5029
+ #
5030
+ # You can use the `If-Match`, `x-amz-if-match-last-modified-time` and
5031
+ # `x-amz-if-match-size` conditional headers in conjunction with
5032
+ # each-other or individually.
5033
+ #
4918
5034
  # @return [Types::DeleteObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4919
5035
  #
4920
5036
  # * {Types::DeleteObjectOutput#delete_marker #delete_marker} => Boolean
@@ -4954,6 +5070,9 @@ module Aws::S3
4954
5070
  # request_payer: "requester", # accepts requester
4955
5071
  # bypass_governance_retention: false,
4956
5072
  # expected_bucket_owner: "AccountId",
5073
+ # if_match: "IfMatch",
5074
+ # if_match_last_modified_time: Time.now,
5075
+ # if_match_size: 1,
4957
5076
  # })
4958
5077
  #
4959
5078
  # @example Response structure
@@ -4971,7 +5090,7 @@ module Aws::S3
4971
5090
  req.send_request(options)
4972
5091
  end
4973
5092
 
4974
- # <note markdown="1"> This operation is not supported by directory buckets.
5093
+ # <note markdown="1"> This operation is not supported for directory buckets.
4975
5094
  #
4976
5095
  # </note>
4977
5096
  #
@@ -5352,20 +5471,22 @@ module Aws::S3
5352
5471
  # * {Types::DeleteObjectsOutput#errors #errors} => Array&lt;Types::Error&gt;
5353
5472
  #
5354
5473
  #
5355
- # @example Example: To delete multiple objects from a versioned bucket
5474
+ # @example Example: To delete multiple object versions from a versioned bucket
5356
5475
  #
5357
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
5358
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
5476
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
5477
+ # # versions and returns the key and versions of deleted objects in the response.
5359
5478
  #
5360
5479
  # resp = client.delete_objects({
5361
5480
  # bucket: "examplebucket",
5362
5481
  # delete: {
5363
5482
  # objects: [
5364
5483
  # {
5365
- # key: "objectkey1",
5484
+ # key: "HappyFace.jpg",
5485
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5366
5486
  # },
5367
5487
  # {
5368
- # key: "objectkey2",
5488
+ # key: "HappyFace.jpg",
5489
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5369
5490
  # },
5370
5491
  # ],
5371
5492
  # quiet: false,
@@ -5376,34 +5497,30 @@ module Aws::S3
5376
5497
  # {
5377
5498
  # deleted: [
5378
5499
  # {
5379
- # delete_marker: true,
5380
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
5381
- # key: "objectkey1",
5500
+ # key: "HappyFace.jpg",
5501
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5382
5502
  # },
5383
5503
  # {
5384
- # delete_marker: true,
5385
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
5386
- # key: "objectkey2",
5504
+ # key: "HappyFace.jpg",
5505
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5387
5506
  # },
5388
5507
  # ],
5389
5508
  # }
5390
5509
  #
5391
- # @example Example: To delete multiple object versions from a versioned bucket
5510
+ # @example Example: To delete multiple objects from a versioned bucket
5392
5511
  #
5393
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
5394
- # # versions and returns the key and versions of deleted objects in the response.
5512
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
5513
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
5395
5514
  #
5396
5515
  # resp = client.delete_objects({
5397
5516
  # bucket: "examplebucket",
5398
5517
  # delete: {
5399
5518
  # objects: [
5400
5519
  # {
5401
- # key: "HappyFace.jpg",
5402
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5520
+ # key: "objectkey1",
5403
5521
  # },
5404
5522
  # {
5405
- # key: "HappyFace.jpg",
5406
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5523
+ # key: "objectkey2",
5407
5524
  # },
5408
5525
  # ],
5409
5526
  # quiet: false,
@@ -5414,12 +5531,14 @@ module Aws::S3
5414
5531
  # {
5415
5532
  # deleted: [
5416
5533
  # {
5417
- # key: "HappyFace.jpg",
5418
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5534
+ # delete_marker: true,
5535
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
5536
+ # key: "objectkey1",
5419
5537
  # },
5420
5538
  # {
5421
- # key: "HappyFace.jpg",
5422
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5539
+ # delete_marker: true,
5540
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
5541
+ # key: "objectkey2",
5423
5542
  # },
5424
5543
  # ],
5425
5544
  # }
@@ -5433,6 +5552,9 @@ module Aws::S3
5433
5552
  # {
5434
5553
  # key: "ObjectKey", # required
5435
5554
  # version_id: "ObjectVersionId",
5555
+ # etag: "ETag",
5556
+ # last_modified_time: Time.now,
5557
+ # size: 1,
5436
5558
  # },
5437
5559
  # ],
5438
5560
  # quiet: false,
@@ -5467,7 +5589,7 @@ module Aws::S3
5467
5589
  req.send_request(options)
5468
5590
  end
5469
5591
 
5470
- # <note markdown="1"> This operation is not supported by directory buckets.
5592
+ # <note markdown="1"> This operation is not supported for directory buckets.
5471
5593
  #
5472
5594
  # </note>
5473
5595
  #
@@ -5524,7 +5646,7 @@ module Aws::S3
5524
5646
  req.send_request(options)
5525
5647
  end
5526
5648
 
5527
- # <note markdown="1"> This operation is not supported by directory buckets.
5649
+ # <note markdown="1"> This operation is not supported for directory buckets.
5528
5650
  #
5529
5651
  # </note>
5530
5652
  #
@@ -5620,7 +5742,7 @@ module Aws::S3
5620
5742
  req.send_request(options)
5621
5743
  end
5622
5744
 
5623
- # <note markdown="1"> This operation is not supported by directory buckets.
5745
+ # <note markdown="1"> This operation is not supported for directory buckets.
5624
5746
  #
5625
5747
  # </note>
5626
5748
  #
@@ -5716,7 +5838,7 @@ module Aws::S3
5716
5838
  req.send_request(options)
5717
5839
  end
5718
5840
 
5719
- # <note markdown="1"> This operation is not supported by directory buckets.
5841
+ # <note markdown="1"> This operation is not supported for directory buckets.
5720
5842
  #
5721
5843
  # </note>
5722
5844
  #
@@ -5802,7 +5924,7 @@ module Aws::S3
5802
5924
  req.send_request(options)
5803
5925
  end
5804
5926
 
5805
- # <note markdown="1"> This operation is not supported by directory buckets.
5927
+ # <note markdown="1"> This operation is not supported for directory buckets.
5806
5928
  #
5807
5929
  # </note>
5808
5930
  #
@@ -6035,7 +6157,7 @@ module Aws::S3
6035
6157
  req.send_request(options)
6036
6158
  end
6037
6159
 
6038
- # <note markdown="1"> This operation is not supported by directory buckets.
6160
+ # <note markdown="1"> This operation is not supported for directory buckets.
6039
6161
  #
6040
6162
  # </note>
6041
6163
  #
@@ -6119,7 +6241,7 @@ module Aws::S3
6119
6241
  req.send_request(options)
6120
6242
  end
6121
6243
 
6122
- # <note markdown="1"> This operation is not supported by directory buckets.
6244
+ # <note markdown="1"> This operation is not supported for directory buckets.
6123
6245
  #
6124
6246
  # </note>
6125
6247
  #
@@ -6208,7 +6330,7 @@ module Aws::S3
6208
6330
  # version of this topic. This topic is provided for backward
6209
6331
  # compatibility.
6210
6332
  #
6211
- # <note markdown="1"> This operation is not supported by directory buckets.
6333
+ # <note markdown="1"> This operation is not supported for directory buckets.
6212
6334
  #
6213
6335
  # </note>
6214
6336
  #
@@ -6320,34 +6442,65 @@ module Aws::S3
6320
6442
  req.send_request(options)
6321
6443
  end
6322
6444
 
6323
- # <note markdown="1"> This operation is not supported by directory buckets.
6324
- #
6325
- # </note>
6445
+ # Returns the lifecycle configuration information set on the bucket. For
6446
+ # information about lifecycle configuration, see [Object Lifecycle
6447
+ # Management][1].
6326
6448
  #
6327
- # <note markdown="1"> Bucket lifecycle configuration now supports specifying a lifecycle
6449
+ # Bucket lifecycle configuration now supports specifying a lifecycle
6328
6450
  # rule using an object key name prefix, one or more object tags, object
6329
6451
  # size, or any combination of these. Accordingly, this section describes
6330
- # the latest API. The previous version of the API supported filtering
6331
- # based only on an object key name prefix, which is supported for
6332
- # backward compatibility. For the related API description, see
6333
- # [GetBucketLifecycle][1]. Accordingly, this section describes the
6334
- # latest API. The response describes the new filter element that you can
6335
- # use to specify a filter to select a subset of objects to which the
6336
- # rule applies. If you are using a previous version of the lifecycle
6337
- # configuration, it still works. For the earlier action,
6452
+ # the latest API, which is compatible with the new functionality. The
6453
+ # previous version of the API supported filtering based only on an
6454
+ # object key name prefix, which is supported for general purpose buckets
6455
+ # for backward compatibility. For the related API description, see
6456
+ # [GetBucketLifecycle][2].
6457
+ #
6458
+ # <note markdown="1"> Lifecyle configurations for directory buckets only support expiring
6459
+ # objects and cancelling multipart uploads. Expiring of versioned
6460
+ # objects, transitions and tag filters are not supported.
6338
6461
  #
6339
6462
  # </note>
6340
6463
  #
6341
- # Returns the lifecycle configuration information set on the bucket. For
6342
- # information about lifecycle configuration, see [Object Lifecycle
6343
- # Management][2].
6464
+ # Permissions
6465
+ # : * **General purpose bucket permissions** - By default, all Amazon S3
6466
+ # resources are private, including buckets, objects, and related
6467
+ # subresources (for example, lifecycle configuration and website
6468
+ # configuration). Only the resource owner (that is, the Amazon Web
6469
+ # Services account that created it) can access the resource. The
6470
+ # resource owner can optionally grant access permissions to others
6471
+ # by writing an access policy. For this operation, a user must have
6472
+ # the `s3:GetLifecycleConfiguration` permission.
6473
+ #
6474
+ # For more information about permissions, see [Managing Access
6475
+ # Permissions to Your Amazon S3 Resources][3].
6476
+ # ^
6344
6477
  #
6345
- # To use this operation, you must have permission to perform the
6346
- # `s3:GetLifecycleConfiguration` action. The bucket owner has this
6347
- # permission, by default. The bucket owner can grant this permission to
6348
- # others. For more information about permissions, see [Permissions
6349
- # Related to Bucket Subresource Operations][3] and [Managing Access
6350
- # Permissions to Your Amazon S3 Resources][4].
6478
+ # * **Directory bucket permissions** - You must have the
6479
+ # `s3express:GetLifecycleConfiguration` permission in an IAM
6480
+ # identity-based policy to use this operation. Cross-account access
6481
+ # to this API operation isn't supported. The resource owner can
6482
+ # optionally grant access permissions to others by creating a role
6483
+ # or user for them as long as they are within the same account as
6484
+ # the owner and resource.
6485
+ #
6486
+ # For more information about directory bucket policies and
6487
+ # permissions, see [Authorizing Regional endpoint APIs with IAM][4]
6488
+ # in the *Amazon S3 User Guide*.
6489
+ #
6490
+ # <note markdown="1"> <b>Directory buckets </b> - For directory buckets, you must make
6491
+ # requests for this API operation to the Regional endpoint. These
6492
+ # endpoints support path-style requests in the format
6493
+ # `https://s3express-control.region_code.amazonaws.com/bucket-name
6494
+ # `. Virtual-hosted-style requests aren't supported. For more
6495
+ # information, see [Regional and Zonal endpoints][5] in the *Amazon
6496
+ # S3 User Guide*.
6497
+ #
6498
+ # </note>
6499
+ #
6500
+ # HTTP Host header syntax
6501
+ #
6502
+ # : <b>Directory buckets </b> - The HTTP Host header syntax is
6503
+ # `s3express-control.region.amazonaws.com`.
6351
6504
  #
6352
6505
  # `GetBucketLifecycleConfiguration` has the following special error:
6353
6506
  #
@@ -6362,20 +6515,21 @@ module Aws::S3
6362
6515
  # The following operations are related to
6363
6516
  # `GetBucketLifecycleConfiguration`:
6364
6517
  #
6365
- # * [GetBucketLifecycle][1]
6518
+ # * [GetBucketLifecycle][2]
6366
6519
  #
6367
- # * [PutBucketLifecycle][5]
6520
+ # * [PutBucketLifecycle][6]
6368
6521
  #
6369
- # * [DeleteBucketLifecycle][6]
6522
+ # * [DeleteBucketLifecycle][7]
6370
6523
  #
6371
6524
  #
6372
6525
  #
6373
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html
6374
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
6375
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
6376
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
6377
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
6378
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html
6526
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
6527
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html
6528
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
6529
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html
6530
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
6531
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
6532
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html
6379
6533
  #
6380
6534
  # @option params [required, String] :bucket
6381
6535
  # The name of the bucket for which to get the lifecycle information.
@@ -6385,6 +6539,11 @@ module Aws::S3
6385
6539
  # you provide does not match the actual owner of the bucket, the request
6386
6540
  # fails with the HTTP status code `403 Forbidden` (access denied).
6387
6541
  #
6542
+ # <note markdown="1"> This parameter applies to general purpose buckets only. It is not
6543
+ # supported for directory bucket lifecycle configurations.
6544
+ #
6545
+ # </note>
6546
+ #
6388
6547
  # @return [Types::GetBucketLifecycleConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6389
6548
  #
6390
6549
  # * {Types::GetBucketLifecycleConfigurationOutput#rules #rules} => Array&lt;Types::LifecycleRule&gt;
@@ -6465,7 +6624,7 @@ module Aws::S3
6465
6624
  req.send_request(options)
6466
6625
  end
6467
6626
 
6468
- # <note markdown="1"> This operation is not supported by directory buckets.
6627
+ # <note markdown="1"> This operation is not supported for directory buckets.
6469
6628
  #
6470
6629
  # </note>
6471
6630
  #
@@ -6562,7 +6721,7 @@ module Aws::S3
6562
6721
  req.send_request(options)
6563
6722
  end
6564
6723
 
6565
- # <note markdown="1"> This operation is not supported by directory buckets.
6724
+ # <note markdown="1"> This operation is not supported for directory buckets.
6566
6725
  #
6567
6726
  # </note>
6568
6727
  #
@@ -6621,7 +6780,7 @@ module Aws::S3
6621
6780
  req.send_request(options)
6622
6781
  end
6623
6782
 
6624
- # <note markdown="1"> This operation is not supported by directory buckets.
6783
+ # <note markdown="1"> This operation is not supported for directory buckets.
6625
6784
  #
6626
6785
  # </note>
6627
6786
  #
@@ -6707,7 +6866,7 @@ module Aws::S3
6707
6866
  req.send_request(options)
6708
6867
  end
6709
6868
 
6710
- # <note markdown="1"> This operation is not supported by directory buckets.
6869
+ # <note markdown="1"> This operation is not supported for directory buckets.
6711
6870
  #
6712
6871
  # </note>
6713
6872
  #
@@ -6838,7 +6997,7 @@ module Aws::S3
6838
6997
  req.send_request(options)
6839
6998
  end
6840
6999
 
6841
- # <note markdown="1"> This operation is not supported by directory buckets.
7000
+ # <note markdown="1"> This operation is not supported for directory buckets.
6842
7001
  #
6843
7002
  # </note>
6844
7003
  #
@@ -6953,7 +7112,7 @@ module Aws::S3
6953
7112
  req.send_request(options)
6954
7113
  end
6955
7114
 
6956
- # <note markdown="1"> This operation is not supported by directory buckets.
7115
+ # <note markdown="1"> This operation is not supported for directory buckets.
6957
7116
  #
6958
7117
  # </note>
6959
7118
  #
@@ -7170,7 +7329,7 @@ module Aws::S3
7170
7329
  req.send_request(options, &block)
7171
7330
  end
7172
7331
 
7173
- # <note markdown="1"> This operation is not supported by directory buckets.
7332
+ # <note markdown="1"> This operation is not supported for directory buckets.
7174
7333
  #
7175
7334
  # </note>
7176
7335
  #
@@ -7235,7 +7394,7 @@ module Aws::S3
7235
7394
  req.send_request(options)
7236
7395
  end
7237
7396
 
7238
- # <note markdown="1"> This operation is not supported by directory buckets.
7397
+ # <note markdown="1"> This operation is not supported for directory buckets.
7239
7398
  #
7240
7399
  # </note>
7241
7400
  #
@@ -7358,7 +7517,7 @@ module Aws::S3
7358
7517
  req.send_request(options)
7359
7518
  end
7360
7519
 
7361
- # <note markdown="1"> This operation is not supported by directory buckets.
7520
+ # <note markdown="1"> This operation is not supported for directory buckets.
7362
7521
  #
7363
7522
  # </note>
7364
7523
  #
@@ -7424,7 +7583,7 @@ module Aws::S3
7424
7583
  req.send_request(options)
7425
7584
  end
7426
7585
 
7427
- # <note markdown="1"> This operation is not supported by directory buckets.
7586
+ # <note markdown="1"> This operation is not supported for directory buckets.
7428
7587
  #
7429
7588
  # </note>
7430
7589
  #
@@ -7510,7 +7669,7 @@ module Aws::S3
7510
7669
  req.send_request(options)
7511
7670
  end
7512
7671
 
7513
- # <note markdown="1"> This operation is not supported by directory buckets.
7672
+ # <note markdown="1"> This operation is not supported for directory buckets.
7514
7673
  #
7515
7674
  # </note>
7516
7675
  #
@@ -7587,7 +7746,7 @@ module Aws::S3
7587
7746
  req.send_request(options)
7588
7747
  end
7589
7748
 
7590
- # <note markdown="1"> This operation is not supported by directory buckets.
7749
+ # <note markdown="1"> This operation is not supported for directory buckets.
7591
7750
  #
7592
7751
  # </note>
7593
7752
  #
@@ -8344,7 +8503,7 @@ module Aws::S3
8344
8503
  req.send_request(options, &block)
8345
8504
  end
8346
8505
 
8347
- # <note markdown="1"> This operation is not supported by directory buckets.
8506
+ # <note markdown="1"> This operation is not supported for directory buckets.
8348
8507
  #
8349
8508
  # </note>
8350
8509
  #
@@ -8887,7 +9046,7 @@ module Aws::S3
8887
9046
  req.send_request(options)
8888
9047
  end
8889
9048
 
8890
- # <note markdown="1"> This operation is not supported by directory buckets.
9049
+ # <note markdown="1"> This operation is not supported for directory buckets.
8891
9050
  #
8892
9051
  # </note>
8893
9052
  #
@@ -8983,7 +9142,7 @@ module Aws::S3
8983
9142
  req.send_request(options)
8984
9143
  end
8985
9144
 
8986
- # <note markdown="1"> This operation is not supported by directory buckets.
9145
+ # <note markdown="1"> This operation is not supported for directory buckets.
8987
9146
  #
8988
9147
  # </note>
8989
9148
  #
@@ -9053,7 +9212,7 @@ module Aws::S3
9053
9212
  req.send_request(options)
9054
9213
  end
9055
9214
 
9056
- # <note markdown="1"> This operation is not supported by directory buckets.
9215
+ # <note markdown="1"> This operation is not supported for directory buckets.
9057
9216
  #
9058
9217
  # </note>
9059
9218
  #
@@ -9150,7 +9309,7 @@ module Aws::S3
9150
9309
  req.send_request(options)
9151
9310
  end
9152
9311
 
9153
- # <note markdown="1"> This operation is not supported by directory buckets.
9312
+ # <note markdown="1"> This operation is not supported for directory buckets.
9154
9313
  #
9155
9314
  # </note>
9156
9315
  #
@@ -9248,49 +9407,49 @@ module Aws::S3
9248
9407
  # * {Types::GetObjectTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
9249
9408
  #
9250
9409
  #
9251
- # @example Example: To retrieve tag set of an object
9410
+ # @example Example: To retrieve tag set of a specific object version
9252
9411
  #
9253
- # # The following example retrieves tag set of an object.
9412
+ # # The following example retrieves tag set of an object. The request specifies object version.
9254
9413
  #
9255
9414
  # resp = client.get_object_tagging({
9256
9415
  # bucket: "examplebucket",
9257
- # key: "HappyFace.jpg",
9416
+ # key: "exampleobject",
9417
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
9258
9418
  # })
9259
9419
  #
9260
9420
  # resp.to_h outputs the following:
9261
9421
  # {
9262
9422
  # tag_set: [
9263
9423
  # {
9264
- # key: "Key4",
9265
- # value: "Value4",
9266
- # },
9267
- # {
9268
- # key: "Key3",
9269
- # value: "Value3",
9424
+ # key: "Key1",
9425
+ # value: "Value1",
9270
9426
  # },
9271
9427
  # ],
9272
- # version_id: "null",
9428
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
9273
9429
  # }
9274
9430
  #
9275
- # @example Example: To retrieve tag set of a specific object version
9431
+ # @example Example: To retrieve tag set of an object
9276
9432
  #
9277
- # # The following example retrieves tag set of an object. The request specifies object version.
9433
+ # # The following example retrieves tag set of an object.
9278
9434
  #
9279
9435
  # resp = client.get_object_tagging({
9280
9436
  # bucket: "examplebucket",
9281
- # key: "exampleobject",
9282
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
9437
+ # key: "HappyFace.jpg",
9283
9438
  # })
9284
9439
  #
9285
9440
  # resp.to_h outputs the following:
9286
9441
  # {
9287
9442
  # tag_set: [
9288
9443
  # {
9289
- # key: "Key1",
9290
- # value: "Value1",
9444
+ # key: "Key4",
9445
+ # value: "Value4",
9446
+ # },
9447
+ # {
9448
+ # key: "Key3",
9449
+ # value: "Value3",
9291
9450
  # },
9292
9451
  # ],
9293
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
9452
+ # version_id: "null",
9294
9453
  # }
9295
9454
  #
9296
9455
  # @example Request syntax with placeholder values
@@ -9319,7 +9478,7 @@ module Aws::S3
9319
9478
  req.send_request(options)
9320
9479
  end
9321
9480
 
9322
- # <note markdown="1"> This operation is not supported by directory buckets.
9481
+ # <note markdown="1"> This operation is not supported for directory buckets.
9323
9482
  #
9324
9483
  # </note>
9325
9484
  #
@@ -9420,7 +9579,7 @@ module Aws::S3
9420
9579
  req.send_request(options, &block)
9421
9580
  end
9422
9581
 
9423
- # <note markdown="1"> This operation is not supported by directory buckets.
9582
+ # <note markdown="1"> This operation is not supported for directory buckets.
9424
9583
  #
9425
9584
  # </note>
9426
9585
  #
@@ -9782,7 +9941,7 @@ module Aws::S3
9782
9941
  # a `405 Method Not Allowed` error and the `Last-Modified:
9783
9942
  # timestamp` response header.
9784
9943
  #
9785
- # <note markdown="1"> * **Directory buckets** - Delete marker is not supported by
9944
+ # <note markdown="1"> * **Directory buckets** - Delete marker is not supported for
9786
9945
  # directory buckets.
9787
9946
  #
9788
9947
  # * **Directory buckets** - S3 Versioning isn't enabled and supported
@@ -10193,7 +10352,7 @@ module Aws::S3
10193
10352
  req.send_request(options)
10194
10353
  end
10195
10354
 
10196
- # <note markdown="1"> This operation is not supported by directory buckets.
10355
+ # <note markdown="1"> This operation is not supported for directory buckets.
10197
10356
  #
10198
10357
  # </note>
10199
10358
  #
@@ -10294,7 +10453,7 @@ module Aws::S3
10294
10453
  req.send_request(options)
10295
10454
  end
10296
10455
 
10297
- # <note markdown="1"> This operation is not supported by directory buckets.
10456
+ # <note markdown="1"> This operation is not supported for directory buckets.
10298
10457
  #
10299
10458
  # </note>
10300
10459
  #
@@ -10386,7 +10545,7 @@ module Aws::S3
10386
10545
  req.send_request(options)
10387
10546
  end
10388
10547
 
10389
- # <note markdown="1"> This operation is not supported by directory buckets.
10548
+ # <note markdown="1"> This operation is not supported for directory buckets.
10390
10549
  #
10391
10550
  # </note>
10392
10551
  #
@@ -10488,7 +10647,7 @@ module Aws::S3
10488
10647
  req.send_request(options)
10489
10648
  end
10490
10649
 
10491
- # <note markdown="1"> This operation is not supported by directory buckets.
10650
+ # <note markdown="1"> This operation is not supported for directory buckets.
10492
10651
  #
10493
10652
  # </note>
10494
10653
  #
@@ -10590,24 +10749,25 @@ module Aws::S3
10590
10749
  req.send_request(options)
10591
10750
  end
10592
10751
 
10593
- # <note markdown="1"> This operation is not supported by directory buckets.
10752
+ # <note markdown="1"> This operation is not supported for directory buckets.
10594
10753
  #
10595
10754
  # </note>
10596
10755
  #
10597
10756
  # Returns a list of all buckets owned by the authenticated sender of the
10598
- # request. To use this operation, you must have the
10599
- # `s3:ListAllMyBuckets` permission.
10757
+ # request. To grant IAM permission to use this operation, you must add
10758
+ # the `s3:ListAllMyBuckets` policy action.
10600
10759
  #
10601
10760
  # For information about Amazon S3 buckets, see [Creating, configuring,
10602
10761
  # and working with Amazon S3 buckets][1].
10603
10762
  #
10604
- # We strongly recommend using only paginated requests. Unpaginated
10605
- # requests are only supported for Amazon Web Services accounts set to
10606
- # the default general purpose bucket quota of 10,000. If you have an
10607
- # approved general purpose bucket quota above 10,000, you must send
10608
- # paginated requests to list your account’s buckets. All unpaginated
10609
- # ListBuckets requests will be rejected for Amazon Web Services accounts
10610
- # with a general purpose bucket quota greater than 10,000.
10763
+ # We strongly recommend using only paginated `ListBuckets` requests.
10764
+ # Unpaginated `ListBuckets` requests are only supported for Amazon Web
10765
+ # Services accounts set to the default general purpose bucket quota of
10766
+ # 10,000. If you have an approved general purpose bucket quota above
10767
+ # 10,000, you must send paginated `ListBuckets` requests to list your
10768
+ # account’s buckets. All unpaginated `ListBuckets` requests will be
10769
+ # rejected for Amazon Web Services accounts with a general purpose
10770
+ # bucket quota greater than 10,000.
10611
10771
  #
10612
10772
  #
10613
10773
  #
@@ -11105,97 +11265,97 @@ module Aws::S3
11105
11265
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
11106
11266
  #
11107
11267
  #
11108
- # @example Example: List next set of multipart uploads when previous result is truncated
11268
+ # @example Example: To list in-progress multipart uploads on a bucket
11109
11269
  #
11110
- # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
11111
- # # setup of multipart uploads.
11270
+ # # The following example lists in-progress multipart uploads on a specific bucket.
11112
11271
  #
11113
11272
  # resp = client.list_multipart_uploads({
11114
11273
  # bucket: "examplebucket",
11115
- # key_marker: "nextkeyfrompreviousresponse",
11116
- # max_uploads: 2,
11117
- # upload_id_marker: "valuefrompreviousresponse",
11118
11274
  # })
11119
11275
  #
11120
11276
  # resp.to_h outputs the following:
11121
11277
  # {
11122
- # bucket: "acl1",
11123
- # is_truncated: true,
11124
- # key_marker: "",
11125
- # max_uploads: 2,
11126
- # next_key_marker: "someobjectkey",
11127
- # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11128
- # upload_id_marker: "",
11129
11278
  # uploads: [
11130
11279
  # {
11131
11280
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
11132
11281
  # initiator: {
11133
- # display_name: "ownder-display-name",
11282
+ # display_name: "display-name",
11134
11283
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11135
11284
  # },
11136
11285
  # key: "JavaFile",
11137
11286
  # owner: {
11138
- # display_name: "mohanataws",
11139
- # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11287
+ # display_name: "display-name",
11288
+ # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11140
11289
  # },
11141
11290
  # storage_class: "STANDARD",
11142
- # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
11291
+ # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
11143
11292
  # },
11144
11293
  # {
11145
11294
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
11146
11295
  # initiator: {
11147
- # display_name: "ownder-display-name",
11296
+ # display_name: "display-name",
11148
11297
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11149
11298
  # },
11150
11299
  # key: "JavaFile",
11151
11300
  # owner: {
11152
- # display_name: "ownder-display-name",
11301
+ # display_name: "display-name",
11153
11302
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11154
11303
  # },
11155
11304
  # storage_class: "STANDARD",
11156
- # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11305
+ # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11157
11306
  # },
11158
11307
  # ],
11159
11308
  # }
11160
11309
  #
11161
- # @example Example: To list in-progress multipart uploads on a bucket
11310
+ # @example Example: List next set of multipart uploads when previous result is truncated
11162
11311
  #
11163
- # # The following example lists in-progress multipart uploads on a specific bucket.
11312
+ # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
11313
+ # # setup of multipart uploads.
11164
11314
  #
11165
11315
  # resp = client.list_multipart_uploads({
11166
11316
  # bucket: "examplebucket",
11317
+ # key_marker: "nextkeyfrompreviousresponse",
11318
+ # max_uploads: 2,
11319
+ # upload_id_marker: "valuefrompreviousresponse",
11167
11320
  # })
11168
11321
  #
11169
11322
  # resp.to_h outputs the following:
11170
11323
  # {
11324
+ # bucket: "acl1",
11325
+ # is_truncated: true,
11326
+ # key_marker: "",
11327
+ # max_uploads: 2,
11328
+ # next_key_marker: "someobjectkey",
11329
+ # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11330
+ # upload_id_marker: "",
11171
11331
  # uploads: [
11172
11332
  # {
11173
11333
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
11174
11334
  # initiator: {
11175
- # display_name: "display-name",
11335
+ # display_name: "ownder-display-name",
11176
11336
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11177
11337
  # },
11178
11338
  # key: "JavaFile",
11179
11339
  # owner: {
11180
- # display_name: "display-name",
11181
- # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11340
+ # display_name: "mohanataws",
11341
+ # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11182
11342
  # },
11183
11343
  # storage_class: "STANDARD",
11184
- # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
11344
+ # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
11185
11345
  # },
11186
11346
  # {
11187
11347
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
11188
11348
  # initiator: {
11189
- # display_name: "display-name",
11349
+ # display_name: "ownder-display-name",
11190
11350
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11191
11351
  # },
11192
11352
  # key: "JavaFile",
11193
11353
  # owner: {
11194
- # display_name: "display-name",
11354
+ # display_name: "ownder-display-name",
11195
11355
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
11196
11356
  # },
11197
11357
  # storage_class: "STANDARD",
11198
- # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11358
+ # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
11199
11359
  # },
11200
11360
  # ],
11201
11361
  # }
@@ -11249,7 +11409,7 @@ module Aws::S3
11249
11409
  req.send_request(options)
11250
11410
  end
11251
11411
 
11252
- # <note markdown="1"> This operation is not supported by directory buckets.
11412
+ # <note markdown="1"> This operation is not supported for directory buckets.
11253
11413
  #
11254
11414
  # </note>
11255
11415
  #
@@ -11488,7 +11648,7 @@ module Aws::S3
11488
11648
  req.send_request(options)
11489
11649
  end
11490
11650
 
11491
- # <note markdown="1"> This operation is not supported by directory buckets.
11651
+ # <note markdown="1"> This operation is not supported for directory buckets.
11492
11652
  #
11493
11653
  # </note>
11494
11654
  #
@@ -12382,7 +12542,7 @@ module Aws::S3
12382
12542
  req.send_request(options)
12383
12543
  end
12384
12544
 
12385
- # <note markdown="1"> This operation is not supported by directory buckets.
12545
+ # <note markdown="1"> This operation is not supported for directory buckets.
12386
12546
  #
12387
12547
  # </note>
12388
12548
  #
@@ -12481,7 +12641,7 @@ module Aws::S3
12481
12641
  req.send_request(options)
12482
12642
  end
12483
12643
 
12484
- # <note markdown="1"> This operation is not supported by directory buckets.
12644
+ # <note markdown="1"> This operation is not supported for directory buckets.
12485
12645
  #
12486
12646
  # </note>
12487
12647
  #
@@ -12774,7 +12934,7 @@ module Aws::S3
12774
12934
  req.send_request(options)
12775
12935
  end
12776
12936
 
12777
- # <note markdown="1"> This operation is not supported by directory buckets.
12937
+ # <note markdown="1"> This operation is not supported for directory buckets.
12778
12938
  #
12779
12939
  # </note>
12780
12940
  #
@@ -12910,7 +13070,7 @@ module Aws::S3
12910
13070
  req.send_request(options)
12911
13071
  end
12912
13072
 
12913
- # <note markdown="1"> This operation is not supported by directory buckets.
13073
+ # <note markdown="1"> This operation is not supported for directory buckets.
12914
13074
  #
12915
13075
  # </note>
12916
13076
  #
@@ -13317,7 +13477,7 @@ module Aws::S3
13317
13477
  req.send_request(options)
13318
13478
  end
13319
13479
 
13320
- # <note markdown="1"> This operation is not supported by directory buckets.
13480
+ # <note markdown="1"> This operation is not supported for directory buckets.
13321
13481
  #
13322
13482
  # </note>
13323
13483
  #
@@ -13442,7 +13602,7 @@ module Aws::S3
13442
13602
  req.send_request(options)
13443
13603
  end
13444
13604
 
13445
- # <note markdown="1"> This operation is not supported by directory buckets.
13605
+ # <note markdown="1"> This operation is not supported for directory buckets.
13446
13606
  #
13447
13607
  # </note>
13448
13608
  #
@@ -13594,15 +13754,15 @@ module Aws::S3
13594
13754
  req.send_request(options)
13595
13755
  end
13596
13756
 
13597
- # <note markdown="1"> This operation is not supported by directory buckets.
13598
- #
13599
- # </note>
13600
- #
13601
13757
  # For an updated version of this API, see
13602
13758
  # [PutBucketLifecycleConfiguration][1]. This version has been
13603
13759
  # deprecated. Existing lifecycle configurations will work. For new
13604
13760
  # lifecycle configurations, use the updated API.
13605
13761
  #
13762
+ # <note markdown="1"> This operation is not supported for directory buckets.
13763
+ #
13764
+ # </note>
13765
+ #
13606
13766
  # Creates a new lifecycle configuration for the bucket or replaces an
13607
13767
  # existing lifecycle configuration. For information about lifecycle
13608
13768
  # configuration, see [Object Lifecycle Management][2] in the *Amazon S3
@@ -13745,10 +13905,6 @@ module Aws::S3
13745
13905
  req.send_request(options)
13746
13906
  end
13747
13907
 
13748
- # <note markdown="1"> This operation is not supported by directory buckets.
13749
- #
13750
- # </note>
13751
- #
13752
13908
  # Creates a new lifecycle configuration for the bucket or replaces an
13753
13909
  # existing lifecycle configuration. Keep in mind that this will
13754
13910
  # overwrite an existing lifecycle configuration, so if you want to
@@ -13757,6 +13913,8 @@ module Aws::S3
13757
13913
  # configuration, see [Managing your storage lifecycle][1].
13758
13914
  #
13759
13915
  # Rules
13916
+ # Permissions
13917
+ # HTTP Host header syntax
13760
13918
  #
13761
13919
  # : You specify the lifecycle configuration in your request body. The
13762
13920
  # lifecycle configuration is specified as XML consisting of one or
@@ -13768,8 +13926,14 @@ module Aws::S3
13768
13926
  # size, or any combination of these. Accordingly, this section
13769
13927
  # describes the latest API. The previous version of the API supported
13770
13928
  # filtering based only on an object key name prefix, which is
13771
- # supported for backward compatibility. For the related API
13772
- # description, see [PutBucketLifecycle][2].
13929
+ # supported for backward compatibility for general purpose buckets.
13930
+ # For the related API description, see [PutBucketLifecycle][2].
13931
+ #
13932
+ # <note markdown="1"> Lifecyle configurations for directory buckets only support expiring
13933
+ # objects and cancelling multipart uploads. Expiring of versioned
13934
+ # objects,transitions and tag filters are not supported.
13935
+ #
13936
+ # </note>
13773
13937
  #
13774
13938
  # A lifecycle rule consists of the following:
13775
13939
  #
@@ -13789,40 +13953,61 @@ module Aws::S3
13789
13953
  #
13790
13954
  # For more information, see [Object Lifecycle Management][3] and
13791
13955
  # [Lifecycle Configuration Elements][4].
13956
+ # : * **General purpose bucket permissions** - By default, all Amazon S3
13957
+ # resources are private, including buckets, objects, and related
13958
+ # subresources (for example, lifecycle configuration and website
13959
+ # configuration). Only the resource owner (that is, the Amazon Web
13960
+ # Services account that created it) can access the resource. The
13961
+ # resource owner can optionally grant access permissions to others
13962
+ # by writing an access policy. For this operation, a user must have
13963
+ # the `s3:PutLifecycleConfiguration` permission.
13792
13964
  #
13793
- # Permissions
13965
+ # You can also explicitly deny permissions. An explicit deny also
13966
+ # supersedes any other permissions. If you want to block users or
13967
+ # accounts from removing or deleting objects from your bucket, you
13968
+ # must deny them permissions for the following actions:
13969
+ #
13970
+ # * `s3:DeleteObject`
13794
13971
  #
13795
- # : By default, all Amazon S3 resources are private, including buckets,
13796
- # objects, and related subresources (for example, lifecycle
13797
- # configuration and website configuration). Only the resource owner
13798
- # (that is, the Amazon Web Services account that created it) can
13799
- # access the resource. The resource owner can optionally grant access
13800
- # permissions to others by writing an access policy. For this
13801
- # operation, a user must get the `s3:PutLifecycleConfiguration`
13802
- # permission.
13972
+ # * `s3:DeleteObjectVersion`
13803
13973
  #
13804
- # You can also explicitly deny permissions. An explicit deny also
13805
- # supersedes any other permissions. If you want to block users or
13806
- # accounts from removing or deleting objects from your bucket, you
13807
- # must deny them permissions for the following actions:
13974
+ # * `s3:PutLifecycleConfiguration`
13808
13975
  #
13809
- # * `s3:DeleteObject`
13976
+ # For more information about permissions, see [Managing Access
13977
+ # Permissions to Your Amazon S3 Resources][5].
13978
+ # ^
13810
13979
  #
13811
- # * `s3:DeleteObjectVersion`
13980
+ # * **Directory bucket permissions** - You must have the
13981
+ # `s3express:PutLifecycleConfiguration` permission in an IAM
13982
+ # identity-based policy to use this operation. Cross-account access
13983
+ # to this API operation isn't supported. The resource owner can
13984
+ # optionally grant access permissions to others by creating a role
13985
+ # or user for them as long as they are within the same account as
13986
+ # the owner and resource.
13987
+ #
13988
+ # For more information about directory bucket policies and
13989
+ # permissions, see [Authorizing Regional endpoint APIs with IAM][6]
13990
+ # in the *Amazon S3 User Guide*.
13812
13991
  #
13813
- # * `s3:PutLifecycleConfiguration`
13992
+ # <note markdown="1"> <b>Directory buckets </b> - For directory buckets, you must make
13993
+ # requests for this API operation to the Regional endpoint. These
13994
+ # endpoints support path-style requests in the format
13995
+ # `https://s3express-control.region_code.amazonaws.com/bucket-name
13996
+ # `. Virtual-hosted-style requests aren't supported. For more
13997
+ # information, see [Regional and Zonal endpoints][7] in the *Amazon
13998
+ # S3 User Guide*.
13814
13999
  #
13815
- # For more information about permissions, see [Managing Access
13816
- # Permissions to Your Amazon S3 Resources][5].
14000
+ # </note>
13817
14001
  #
13818
- # The following operations are related to
13819
- # `PutBucketLifecycleConfiguration`:
14002
+ # : <b>Directory buckets </b> - The HTTP Host header syntax is
14003
+ # `s3express-control.region.amazonaws.com`.
13820
14004
  #
13821
- # * [Examples of Lifecycle Configuration][6]
14005
+ # The following operations are related to
14006
+ # `PutBucketLifecycleConfiguration`:
13822
14007
  #
13823
- # * [GetBucketLifecycleConfiguration][7]
14008
+ # * [GetBucketLifecycleConfiguration][8]
13824
14009
  #
13825
- # * [DeleteBucketLifecycle][8]
14010
+ # * [DeleteBucketLifecycle][9]
13826
14011
  #
13827
14012
  #
13828
14013
  #
@@ -13831,9 +14016,10 @@ module Aws::S3
13831
14016
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
13832
14017
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html
13833
14018
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
13834
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-configuration-examples.html
13835
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
13836
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html
14019
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html
14020
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
14021
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
14022
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html
13837
14023
  #
13838
14024
  # @option params [required, String] :bucket
13839
14025
  # The name of the bucket for which to set the configuration.
@@ -13862,10 +14048,20 @@ module Aws::S3
13862
14048
  # you provide does not match the actual owner of the bucket, the request
13863
14049
  # fails with the HTTP status code `403 Forbidden` (access denied).
13864
14050
  #
14051
+ # <note markdown="1"> This parameter applies to general purpose buckets only. It is not
14052
+ # supported for directory bucket lifecycle configurations.
14053
+ #
14054
+ # </note>
14055
+ #
13865
14056
  # @option params [String] :transition_default_minimum_object_size
13866
14057
  # Indicates which default minimum object size behavior is applied to the
13867
14058
  # lifecycle configuration.
13868
14059
  #
14060
+ # <note markdown="1"> This parameter applies to general purpose buckets only. It is not
14061
+ # supported for directory bucket lifecycle configurations.
14062
+ #
14063
+ # </note>
14064
+ #
13869
14065
  # * `all_storage_classes_128K` - Objects smaller than 128 KB will not
13870
14066
  # transition to any storage class by default.
13871
14067
  #
@@ -13989,7 +14185,7 @@ module Aws::S3
13989
14185
  req.send_request(options)
13990
14186
  end
13991
14187
 
13992
- # <note markdown="1"> This operation is not supported by directory buckets.
14188
+ # <note markdown="1"> This operation is not supported for directory buckets.
13993
14189
  #
13994
14190
  # </note>
13995
14191
  #
@@ -14172,7 +14368,7 @@ module Aws::S3
14172
14368
  req.send_request(options)
14173
14369
  end
14174
14370
 
14175
- # <note markdown="1"> This operation is not supported by directory buckets.
14371
+ # <note markdown="1"> This operation is not supported for directory buckets.
14176
14372
  #
14177
14373
  # </note>
14178
14374
  #
@@ -14276,7 +14472,7 @@ module Aws::S3
14276
14472
  req.send_request(options)
14277
14473
  end
14278
14474
 
14279
- # <note markdown="1"> This operation is not supported by directory buckets.
14475
+ # <note markdown="1"> This operation is not supported for directory buckets.
14280
14476
  #
14281
14477
  # </note>
14282
14478
  #
@@ -14362,7 +14558,7 @@ module Aws::S3
14362
14558
  req.send_request(options)
14363
14559
  end
14364
14560
 
14365
- # <note markdown="1"> This operation is not supported by directory buckets.
14561
+ # <note markdown="1"> This operation is not supported for directory buckets.
14366
14562
  #
14367
14563
  # </note>
14368
14564
  #
@@ -14546,7 +14742,7 @@ module Aws::S3
14546
14742
  req.send_request(options)
14547
14743
  end
14548
14744
 
14549
- # <note markdown="1"> This operation is not supported by directory buckets.
14745
+ # <note markdown="1"> This operation is not supported for directory buckets.
14550
14746
  #
14551
14747
  # </note>
14552
14748
  #
@@ -14815,7 +15011,7 @@ module Aws::S3
14815
15011
  req.send_request(options)
14816
15012
  end
14817
15013
 
14818
- # <note markdown="1"> This operation is not supported by directory buckets.
15014
+ # <note markdown="1"> This operation is not supported for directory buckets.
14819
15015
  #
14820
15016
  # </note>
14821
15017
  #
@@ -15053,7 +15249,7 @@ module Aws::S3
15053
15249
  req.send_request(options)
15054
15250
  end
15055
15251
 
15056
- # <note markdown="1"> This operation is not supported by directory buckets.
15252
+ # <note markdown="1"> This operation is not supported for directory buckets.
15057
15253
  #
15058
15254
  # </note>
15059
15255
  #
@@ -15150,7 +15346,7 @@ module Aws::S3
15150
15346
  req.send_request(options)
15151
15347
  end
15152
15348
 
15153
- # <note markdown="1"> This operation is not supported by directory buckets.
15349
+ # <note markdown="1"> This operation is not supported for directory buckets.
15154
15350
  #
15155
15351
  # </note>
15156
15352
  #
@@ -15301,15 +15497,17 @@ module Aws::S3
15301
15497
  req.send_request(options)
15302
15498
  end
15303
15499
 
15304
- # <note markdown="1"> This operation is not supported by directory buckets.
15500
+ # <note markdown="1"> This operation is not supported for directory buckets.
15305
15501
  #
15306
15502
  # </note>
15307
15503
  #
15308
15504
  # <note markdown="1"> When you enable versioning on a bucket for the first time, it might
15309
- # take a short amount of time for the change to be fully propagated. We
15310
- # recommend that you wait for 15 minutes after enabling versioning
15311
- # before issuing write operations (`PUT` or `DELETE`) on objects in the
15312
- # bucket.
15505
+ # take a short amount of time for the change to be fully propagated.
15506
+ # While this change is propagating, you may encounter intermittent `HTTP
15507
+ # 404 NoSuchKey` errors for requests to objects created or updated after
15508
+ # enabling versioning. We recommend that you wait for 15 minutes after
15509
+ # enabling versioning before issuing write operations (`PUT` or
15510
+ # `DELETE`) on objects in the bucket.
15313
15511
  #
15314
15512
  # </note>
15315
15513
  #
@@ -15440,7 +15638,7 @@ module Aws::S3
15440
15638
  req.send_request(options)
15441
15639
  end
15442
15640
 
15443
- # <note markdown="1"> This operation is not supported by directory buckets.
15641
+ # <note markdown="1"> This operation is not supported for directory buckets.
15444
15642
  #
15445
15643
  # </note>
15446
15644
  #
@@ -15999,6 +16197,26 @@ module Aws::S3
15999
16197
  #
16000
16198
  # [1]: https://www.rfc-editor.org/rfc/rfc7234#section-5.3
16001
16199
  #
16200
+ # @option params [String] :if_match
16201
+ # Uploads the object only if the ETag (entity tag) value provided during
16202
+ # the WRITE operation matches the ETag of the object in S3. If the ETag
16203
+ # values do not match, the operation returns a `412 Precondition Failed`
16204
+ # error.
16205
+ #
16206
+ # If a conflicting operation occurs during the upload S3 returns a `409
16207
+ # ConditionalRequestConflict` response. On a 409 failure you should
16208
+ # fetch the object's ETag and retry the upload.
16209
+ #
16210
+ # Expects the ETag value as a string.
16211
+ #
16212
+ # For more information about conditional requests, see [RFC 7232][1], or
16213
+ # [Conditional requests][2] in the *Amazon S3 User Guide*.
16214
+ #
16215
+ #
16216
+ #
16217
+ # [1]: https://tools.ietf.org/html/rfc7232
16218
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
16219
+ #
16002
16220
  # @option params [String] :if_none_match
16003
16221
  # Uploads the object only if the object key name does not already exist
16004
16222
  # in the bucket specified. Otherwise, Amazon S3 returns a `412
@@ -16058,6 +16276,17 @@ module Aws::S3
16058
16276
  # @option params [required, String] :key
16059
16277
  # Object key for which the PUT action was initiated.
16060
16278
  #
16279
+ # @option params [Integer] :write_offset_bytes
16280
+ # Specifies the offset for appending data to existing objects in bytes.
16281
+ # The offset must be equal to the size of the existing object being
16282
+ # appended to. If no object exists, setting this header to 0 will create
16283
+ # a new object.
16284
+ #
16285
+ # <note markdown="1"> This functionality is only supported for objects in the Amazon S3
16286
+ # Express One Zone storage class in directory buckets.
16287
+ #
16288
+ # </note>
16289
+ #
16061
16290
  # @option params [Hash<String,String>] :metadata
16062
16291
  # A map of metadata to store with the object in S3.
16063
16292
  #
@@ -16360,63 +16589,63 @@ module Aws::S3
16360
16589
  # * {Types::PutObjectOutput#ssekms_key_id #ssekms_key_id} => String
16361
16590
  # * {Types::PutObjectOutput#ssekms_encryption_context #ssekms_encryption_context} => String
16362
16591
  # * {Types::PutObjectOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
16592
+ # * {Types::PutObjectOutput#size #size} => Integer
16363
16593
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
16364
16594
  #
16365
16595
  #
16366
- # @example Example: To upload an object and specify optional tags
16596
+ # @example Example: To upload an object and specify server-side encryption and object tags
16367
16597
  #
16368
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
16369
- # # S3 returns version ID of the newly created object.
16598
+ # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
16599
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
16370
16600
  #
16371
16601
  # resp = client.put_object({
16372
- # body: "c:\\HappyFace.jpg",
16602
+ # body: "filetoupload",
16373
16603
  # bucket: "examplebucket",
16374
- # key: "HappyFace.jpg",
16604
+ # key: "exampleobject",
16605
+ # server_side_encryption: "AES256",
16375
16606
  # tagging: "key1=value1&key2=value2",
16376
16607
  # })
16377
16608
  #
16378
16609
  # resp.to_h outputs the following:
16379
16610
  # {
16380
16611
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16381
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
16612
+ # server_side_encryption: "AES256",
16613
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
16382
16614
  # }
16383
16615
  #
16384
- # @example Example: To upload an object and specify canned ACL.
16616
+ # @example Example: To upload an object
16385
16617
  #
16386
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
16387
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
16618
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
16619
+ # # syntax. S3 returns VersionId of the newly created object.
16388
16620
  #
16389
16621
  # resp = client.put_object({
16390
- # acl: "authenticated-read",
16391
- # body: "filetoupload",
16622
+ # body: "HappyFace.jpg",
16392
16623
  # bucket: "examplebucket",
16393
- # key: "exampleobject",
16624
+ # key: "HappyFace.jpg",
16394
16625
  # })
16395
16626
  #
16396
16627
  # resp.to_h outputs the following:
16397
16628
  # {
16398
16629
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16399
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
16630
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
16400
16631
  # }
16401
16632
  #
16402
- # @example Example: To upload an object and specify server-side encryption and object tags
16633
+ # @example Example: To upload an object and specify optional tags
16403
16634
  #
16404
- # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
16405
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
16635
+ # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
16636
+ # # S3 returns version ID of the newly created object.
16406
16637
  #
16407
16638
  # resp = client.put_object({
16408
- # body: "filetoupload",
16639
+ # body: "c:\\HappyFace.jpg",
16409
16640
  # bucket: "examplebucket",
16410
- # key: "exampleobject",
16411
- # server_side_encryption: "AES256",
16641
+ # key: "HappyFace.jpg",
16412
16642
  # tagging: "key1=value1&key2=value2",
16413
16643
  # })
16414
16644
  #
16415
16645
  # resp.to_h outputs the following:
16416
16646
  # {
16417
16647
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16418
- # server_side_encryption: "AES256",
16419
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
16648
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
16420
16649
  # }
16421
16650
  #
16422
16651
  # @example Example: To upload object and specify user-defined metadata
@@ -16440,6 +16669,24 @@ module Aws::S3
16440
16669
  # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
16441
16670
  # }
16442
16671
  #
16672
+ # @example Example: To upload an object and specify canned ACL.
16673
+ #
16674
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
16675
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
16676
+ #
16677
+ # resp = client.put_object({
16678
+ # acl: "authenticated-read",
16679
+ # body: "filetoupload",
16680
+ # bucket: "examplebucket",
16681
+ # key: "exampleobject",
16682
+ # })
16683
+ #
16684
+ # resp.to_h outputs the following:
16685
+ # {
16686
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16687
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
16688
+ # }
16689
+ #
16443
16690
  # @example Example: To upload an object (specify optional headers)
16444
16691
  #
16445
16692
  # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
@@ -16476,23 +16723,6 @@ module Aws::S3
16476
16723
  # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
16477
16724
  # }
16478
16725
  #
16479
- # @example Example: To upload an object
16480
- #
16481
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
16482
- # # syntax. S3 returns VersionId of the newly created object.
16483
- #
16484
- # resp = client.put_object({
16485
- # body: "HappyFace.jpg",
16486
- # bucket: "examplebucket",
16487
- # key: "HappyFace.jpg",
16488
- # })
16489
- #
16490
- # resp.to_h outputs the following:
16491
- # {
16492
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16493
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
16494
- # }
16495
- #
16496
16726
  # @example Streaming a file from disk
16497
16727
  # # upload file from disk in a single request, may not exceed 5GB
16498
16728
  # File.open('/source/file/path', 'rb') do |file|
@@ -16518,12 +16748,14 @@ module Aws::S3
16518
16748
  # checksum_sha1: "ChecksumSHA1",
16519
16749
  # checksum_sha256: "ChecksumSHA256",
16520
16750
  # expires: Time.now,
16751
+ # if_match: "IfMatch",
16521
16752
  # if_none_match: "IfNoneMatch",
16522
16753
  # grant_full_control: "GrantFullControl",
16523
16754
  # grant_read: "GrantRead",
16524
16755
  # grant_read_acp: "GrantReadACP",
16525
16756
  # grant_write_acp: "GrantWriteACP",
16526
16757
  # key: "ObjectKey", # required
16758
+ # write_offset_bytes: 1,
16527
16759
  # metadata: {
16528
16760
  # "MetadataKey" => "MetadataValue",
16529
16761
  # },
@@ -16559,6 +16791,7 @@ module Aws::S3
16559
16791
  # resp.ssekms_key_id #=> String
16560
16792
  # resp.ssekms_encryption_context #=> String
16561
16793
  # resp.bucket_key_enabled #=> Boolean
16794
+ # resp.size #=> Integer
16562
16795
  # resp.request_charged #=> String, one of "requester"
16563
16796
  #
16564
16797
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObject AWS API Documentation
@@ -16570,7 +16803,7 @@ module Aws::S3
16570
16803
  req.send_request(options)
16571
16804
  end
16572
16805
 
16573
- # <note markdown="1"> This operation is not supported by directory buckets.
16806
+ # <note markdown="1"> This operation is not supported for directory buckets.
16574
16807
  #
16575
16808
  # </note>
16576
16809
  #
@@ -16939,7 +17172,7 @@ module Aws::S3
16939
17172
  req.send_request(options)
16940
17173
  end
16941
17174
 
16942
- # <note markdown="1"> This operation is not supported by directory buckets.
17175
+ # <note markdown="1"> This operation is not supported for directory buckets.
16943
17176
  #
16944
17177
  # </note>
16945
17178
  #
@@ -17058,7 +17291,7 @@ module Aws::S3
17058
17291
  req.send_request(options)
17059
17292
  end
17060
17293
 
17061
- # <note markdown="1"> This operation is not supported by directory buckets.
17294
+ # <note markdown="1"> This operation is not supported for directory buckets.
17062
17295
  #
17063
17296
  # </note>
17064
17297
  #
@@ -17177,7 +17410,7 @@ module Aws::S3
17177
17410
  req.send_request(options)
17178
17411
  end
17179
17412
 
17180
- # <note markdown="1"> This operation is not supported by directory buckets.
17413
+ # <note markdown="1"> This operation is not supported for directory buckets.
17181
17414
  #
17182
17415
  # </note>
17183
17416
  #
@@ -17306,7 +17539,7 @@ module Aws::S3
17306
17539
  req.send_request(options)
17307
17540
  end
17308
17541
 
17309
- # <note markdown="1"> This operation is not supported by directory buckets.
17542
+ # <note markdown="1"> This operation is not supported for directory buckets.
17310
17543
  #
17311
17544
  # </note>
17312
17545
  #
@@ -17505,7 +17738,7 @@ module Aws::S3
17505
17738
  req.send_request(options)
17506
17739
  end
17507
17740
 
17508
- # <note markdown="1"> This operation is not supported by directory buckets.
17741
+ # <note markdown="1"> This operation is not supported for directory buckets.
17509
17742
  #
17510
17743
  # </note>
17511
17744
  #
@@ -17613,7 +17846,7 @@ module Aws::S3
17613
17846
  req.send_request(options)
17614
17847
  end
17615
17848
 
17616
- # <note markdown="1"> This operation is not supported by directory buckets.
17849
+ # <note markdown="1"> This operation is not supported for directory buckets.
17617
17850
  #
17618
17851
  # </note>
17619
17852
  #
@@ -17997,7 +18230,7 @@ module Aws::S3
17997
18230
  req.send_request(options)
17998
18231
  end
17999
18232
 
18000
- # <note markdown="1"> This operation is not supported by directory buckets.
18233
+ # <note markdown="1"> This operation is not supported for directory buckets.
18001
18234
  #
18002
18235
  # </note>
18003
18236
  #
@@ -19429,7 +19662,7 @@ module Aws::S3
19429
19662
  req.send_request(options)
19430
19663
  end
19431
19664
 
19432
- # <note markdown="1"> This operation is not supported by directory buckets.
19665
+ # <note markdown="1"> This operation is not supported for directory buckets.
19433
19666
  #
19434
19667
  # </note>
19435
19668
  #
@@ -19838,7 +20071,7 @@ module Aws::S3
19838
20071
  tracer: tracer
19839
20072
  )
19840
20073
  context[:gem_name] = 'aws-sdk-s3'
19841
- context[:gem_version] = '1.172.0'
20074
+ context[:gem_version] = '1.174.0'
19842
20075
  Seahorse::Client::Request.new(handlers, context)
19843
20076
  end
19844
20077