aws-sdk-s3 1.108.0 → 1.111.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
30
31
  require 'aws-sdk-core/plugins/protocols/rest_xml.rb'
31
32
  require 'aws-sdk-s3/plugins/accelerate.rb'
32
33
  require 'aws-sdk-s3/plugins/arn.rb'
@@ -91,6 +92,7 @@ module Aws::S3
91
92
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
92
93
  add_plugin(Aws::Plugins::TransferEncoding)
93
94
  add_plugin(Aws::Plugins::HttpChecksum)
95
+ add_plugin(Aws::Plugins::DefaultsMode)
94
96
  add_plugin(Aws::Plugins::Protocols::RestXml)
95
97
  add_plugin(Aws::S3::Plugins::Accelerate)
96
98
  add_plugin(Aws::S3::Plugins::ARN)
@@ -155,7 +157,9 @@ module Aws::S3
155
157
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
156
158
  # are very aggressive. Construct and pass an instance of
157
159
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
158
- # enable retries and extended timeouts.
160
+ # enable retries and extended timeouts. Instance profile credential
161
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
162
+ # to true.
159
163
  #
160
164
  # @option options [required, String] :region
161
165
  # The AWS region to connect to. The configured `:region` is
@@ -216,6 +220,10 @@ module Aws::S3
216
220
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
217
221
  # a clock skew correction and retry requests with skewed client clocks.
218
222
  #
223
+ # @option options [String] :defaults_mode ("legacy")
224
+ # See {Aws::DefaultsModeConfiguration} for a list of the
225
+ # accepted modes and the configuration defaults that are included.
226
+ #
219
227
  # @option options [Boolean] :disable_host_prefix_injection (false)
220
228
  # Set to true to disable SDK automatically adding host prefix
221
229
  # to default service endpoint when available.
@@ -379,7 +387,7 @@ module Aws::S3
379
387
  # seconds to wait when opening a HTTP session before raising a
380
388
  # `Timeout::Error`.
381
389
  #
382
- # @option options [Integer] :http_read_timeout (60) The default
390
+ # @option options [Float] :http_read_timeout (60) The default
383
391
  # number of seconds to wait for response data. This value can
384
392
  # safely be set per-request on the session.
385
393
  #
@@ -395,6 +403,9 @@ module Aws::S3
395
403
  # disables this behaviour. This value can safely be set per
396
404
  # request on the session.
397
405
  #
406
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
407
+ # in seconds.
408
+ #
398
409
  # @option options [Boolean] :http_wire_trace (false) When `true`,
399
410
  # HTTP debug output will be sent to the `:logger`.
400
411
  #
@@ -896,11 +907,28 @@ module Aws::S3
896
907
  # Control List (ACL) Overview][10] and [Managing ACLs Using the REST
897
908
  # API][11].
898
909
  #
910
+ # If the bucket that you're copying objects to uses the bucket owner
911
+ # enforced setting for S3 Object Ownership, ACLs are disabled and no
912
+ # longer affect permissions. Buckets that use this setting only accept
913
+ # PUT requests that don't specify an ACL or PUT requests that specify
914
+ # bucket owner full control ACLs, such as the
915
+ # `bucket-owner-full-control` canned ACL or an equivalent form of this
916
+ # ACL expressed in the XML format.
917
+ #
918
+ # For more information, see [ Controlling ownership of objects and
919
+ # disabling ACLs][12] in the *Amazon S3 User Guide*.
920
+ #
921
+ # <note markdown="1"> If your bucket uses the bucket owner enforced setting for Object
922
+ # Ownership, all objects written to the bucket by any account will be
923
+ # owned by the bucket owner.
924
+ #
925
+ # </note>
926
+ #
899
927
  # **Storage Class Options**
900
928
  #
901
929
  # You can use the `CopyObject` action to change the storage class of an
902
930
  # object that is already stored in Amazon S3 using the `StorageClass`
903
- # parameter. For more information, see [Storage Classes][12] in the
931
+ # parameter. For more information, see [Storage Classes][13] in the
904
932
  # *Amazon S3 User Guide*.
905
933
  #
906
934
  # **Versioning**
@@ -921,15 +949,15 @@ module Aws::S3
921
949
  #
922
950
  # If the source object's storage class is GLACIER, you must restore a
923
951
  # copy of this object before you can use it as a source object for the
924
- # copy operation. For more information, see [RestoreObject][13].
952
+ # copy operation. For more information, see [RestoreObject][14].
925
953
  #
926
954
  # The following operations are related to `CopyObject`\:
927
955
  #
928
- # * [PutObject][14]
956
+ # * [PutObject][15]
929
957
  #
930
- # * [GetObject][15]
958
+ # * [GetObject][16]
931
959
  #
932
- # For more information, see [Copying Objects][16].
960
+ # For more information, see [Copying Objects][17].
933
961
  #
934
962
  #
935
963
  #
@@ -944,11 +972,12 @@ module Aws::S3
944
972
  # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html
945
973
  # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
946
974
  # [11]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html
947
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
948
- # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
949
- # [14]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
950
- # [15]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
951
- # [16]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
975
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
976
+ # [13]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
977
+ # [14]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
978
+ # [15]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
979
+ # [16]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
980
+ # [17]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
952
981
  #
953
982
  # @option params [String] :acl
954
983
  # The canned ACL to apply to the object.
@@ -1270,7 +1299,7 @@ module Aws::S3
1270
1299
  # metadata_directive: "COPY", # accepts COPY, REPLACE
1271
1300
  # tagging_directive: "COPY", # accepts COPY, REPLACE
1272
1301
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
1273
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
1302
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
1274
1303
  # website_redirect_location: "WebsiteRedirectLocation",
1275
1304
  # sse_customer_algorithm: "SSECustomerAlgorithm",
1276
1305
  # sse_customer_key: "SSECustomerKey",
@@ -1343,22 +1372,33 @@ module Aws::S3
1343
1372
  #
1344
1373
  # </note>
1345
1374
  #
1375
+ # **Access control lists (ACLs)**
1376
+ #
1346
1377
  # When creating a bucket using this operation, you can optionally
1347
- # specify the accounts or groups that should be granted specific
1348
- # permissions on the bucket. There are two ways to grant the appropriate
1349
- # permissions using the request headers.
1378
+ # configure the bucket ACL to specify the accounts or groups that should
1379
+ # be granted specific permissions on the bucket.
1380
+ #
1381
+ # If your CreateBucket request sets bucket owner enforced for S3 Object
1382
+ # Ownership and specifies a bucket ACL that provides access to an
1383
+ # external Amazon Web Services account, your request fails with a `400`
1384
+ # error and returns the `InvalidBucketAclWithObjectOwnership` error
1385
+ # code. For more information, see [Controlling object ownership][5] in
1386
+ # the *Amazon S3 User Guide*.
1387
+ #
1388
+ # There are two ways to grant the appropriate permissions using the
1389
+ # request headers.
1350
1390
  #
1351
1391
  # * Specify a canned ACL using the `x-amz-acl` request header. Amazon S3
1352
1392
  # supports a set of predefined ACLs, known as *canned ACLs*. Each
1353
1393
  # canned ACL has a predefined set of grantees and permissions. For
1354
- # more information, see [Canned ACL][5].
1394
+ # more information, see [Canned ACL][6].
1355
1395
  #
1356
1396
  # * Specify access permissions explicitly using the `x-amz-grant-read`,
1357
1397
  # `x-amz-grant-write`, `x-amz-grant-read-acp`,
1358
1398
  # `x-amz-grant-write-acp`, and `x-amz-grant-full-control` headers.
1359
1399
  # These headers map to the set of permissions Amazon S3 supports in an
1360
1400
  # ACL. For more information, see [Access control list (ACL)
1361
- # overview][6].
1401
+ # overview][7].
1362
1402
  #
1363
1403
  # You specify each grantee as a type=value pair, where the type is one
1364
1404
  # of the following:
@@ -1391,7 +1431,7 @@ module Aws::S3
1391
1431
  # * South America (São Paulo)
1392
1432
  #
1393
1433
  # For a list of all the Amazon S3 supported Regions and endpoints,
1394
- # see [Regions and Endpoints][7] in the Amazon Web Services General
1434
+ # see [Regions and Endpoints][8] in the Amazon Web Services General
1395
1435
  # Reference.
1396
1436
  #
1397
1437
  # </note>
@@ -1409,22 +1449,29 @@ module Aws::S3
1409
1449
  #
1410
1450
  # **Permissions**
1411
1451
  #
1412
- # If your `CreateBucket` request specifies ACL permissions and the ACL
1413
- # is public-read, public-read-write, authenticated-read, or if you
1414
- # specify access permissions explicitly through any other ACL, both
1415
- # `s3:CreateBucket` and `s3:PutBucketAcl` permissions are needed. If the
1416
- # ACL the `CreateBucket` request is private, only `s3:CreateBucket`
1417
- # permission is needed.
1452
+ # In addition to `s3:CreateBucket`, the following permissions are
1453
+ # required when your CreateBucket includes specific headers:
1418
1454
  #
1419
- # If `ObjectLockEnabledForBucket` is set to true in your `CreateBucket`
1420
- # request, `s3:PutBucketObjectLockConfiguration` and
1421
- # `s3:PutBucketVersioning` permissions are required.
1455
+ # * **ACLs** - If your `CreateBucket` request specifies ACL permissions
1456
+ # and the ACL is public-read, public-read-write, authenticated-read,
1457
+ # or if you specify access permissions explicitly through any other
1458
+ # ACL, both `s3:CreateBucket` and `s3:PutBucketAcl` permissions are
1459
+ # needed. If the ACL the `CreateBucket` request is private or doesn't
1460
+ # specify any ACLs, only `s3:CreateBucket` permission is needed.
1461
+ #
1462
+ # * **Object Lock** - If `ObjectLockEnabledForBucket` is set to true in
1463
+ # your `CreateBucket` request, `s3:PutBucketObjectLockConfiguration`
1464
+ # and `s3:PutBucketVersioning` permissions are required.
1465
+ #
1466
+ # * **S3 Object Ownership** - If your CreateBucket request includes the
1467
+ # the `x-amz-object-ownership` header, `s3:PutBucketOwnershipControls`
1468
+ # permission is required.
1422
1469
  #
1423
1470
  # The following operations are related to `CreateBucket`\:
1424
1471
  #
1425
- # * [PutObject][8]
1472
+ # * [PutObject][9]
1426
1473
  #
1427
- # * [DeleteBucket][9]
1474
+ # * [DeleteBucket][10]
1428
1475
  #
1429
1476
  #
1430
1477
  #
@@ -1432,11 +1479,12 @@ module Aws::S3
1432
1479
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html
1433
1480
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro
1434
1481
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html
1435
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
1436
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
1437
- # [7]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
1438
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1439
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
1482
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
1483
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
1484
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html
1485
+ # [8]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
1486
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1487
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
1440
1488
  #
1441
1489
  # @option params [String] :acl
1442
1490
  # The canned ACL to apply to the bucket.
@@ -1470,38 +1518,56 @@ module Aws::S3
1470
1518
  # Specifies whether you want S3 Object Lock to be enabled for the new
1471
1519
  # bucket.
1472
1520
  #
1521
+ # @option params [String] :object_ownership
1522
+ # The container element for object ownership for a bucket's ownership
1523
+ # controls.
1524
+ #
1525
+ # BucketOwnerPreferred - Objects uploaded to the bucket change ownership
1526
+ # to the bucket owner if the objects are uploaded with the
1527
+ # `bucket-owner-full-control` canned ACL.
1528
+ #
1529
+ # ObjectWriter - The uploading account will own the object if the object
1530
+ # is uploaded with the `bucket-owner-full-control` canned ACL.
1531
+ #
1532
+ # BucketOwnerEnforced - Access control lists (ACLs) are disabled and no
1533
+ # longer affect permissions. The bucket owner automatically owns and has
1534
+ # full control over every object in the bucket. The bucket only accepts
1535
+ # PUT requests that don't specify an ACL or bucket owner full control
1536
+ # ACLs, such as the `bucket-owner-full-control` canned ACL or an
1537
+ # equivalent form of this ACL expressed in the XML format.
1538
+ #
1473
1539
  # @return [Types::CreateBucketOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1474
1540
  #
1475
1541
  # * {Types::CreateBucketOutput#location #location} => String
1476
1542
  #
1477
1543
  #
1478
- # @example Example: To create a bucket
1544
+ # @example Example: To create a bucket in a specific region
1479
1545
  #
1480
- # # The following example creates a bucket.
1546
+ # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1481
1547
  #
1482
1548
  # resp = client.create_bucket({
1483
1549
  # bucket: "examplebucket",
1550
+ # create_bucket_configuration: {
1551
+ # location_constraint: "eu-west-1",
1552
+ # },
1484
1553
  # })
1485
1554
  #
1486
1555
  # resp.to_h outputs the following:
1487
1556
  # {
1488
- # location: "/examplebucket",
1557
+ # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1489
1558
  # }
1490
1559
  #
1491
- # @example Example: To create a bucket in a specific region
1560
+ # @example Example: To create a bucket
1492
1561
  #
1493
- # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1562
+ # # The following example creates a bucket.
1494
1563
  #
1495
1564
  # resp = client.create_bucket({
1496
1565
  # bucket: "examplebucket",
1497
- # create_bucket_configuration: {
1498
- # location_constraint: "eu-west-1",
1499
- # },
1500
1566
  # })
1501
1567
  #
1502
1568
  # resp.to_h outputs the following:
1503
1569
  # {
1504
- # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1570
+ # location: "/examplebucket",
1505
1571
  # }
1506
1572
  #
1507
1573
  # @example Request syntax with placeholder values
@@ -1518,6 +1584,7 @@ module Aws::S3
1518
1584
  # grant_write: "GrantWrite",
1519
1585
  # grant_write_acp: "GrantWriteACP",
1520
1586
  # object_lock_enabled_for_bucket: false,
1587
+ # object_ownership: "BucketOwnerPreferred", # accepts BucketOwnerPreferred, ObjectWriter, BucketOwnerEnforced
1521
1588
  # })
1522
1589
  #
1523
1590
  # @example Response structure
@@ -1996,7 +2063,7 @@ module Aws::S3
1996
2063
  # "MetadataKey" => "MetadataValue",
1997
2064
  # },
1998
2065
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
1999
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
2066
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
2000
2067
  # website_redirect_location: "WebsiteRedirectLocation",
2001
2068
  # sse_customer_algorithm: "SSECustomerAlgorithm",
2002
2069
  # sse_customer_key: "SSECustomerKey",
@@ -2265,18 +2332,17 @@ module Aws::S3
2265
2332
  # storage costs by automatically moving data to the most cost-effective
2266
2333
  # storage access tier, without performance impact or operational
2267
2334
  # overhead. S3 Intelligent-Tiering delivers automatic cost savings in
2268
- # two low latency and high throughput access tiers. For data that can be
2269
- # accessed asynchronously, you can choose to activate automatic
2270
- # archiving capabilities within the S3 Intelligent-Tiering storage
2271
- # class.
2335
+ # three low latency and high throughput access tiers. To get the lowest
2336
+ # storage cost on data that can be accessed in minutes to hours, you can
2337
+ # choose to activate additional archiving capabilities.
2272
2338
  #
2273
2339
  # The S3 Intelligent-Tiering storage class is the ideal storage class
2274
2340
  # for data with unknown, changing, or unpredictable access patterns,
2275
2341
  # independent of object size or retention period. If the size of an
2276
- # object is less than 128 KB, it is not eligible for auto-tiering.
2277
- # Smaller objects can be stored, but they are always charged at the
2278
- # Frequent Access tier rates in the S3 Intelligent-Tiering storage
2279
- # class.
2342
+ # object is less than 128 KB, it is not monitored and not eligible for
2343
+ # auto-tiering. Smaller objects can be stored, but they are always
2344
+ # charged at the Frequent Access tier rates in the S3
2345
+ # Intelligent-Tiering storage class.
2280
2346
  #
2281
2347
  # For more information, see [Storage class for automatically optimizing
2282
2348
  # frequently and infrequently accessed objects][1].
@@ -3437,15 +3503,24 @@ module Aws::S3
3437
3503
  # can return the ACL of the bucket without using an authorization
3438
3504
  # header.
3439
3505
  #
3506
+ # <note markdown="1"> If your bucket uses the bucket owner enforced setting for S3 Object
3507
+ # Ownership, requests to read ACLs are still supported and return the
3508
+ # `bucket-owner-full-control` ACL with the owner being the account that
3509
+ # created the bucket. For more information, see [ Controlling object
3510
+ # ownership and disabling ACLs][1] in the *Amazon S3 User Guide*.
3511
+ #
3512
+ # </note>
3513
+ #
3440
3514
  # **Related Resources**
3441
3515
  #
3442
- # * [ListObjects][1]
3516
+ # * [ListObjects][2]
3443
3517
  #
3444
3518
  # ^
3445
3519
  #
3446
3520
  #
3447
3521
  #
3448
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html
3522
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
3523
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html
3449
3524
  #
3450
3525
  # @option params [required, String] :bucket
3451
3526
  # Specifies the S3 bucket whose ACL is being requested.
@@ -3731,18 +3806,17 @@ module Aws::S3
3731
3806
  # storage costs by automatically moving data to the most cost-effective
3732
3807
  # storage access tier, without performance impact or operational
3733
3808
  # overhead. S3 Intelligent-Tiering delivers automatic cost savings in
3734
- # two low latency and high throughput access tiers. For data that can be
3735
- # accessed asynchronously, you can choose to activate automatic
3736
- # archiving capabilities within the S3 Intelligent-Tiering storage
3737
- # class.
3809
+ # three low latency and high throughput access tiers. To get the lowest
3810
+ # storage cost on data that can be accessed in minutes to hours, you can
3811
+ # choose to activate additional archiving capabilities.
3738
3812
  #
3739
3813
  # The S3 Intelligent-Tiering storage class is the ideal storage class
3740
3814
  # for data with unknown, changing, or unpredictable access patterns,
3741
3815
  # independent of object size or retention period. If the size of an
3742
- # object is less than 128 KB, it is not eligible for auto-tiering.
3743
- # Smaller objects can be stored, but they are always charged at the
3744
- # Frequent Access tier rates in the S3 Intelligent-Tiering storage
3745
- # class.
3816
+ # object is less than 128 KB, it is not monitored and not eligible for
3817
+ # auto-tiering. Smaller objects can be stored, but they are always
3818
+ # charged at the Frequent Access tier rates in the S3
3819
+ # Intelligent-Tiering storage class.
3746
3820
  #
3747
3821
  # For more information, see [Storage class for automatically optimizing
3748
3822
  # frequently and infrequently accessed objects][1].
@@ -3981,9 +4055,9 @@ module Aws::S3
3981
4055
  # resp.rules[0].status #=> String, one of "Enabled", "Disabled"
3982
4056
  # resp.rules[0].transition.date #=> Time
3983
4057
  # resp.rules[0].transition.days #=> Integer
3984
- # resp.rules[0].transition.storage_class #=> String, one of "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE"
4058
+ # resp.rules[0].transition.storage_class #=> String, one of "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "GLACIER_IR"
3985
4059
  # resp.rules[0].noncurrent_version_transition.noncurrent_days #=> Integer
3986
- # resp.rules[0].noncurrent_version_transition.storage_class #=> String, one of "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE"
4060
+ # resp.rules[0].noncurrent_version_transition.storage_class #=> String, one of "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "GLACIER_IR"
3987
4061
  # resp.rules[0].noncurrent_version_transition.newer_noncurrent_versions #=> Integer
3988
4062
  # resp.rules[0].noncurrent_version_expiration.noncurrent_days #=> Integer
3989
4063
  # resp.rules[0].noncurrent_version_expiration.newer_noncurrent_versions #=> Integer
@@ -4116,10 +4190,10 @@ module Aws::S3
4116
4190
  # resp.rules[0].transitions #=> Array
4117
4191
  # resp.rules[0].transitions[0].date #=> Time
4118
4192
  # resp.rules[0].transitions[0].days #=> Integer
4119
- # resp.rules[0].transitions[0].storage_class #=> String, one of "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE"
4193
+ # resp.rules[0].transitions[0].storage_class #=> String, one of "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "GLACIER_IR"
4120
4194
  # resp.rules[0].noncurrent_version_transitions #=> Array
4121
4195
  # resp.rules[0].noncurrent_version_transitions[0].noncurrent_days #=> Integer
4122
- # resp.rules[0].noncurrent_version_transitions[0].storage_class #=> String, one of "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE"
4196
+ # resp.rules[0].noncurrent_version_transitions[0].storage_class #=> String, one of "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "GLACIER_IR"
4123
4197
  # resp.rules[0].noncurrent_version_transitions[0].newer_noncurrent_versions #=> Integer
4124
4198
  # resp.rules[0].noncurrent_version_expiration.noncurrent_days #=> Integer
4125
4199
  # resp.rules[0].noncurrent_version_expiration.newer_noncurrent_versions #=> Integer
@@ -4538,7 +4612,7 @@ module Aws::S3
4538
4612
  # Retrieves `OwnershipControls` for an Amazon S3 bucket. To use this
4539
4613
  # operation, you must have the `s3:GetBucketOwnershipControls`
4540
4614
  # permission. For more information about Amazon S3 permissions, see
4541
- # [Specifying Permissions in a Policy][1].
4615
+ # [Specifying permissions in a policy][1].
4542
4616
  #
4543
4617
  # For information about Amazon S3 Object Ownership, see [Using Object
4544
4618
  # Ownership][2].
@@ -4551,8 +4625,8 @@ module Aws::S3
4551
4625
  #
4552
4626
  #
4553
4627
  #
4554
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
4555
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html
4628
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html
4629
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
4556
4630
  #
4557
4631
  # @option params [required, String] :bucket
4558
4632
  # The name of the Amazon S3 bucket whose `OwnershipControls` you want to
@@ -4577,7 +4651,7 @@ module Aws::S3
4577
4651
  # @example Response structure
4578
4652
  #
4579
4653
  # resp.ownership_controls.rules #=> Array
4580
- # resp.ownership_controls.rules[0].object_ownership #=> String, one of "BucketOwnerPreferred", "ObjectWriter"
4654
+ # resp.ownership_controls.rules[0].object_ownership #=> String, one of "BucketOwnerPreferred", "ObjectWriter", "BucketOwnerEnforced"
4581
4655
  #
4582
4656
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketOwnershipControls AWS API Documentation
4583
4657
  #
@@ -4826,7 +4900,7 @@ module Aws::S3
4826
4900
  # resp.replication_configuration.rules[0].existing_object_replication.status #=> String, one of "Enabled", "Disabled"
4827
4901
  # resp.replication_configuration.rules[0].destination.bucket #=> String
4828
4902
  # resp.replication_configuration.rules[0].destination.account #=> String
4829
- # resp.replication_configuration.rules[0].destination.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS"
4903
+ # resp.replication_configuration.rules[0].destination.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
4830
4904
  # resp.replication_configuration.rules[0].destination.access_control_translation.owner #=> String, one of "Destination"
4831
4905
  # resp.replication_configuration.rules[0].destination.encryption_configuration.replica_kms_key_id #=> String
4832
4906
  # resp.replication_configuration.rules[0].destination.replication_time.status #=> String, one of "Enabled", "Disabled"
@@ -5469,49 +5543,49 @@ module Aws::S3
5469
5543
  # * {Types::GetObjectOutput#object_lock_legal_hold_status #object_lock_legal_hold_status} => String
5470
5544
  #
5471
5545
  #
5472
- # @example Example: To retrieve an object
5546
+ # @example Example: To retrieve a byte range of an object
5473
5547
  #
5474
- # # The following example retrieves an object for an S3 bucket.
5548
+ # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
5549
+ # # specific byte range.
5475
5550
  #
5476
5551
  # resp = client.get_object({
5477
5552
  # bucket: "examplebucket",
5478
- # key: "HappyFace.jpg",
5553
+ # key: "SampleFile.txt",
5554
+ # range: "bytes=0-9",
5479
5555
  # })
5480
5556
  #
5481
5557
  # resp.to_h outputs the following:
5482
5558
  # {
5483
5559
  # accept_ranges: "bytes",
5484
- # content_length: 3191,
5485
- # content_type: "image/jpeg",
5486
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
5487
- # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
5560
+ # content_length: 10,
5561
+ # content_range: "bytes 0-9/43",
5562
+ # content_type: "text/plain",
5563
+ # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
5564
+ # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
5488
5565
  # metadata: {
5489
5566
  # },
5490
- # tag_count: 2,
5491
5567
  # version_id: "null",
5492
5568
  # }
5493
5569
  #
5494
- # @example Example: To retrieve a byte range of an object
5570
+ # @example Example: To retrieve an object
5495
5571
  #
5496
- # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
5497
- # # specific byte range.
5572
+ # # The following example retrieves an object for an S3 bucket.
5498
5573
  #
5499
5574
  # resp = client.get_object({
5500
5575
  # bucket: "examplebucket",
5501
- # key: "SampleFile.txt",
5502
- # range: "bytes=0-9",
5576
+ # key: "HappyFace.jpg",
5503
5577
  # })
5504
5578
  #
5505
5579
  # resp.to_h outputs the following:
5506
5580
  # {
5507
5581
  # accept_ranges: "bytes",
5508
- # content_length: 10,
5509
- # content_range: "bytes 0-9/43",
5510
- # content_type: "text/plain",
5511
- # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
5512
- # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
5582
+ # content_length: 3191,
5583
+ # content_type: "image/jpeg",
5584
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
5585
+ # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
5513
5586
  # metadata: {
5514
5587
  # },
5588
+ # tag_count: 2,
5515
5589
  # version_id: "null",
5516
5590
  # }
5517
5591
  #
@@ -5597,7 +5671,7 @@ module Aws::S3
5597
5671
  # resp.sse_customer_key_md5 #=> String
5598
5672
  # resp.ssekms_key_id #=> String
5599
5673
  # resp.bucket_key_enabled #=> Boolean
5600
- # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS"
5674
+ # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
5601
5675
  # resp.request_charged #=> String, one of "requester"
5602
5676
  # resp.replication_status #=> String, one of "COMPLETE", "PENDING", "FAILED", "REPLICA"
5603
5677
  # resp.parts_count #=> Integer
@@ -5626,19 +5700,28 @@ module Aws::S3
5626
5700
  # an object. To return ACL information about a different version, use
5627
5701
  # the versionId subresource.
5628
5702
  #
5703
+ # <note markdown="1"> If your bucket uses the bucket owner enforced setting for S3 Object
5704
+ # Ownership, requests to read ACLs are still supported and return the
5705
+ # `bucket-owner-full-control` ACL with the owner being the account that
5706
+ # created the bucket. For more information, see [ Controlling object
5707
+ # ownership and disabling ACLs][1] in the *Amazon S3 User Guide*.
5708
+ #
5709
+ # </note>
5710
+ #
5629
5711
  # The following operations are related to `GetObjectAcl`\:
5630
5712
  #
5631
- # * [GetObject][1]
5713
+ # * [GetObject][2]
5632
5714
  #
5633
- # * [DeleteObject][2]
5715
+ # * [DeleteObject][3]
5634
5716
  #
5635
- # * [PutObject][3]
5717
+ # * [PutObject][4]
5636
5718
  #
5637
5719
  #
5638
5720
  #
5639
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
5640
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
5641
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
5721
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
5722
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
5723
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
5724
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
5642
5725
  #
5643
5726
  # @option params [required, String] :bucket
5644
5727
  # The bucket name that contains the object for which to get the ACL
@@ -6059,49 +6142,49 @@ module Aws::S3
6059
6142
  # * {Types::GetObjectTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
6060
6143
  #
6061
6144
  #
6062
- # @example Example: To retrieve tag set of a specific object version
6145
+ # @example Example: To retrieve tag set of an object
6063
6146
  #
6064
- # # The following example retrieves tag set of an object. The request specifies object version.
6147
+ # # The following example retrieves tag set of an object.
6065
6148
  #
6066
6149
  # resp = client.get_object_tagging({
6067
6150
  # bucket: "examplebucket",
6068
- # key: "exampleobject",
6069
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6151
+ # key: "HappyFace.jpg",
6070
6152
  # })
6071
6153
  #
6072
6154
  # resp.to_h outputs the following:
6073
6155
  # {
6074
6156
  # tag_set: [
6075
6157
  # {
6076
- # key: "Key1",
6077
- # value: "Value1",
6158
+ # key: "Key4",
6159
+ # value: "Value4",
6160
+ # },
6161
+ # {
6162
+ # key: "Key3",
6163
+ # value: "Value3",
6078
6164
  # },
6079
6165
  # ],
6080
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6166
+ # version_id: "null",
6081
6167
  # }
6082
6168
  #
6083
- # @example Example: To retrieve tag set of an object
6169
+ # @example Example: To retrieve tag set of a specific object version
6084
6170
  #
6085
- # # The following example retrieves tag set of an object.
6171
+ # # The following example retrieves tag set of an object. The request specifies object version.
6086
6172
  #
6087
6173
  # resp = client.get_object_tagging({
6088
6174
  # bucket: "examplebucket",
6089
- # key: "HappyFace.jpg",
6175
+ # key: "exampleobject",
6176
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6090
6177
  # })
6091
6178
  #
6092
6179
  # resp.to_h outputs the following:
6093
6180
  # {
6094
6181
  # tag_set: [
6095
6182
  # {
6096
- # key: "Key4",
6097
- # value: "Value4",
6098
- # },
6099
- # {
6100
- # key: "Key3",
6101
- # value: "Value3",
6183
+ # key: "Key1",
6184
+ # value: "Value1",
6102
6185
  # },
6103
6186
  # ],
6104
- # version_id: "null",
6187
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6105
6188
  # }
6106
6189
  #
6107
6190
  # @example Request syntax with placeholder values
@@ -6522,18 +6605,8 @@ module Aws::S3
6522
6605
  # The object key.
6523
6606
  #
6524
6607
  # @option params [String] :range
6525
- # Downloads the specified range bytes of an object. For more information
6526
- # about the HTTP Range header, see
6527
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35][1].
6528
- #
6529
- # <note markdown="1"> Amazon S3 doesn't support retrieving multiple ranges of data per
6530
- # `GET` request.
6531
- #
6532
- # </note>
6533
- #
6534
- #
6535
- #
6536
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
6608
+ # Because `HeadObject` returns only the metadata for an object, this
6609
+ # parameter has no effect.
6537
6610
  #
6538
6611
  # @option params [String] :version_id
6539
6612
  # VersionId used to reference a specific version of the object.
@@ -6678,7 +6751,7 @@ module Aws::S3
6678
6751
  # resp.sse_customer_key_md5 #=> String
6679
6752
  # resp.ssekms_key_id #=> String
6680
6753
  # resp.bucket_key_enabled #=> Boolean
6681
- # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS"
6754
+ # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
6682
6755
  # resp.request_charged #=> String, one of "requester"
6683
6756
  # resp.replication_status #=> String, one of "COMPLETE", "PENDING", "FAILED", "REPLICA"
6684
6757
  # resp.parts_count #=> Integer
@@ -6805,18 +6878,17 @@ module Aws::S3
6805
6878
  # storage costs by automatically moving data to the most cost-effective
6806
6879
  # storage access tier, without performance impact or operational
6807
6880
  # overhead. S3 Intelligent-Tiering delivers automatic cost savings in
6808
- # two low latency and high throughput access tiers. For data that can be
6809
- # accessed asynchronously, you can choose to activate automatic
6810
- # archiving capabilities within the S3 Intelligent-Tiering storage
6811
- # class.
6881
+ # three low latency and high throughput access tiers. To get the lowest
6882
+ # storage cost on data that can be accessed in minutes to hours, you can
6883
+ # choose to activate additional archiving capabilities.
6812
6884
  #
6813
6885
  # The S3 Intelligent-Tiering storage class is the ideal storage class
6814
6886
  # for data with unknown, changing, or unpredictable access patterns,
6815
6887
  # independent of object size or retention period. If the size of an
6816
- # object is less than 128 KB, it is not eligible for auto-tiering.
6817
- # Smaller objects can be stored, but they are always charged at the
6818
- # Frequent Access tier rates in the S3 Intelligent-Tiering storage
6819
- # class.
6888
+ # object is less than 128 KB, it is not monitored and not eligible for
6889
+ # auto-tiering. Smaller objects can be stored, but they are always
6890
+ # charged at the Frequent Access tier rates in the S3
6891
+ # Intelligent-Tiering storage class.
6820
6892
  #
6821
6893
  # For more information, see [Storage class for automatically optimizing
6822
6894
  # frequently and infrequently accessed objects][1].
@@ -7286,97 +7358,97 @@ module Aws::S3
7286
7358
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7287
7359
  #
7288
7360
  #
7289
- # @example Example: To list in-progress multipart uploads on a bucket
7361
+ # @example Example: List next set of multipart uploads when previous result is truncated
7290
7362
  #
7291
- # # The following example lists in-progress multipart uploads on a specific bucket.
7363
+ # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
7364
+ # # setup of multipart uploads.
7292
7365
  #
7293
7366
  # resp = client.list_multipart_uploads({
7294
7367
  # bucket: "examplebucket",
7368
+ # key_marker: "nextkeyfrompreviousresponse",
7369
+ # max_uploads: 2,
7370
+ # upload_id_marker: "valuefrompreviousresponse",
7295
7371
  # })
7296
7372
  #
7297
7373
  # resp.to_h outputs the following:
7298
7374
  # {
7375
+ # bucket: "acl1",
7376
+ # is_truncated: true,
7377
+ # key_marker: "",
7378
+ # max_uploads: 2,
7379
+ # next_key_marker: "someobjectkey",
7380
+ # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7381
+ # upload_id_marker: "",
7299
7382
  # uploads: [
7300
7383
  # {
7301
7384
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
7302
7385
  # initiator: {
7303
- # display_name: "display-name",
7386
+ # display_name: "ownder-display-name",
7304
7387
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7305
7388
  # },
7306
7389
  # key: "JavaFile",
7307
7390
  # owner: {
7308
- # display_name: "display-name",
7309
- # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7391
+ # display_name: "mohanataws",
7392
+ # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7310
7393
  # },
7311
7394
  # storage_class: "STANDARD",
7312
- # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7395
+ # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7313
7396
  # },
7314
7397
  # {
7315
7398
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
7316
7399
  # initiator: {
7317
- # display_name: "display-name",
7400
+ # display_name: "ownder-display-name",
7318
7401
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7319
7402
  # },
7320
7403
  # key: "JavaFile",
7321
7404
  # owner: {
7322
- # display_name: "display-name",
7405
+ # display_name: "ownder-display-name",
7323
7406
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7324
7407
  # },
7325
7408
  # storage_class: "STANDARD",
7326
- # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7409
+ # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7327
7410
  # },
7328
7411
  # ],
7329
7412
  # }
7330
7413
  #
7331
- # @example Example: List next set of multipart uploads when previous result is truncated
7414
+ # @example Example: To list in-progress multipart uploads on a bucket
7332
7415
  #
7333
- # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
7334
- # # setup of multipart uploads.
7416
+ # # The following example lists in-progress multipart uploads on a specific bucket.
7335
7417
  #
7336
7418
  # resp = client.list_multipart_uploads({
7337
7419
  # bucket: "examplebucket",
7338
- # key_marker: "nextkeyfrompreviousresponse",
7339
- # max_uploads: 2,
7340
- # upload_id_marker: "valuefrompreviousresponse",
7341
7420
  # })
7342
7421
  #
7343
7422
  # resp.to_h outputs the following:
7344
7423
  # {
7345
- # bucket: "acl1",
7346
- # is_truncated: true,
7347
- # key_marker: "",
7348
- # max_uploads: 2,
7349
- # next_key_marker: "someobjectkey",
7350
- # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7351
- # upload_id_marker: "",
7352
7424
  # uploads: [
7353
7425
  # {
7354
7426
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
7355
7427
  # initiator: {
7356
- # display_name: "ownder-display-name",
7428
+ # display_name: "display-name",
7357
7429
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7358
7430
  # },
7359
7431
  # key: "JavaFile",
7360
7432
  # owner: {
7361
- # display_name: "mohanataws",
7362
- # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7433
+ # display_name: "display-name",
7434
+ # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7363
7435
  # },
7364
7436
  # storage_class: "STANDARD",
7365
- # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7437
+ # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7366
7438
  # },
7367
7439
  # {
7368
7440
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
7369
7441
  # initiator: {
7370
- # display_name: "ownder-display-name",
7442
+ # display_name: "display-name",
7371
7443
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7372
7444
  # },
7373
7445
  # key: "JavaFile",
7374
7446
  # owner: {
7375
- # display_name: "ownder-display-name",
7447
+ # display_name: "display-name",
7376
7448
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7377
7449
  # },
7378
7450
  # storage_class: "STANDARD",
7379
- # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7451
+ # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7380
7452
  # },
7381
7453
  # ],
7382
7454
  # }
@@ -7409,7 +7481,7 @@ module Aws::S3
7409
7481
  # resp.uploads[0].upload_id #=> String
7410
7482
  # resp.uploads[0].key #=> String
7411
7483
  # resp.uploads[0].initiated #=> Time
7412
- # resp.uploads[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS"
7484
+ # resp.uploads[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
7413
7485
  # resp.uploads[0].owner.display_name #=> String
7414
7486
  # resp.uploads[0].owner.id #=> String
7415
7487
  # resp.uploads[0].initiator.id #=> String
@@ -7789,7 +7861,7 @@ module Aws::S3
7789
7861
  # resp.contents[0].last_modified #=> Time
7790
7862
  # resp.contents[0].etag #=> String
7791
7863
  # resp.contents[0].size #=> Integer
7792
- # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS"
7864
+ # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
7793
7865
  # resp.contents[0].owner.display_name #=> String
7794
7866
  # resp.contents[0].owner.id #=> String
7795
7867
  # resp.name #=> String
@@ -7994,7 +8066,7 @@ module Aws::S3
7994
8066
  # resp.contents[0].last_modified #=> Time
7995
8067
  # resp.contents[0].etag #=> String
7996
8068
  # resp.contents[0].size #=> Integer
7997
- # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS"
8069
+ # resp.contents[0].storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "GLACIER", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
7998
8070
  # resp.contents[0].owner.display_name #=> String
7999
8071
  # resp.contents[0].owner.id #=> String
8000
8072
  # resp.name #=> String
@@ -8203,7 +8275,7 @@ module Aws::S3
8203
8275
  # resp.initiator.display_name #=> String
8204
8276
  # resp.owner.display_name #=> String
8205
8277
  # resp.owner.id #=> String
8206
- # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS"
8278
+ # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS", "GLACIER_IR"
8207
8279
  # resp.request_charged #=> String, one of "requester"
8208
8280
  #
8209
8281
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListParts AWS API Documentation
@@ -8314,6 +8386,14 @@ module Aws::S3
8314
8386
  # you have an existing application that updates a bucket ACL using the
8315
8387
  # request body, then you can continue to use that approach.
8316
8388
  #
8389
+ # If your bucket uses the bucket owner enforced setting for S3 Object
8390
+ # Ownership, ACLs are disabled and no longer affect permissions. You
8391
+ # must use policies to grant access to your bucket and the objects in
8392
+ # it. Requests to set ACLs or update ACLs fail and return the
8393
+ # `AccessControlListNotSupported` error code. Requests to read ACLs are
8394
+ # still supported. For more information, see [Controlling object
8395
+ # ownership][2] in the *Amazon S3 User Guide*.
8396
+ #
8317
8397
  # **Access Permissions**
8318
8398
  #
8319
8399
  # You can set access permissions using one of the following methods:
@@ -8323,7 +8403,7 @@ module Aws::S3
8323
8403
  # canned ACL has a predefined set of grantees and permissions. Specify
8324
8404
  # the canned ACL name as the value of `x-amz-acl`. If you use this
8325
8405
  # header, you cannot use other access control-specific headers in your
8326
- # request. For more information, see [Canned ACL][2].
8406
+ # request. For more information, see [Canned ACL][3].
8327
8407
  #
8328
8408
  # * Specify access permissions explicitly with the `x-amz-grant-read`,
8329
8409
  # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
@@ -8333,7 +8413,7 @@ module Aws::S3
8333
8413
  # permission. If you use these ACL-specific headers, you cannot use
8334
8414
  # the `x-amz-acl` header to set a canned ACL. These parameters map to
8335
8415
  # the set of permissions that Amazon S3 supports in an ACL. For more
8336
- # information, see [Access Control List (ACL) Overview][3].
8416
+ # information, see [Access Control List (ACL) Overview][4].
8337
8417
  #
8338
8418
  # You specify each grantee as a type=value pair, where the type is one
8339
8419
  # of the following:
@@ -8366,7 +8446,7 @@ module Aws::S3
8366
8446
  # * South America (São Paulo)
8367
8447
  #
8368
8448
  # For a list of all the Amazon S3 supported Regions and endpoints,
8369
- # see [Regions and Endpoints][4] in the Amazon Web Services General
8449
+ # see [Regions and Endpoints][5] in the Amazon Web Services General
8370
8450
  # Reference.
8371
8451
  #
8372
8452
  # </note>
@@ -8429,28 +8509,29 @@ module Aws::S3
8429
8509
  # * South America (São Paulo)
8430
8510
  #
8431
8511
  # For a list of all the Amazon S3 supported Regions and endpoints, see
8432
- # [Regions and Endpoints][4] in the Amazon Web Services General
8512
+ # [Regions and Endpoints][5] in the Amazon Web Services General
8433
8513
  # Reference.
8434
8514
  #
8435
8515
  # </note>
8436
8516
  #
8437
8517
  # **Related Resources**
8438
8518
  #
8439
- # * [CreateBucket][5]
8519
+ # * [CreateBucket][6]
8440
8520
  #
8441
- # * [DeleteBucket][6]
8521
+ # * [DeleteBucket][7]
8442
8522
  #
8443
- # * [GetObjectAcl][7]
8523
+ # * [GetObjectAcl][8]
8444
8524
  #
8445
8525
  #
8446
8526
  #
8447
8527
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
8448
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
8449
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
8450
- # [4]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
8451
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
8452
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
8453
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html
8528
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
8529
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
8530
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
8531
+ # [5]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
8532
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
8533
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
8534
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html
8454
8535
  #
8455
8536
  # @option params [String] :acl
8456
8537
  # The canned ACL to apply to the bucket.
@@ -8950,18 +9031,17 @@ module Aws::S3
8950
9031
  # storage costs by automatically moving data to the most cost-effective
8951
9032
  # storage access tier, without performance impact or operational
8952
9033
  # overhead. S3 Intelligent-Tiering delivers automatic cost savings in
8953
- # two low latency and high throughput access tiers. For data that can be
8954
- # accessed asynchronously, you can choose to activate automatic
8955
- # archiving capabilities within the S3 Intelligent-Tiering storage
8956
- # class.
9034
+ # three low latency and high throughput access tiers. To get the lowest
9035
+ # storage cost on data that can be accessed in minutes to hours, you can
9036
+ # choose to activate additional archiving capabilities.
8957
9037
  #
8958
9038
  # The S3 Intelligent-Tiering storage class is the ideal storage class
8959
9039
  # for data with unknown, changing, or unpredictable access patterns,
8960
9040
  # independent of object size or retention period. If the size of an
8961
- # object is less than 128 KB, it is not eligible for auto-tiering.
8962
- # Smaller objects can be stored, but they are always charged at the
8963
- # Frequent Access tier rates in the S3 Intelligent-Tiering storage
8964
- # class.
9041
+ # object is less than 128 KB, it is not monitored and not eligible for
9042
+ # auto-tiering. Smaller objects can be stored, but they are always
9043
+ # charged at the Frequent Access tier rates in the S3
9044
+ # Intelligent-Tiering storage class.
8965
9045
  #
8966
9046
  # For more information, see [Storage class for automatically optimizing
8967
9047
  # frequently and infrequently accessed objects][1].
@@ -9298,11 +9378,11 @@ module Aws::S3
9298
9378
  # transition: {
9299
9379
  # date: Time.now,
9300
9380
  # days: 1,
9301
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
9381
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
9302
9382
  # },
9303
9383
  # noncurrent_version_transition: {
9304
9384
  # noncurrent_days: 1,
9305
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
9385
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
9306
9386
  # newer_noncurrent_versions: 1,
9307
9387
  # },
9308
9388
  # noncurrent_version_expiration: {
@@ -9488,13 +9568,13 @@ module Aws::S3
9488
9568
  # {
9489
9569
  # date: Time.now,
9490
9570
  # days: 1,
9491
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
9571
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
9492
9572
  # },
9493
9573
  # ],
9494
9574
  # noncurrent_version_transitions: [
9495
9575
  # {
9496
9576
  # noncurrent_days: 1,
9497
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
9577
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
9498
9578
  # newer_noncurrent_versions: 1,
9499
9579
  # },
9500
9580
  # ],
@@ -9530,6 +9610,12 @@ module Aws::S3
9530
9610
  # The `Permissions` request element specifies the kind of access the
9531
9611
  # grantee has to the logs.
9532
9612
  #
9613
+ # If the target bucket for log delivery uses the bucket owner enforced
9614
+ # setting for S3 Object Ownership, you can't use the `Grantee` request
9615
+ # element to grant access to others. Permissions can only be granted
9616
+ # using policies. For more information, see [Permissions for server
9617
+ # access log delivery][1] in the *Amazon S3 User Guide*.
9618
+ #
9533
9619
  # **Grantee Values**
9534
9620
  #
9535
9621
  # You can specify the person (grantee) to whom you're assigning access
@@ -9564,29 +9650,30 @@ module Aws::S3
9564
9650
  # />`
9565
9651
  #
9566
9652
  # For more information about server access logging, see [Server Access
9567
- # Logging][1].
9653
+ # Logging][2] in the *Amazon S3 User Guide*.
9568
9654
  #
9569
- # For more information about creating a bucket, see [CreateBucket][2].
9655
+ # For more information about creating a bucket, see [CreateBucket][3].
9570
9656
  # For more information about returning the logging status of a bucket,
9571
- # see [GetBucketLogging][3].
9657
+ # see [GetBucketLogging][4].
9572
9658
  #
9573
9659
  # The following operations are related to `PutBucketLogging`\:
9574
9660
  #
9575
- # * [PutObject][4]
9661
+ # * [PutObject][5]
9576
9662
  #
9577
- # * [DeleteBucket][5]
9663
+ # * [DeleteBucket][6]
9578
9664
  #
9579
- # * [CreateBucket][2]
9665
+ # * [CreateBucket][3]
9580
9666
  #
9581
- # * [GetBucketLogging][3]
9667
+ # * [GetBucketLogging][4]
9582
9668
  #
9583
9669
  #
9584
9670
  #
9585
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html
9586
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
9587
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html
9588
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
9589
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
9671
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general
9672
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerLogs.html
9673
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
9674
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html
9675
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
9676
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
9590
9677
  #
9591
9678
  # @option params [required, String] :bucket
9592
9679
  # The name of the bucket for which to set the logging parameters.
@@ -10011,10 +10098,10 @@ module Aws::S3
10011
10098
  # Creates or modifies `OwnershipControls` for an Amazon S3 bucket. To
10012
10099
  # use this operation, you must have the `s3:PutBucketOwnershipControls`
10013
10100
  # permission. For more information about Amazon S3 permissions, see
10014
- # [Specifying Permissions in a Policy][1].
10101
+ # [Specifying permissions in a policy][1].
10015
10102
  #
10016
- # For information about Amazon S3 Object Ownership, see [Using Object
10017
- # Ownership][2].
10103
+ # For information about Amazon S3 Object Ownership, see [Using object
10104
+ # ownership][2].
10018
10105
  #
10019
10106
  # The following operations are related to `PutBucketOwnershipControls`\:
10020
10107
  #
@@ -10024,8 +10111,8 @@ module Aws::S3
10024
10111
  #
10025
10112
  #
10026
10113
  #
10027
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
10028
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html
10114
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/user-guide/using-with-s3-actions.html
10115
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/user-guide/about-object-ownership.html
10029
10116
  #
10030
10117
  # @option params [required, String] :bucket
10031
10118
  # The name of the Amazon S3 bucket whose `OwnershipControls` you want to
@@ -10044,8 +10131,8 @@ module Aws::S3
10044
10131
  # Denied)` error.
10045
10132
  #
10046
10133
  # @option params [required, Types::OwnershipControls] :ownership_controls
10047
- # The `OwnershipControls` (BucketOwnerPreferred or ObjectWriter) that
10048
- # you want to apply to this Amazon S3 bucket.
10134
+ # The `OwnershipControls` (BucketOwnerEnforced, BucketOwnerPreferred, or
10135
+ # ObjectWriter) that you want to apply to this Amazon S3 bucket.
10049
10136
  #
10050
10137
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10051
10138
  #
@@ -10058,7 +10145,7 @@ module Aws::S3
10058
10145
  # ownership_controls: { # required
10059
10146
  # rules: [ # required
10060
10147
  # {
10061
- # object_ownership: "BucketOwnerPreferred", # required, accepts BucketOwnerPreferred, ObjectWriter
10148
+ # object_ownership: "BucketOwnerPreferred", # required, accepts BucketOwnerPreferred, ObjectWriter, BucketOwnerEnforced
10062
10149
  # },
10063
10150
  # ],
10064
10151
  # },
@@ -10331,7 +10418,7 @@ module Aws::S3
10331
10418
  # destination: { # required
10332
10419
  # bucket: "BucketName", # required
10333
10420
  # account: "AccountId",
10334
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
10421
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
10335
10422
  # access_control_translation: {
10336
10423
  # owner: "Destination", # required, accepts Destination
10337
10424
  # },
@@ -10920,13 +11007,33 @@ module Aws::S3
10920
11007
  # information, see [Access Control List (ACL) Overview][4] and [Managing
10921
11008
  # ACLs Using the REST API][5].
10922
11009
  #
11010
+ # If the bucket that you're uploading objects to uses the bucket owner
11011
+ # enforced setting for S3 Object Ownership, ACLs are disabled and no
11012
+ # longer affect permissions. Buckets that use this setting only accept
11013
+ # PUT requests that don't specify an ACL or PUT requests that specify
11014
+ # bucket owner full control ACLs, such as the
11015
+ # `bucket-owner-full-control` canned ACL or an equivalent form of this
11016
+ # ACL expressed in the XML format. PUT requests that contain other ACLs
11017
+ # (for example, custom grants to certain Amazon Web Services accounts)
11018
+ # fail and return a `400` error with the error code
11019
+ # `AccessControlListNotSupported`.
11020
+ #
11021
+ # For more information, see [ Controlling ownership of objects and
11022
+ # disabling ACLs][6] in the *Amazon S3 User Guide*.
11023
+ #
11024
+ # <note markdown="1"> If your bucket uses the bucket owner enforced setting for Object
11025
+ # Ownership, all objects written to the bucket by any account will be
11026
+ # owned by the bucket owner.
11027
+ #
11028
+ # </note>
11029
+ #
10923
11030
  # **Storage Class Options**
10924
11031
  #
10925
11032
  # By default, Amazon S3 uses the STANDARD Storage Class to store newly
10926
11033
  # created objects. The STANDARD storage class provides high durability
10927
11034
  # and high availability. Depending on performance needs, you can specify
10928
11035
  # a different Storage Class. Amazon S3 on Outposts only uses the
10929
- # OUTPOSTS Storage Class. For more information, see [Storage Classes][6]
11036
+ # OUTPOSTS Storage Class. For more information, see [Storage Classes][7]
10930
11037
  # in the *Amazon S3 User Guide*.
10931
11038
  #
10932
11039
  # **Versioning**
@@ -10938,14 +11045,14 @@ module Aws::S3
10938
11045
  # object simultaneously, it stores all of the objects.
10939
11046
  #
10940
11047
  # For more information about versioning, see [Adding Objects to
10941
- # Versioning Enabled Buckets][7]. For information about returning the
10942
- # versioning state of a bucket, see [GetBucketVersioning][8].
11048
+ # Versioning Enabled Buckets][8]. For information about returning the
11049
+ # versioning state of a bucket, see [GetBucketVersioning][9].
10943
11050
  #
10944
11051
  # **Related Resources**
10945
11052
  #
10946
- # * [CopyObject][9]
11053
+ # * [CopyObject][10]
10947
11054
  #
10948
- # * [DeleteObject][10]
11055
+ # * [DeleteObject][11]
10949
11056
  #
10950
11057
  #
10951
11058
  #
@@ -10954,11 +11061,12 @@ module Aws::S3
10954
11061
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html
10955
11062
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
10956
11063
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html
10957
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
10958
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html
10959
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html
10960
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
10961
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
11064
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
11065
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
11066
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html
11067
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html
11068
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
11069
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
10962
11070
  #
10963
11071
  # @option params [String] :acl
10964
11072
  # The canned ACL to apply to the object. For more information, see
@@ -11228,134 +11336,134 @@ module Aws::S3
11228
11336
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
11229
11337
  #
11230
11338
  #
11231
- # @example Example: To upload an object and specify optional tags
11339
+ # @example Example: To upload an object (specify optional headers)
11232
11340
  #
11233
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
11234
- # # S3 returns version ID of the newly created object.
11341
+ # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
11342
+ # # storage class and use server-side encryption.
11235
11343
  #
11236
11344
  # resp = client.put_object({
11237
- # body: "c:\\HappyFace.jpg",
11345
+ # body: "HappyFace.jpg",
11238
11346
  # bucket: "examplebucket",
11239
11347
  # key: "HappyFace.jpg",
11240
- # tagging: "key1=value1&key2=value2",
11348
+ # server_side_encryption: "AES256",
11349
+ # storage_class: "STANDARD_IA",
11241
11350
  # })
11242
11351
  #
11243
11352
  # resp.to_h outputs the following:
11244
11353
  # {
11245
11354
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11246
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
11355
+ # server_side_encryption: "AES256",
11356
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
11247
11357
  # }
11248
11358
  #
11249
- # @example Example: To upload an object and specify canned ACL.
11359
+ # @example Example: To upload an object and specify server-side encryption and object tags
11250
11360
  #
11251
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
11252
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
11361
+ # # The following example uploads and object. The request specifies the optional server-side encryption option. The request
11362
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
11253
11363
  #
11254
11364
  # resp = client.put_object({
11255
- # acl: "authenticated-read",
11256
11365
  # body: "filetoupload",
11257
11366
  # bucket: "examplebucket",
11258
11367
  # key: "exampleobject",
11368
+ # server_side_encryption: "AES256",
11369
+ # tagging: "key1=value1&key2=value2",
11259
11370
  # })
11260
11371
  #
11261
11372
  # resp.to_h outputs the following:
11262
11373
  # {
11263
11374
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11264
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
11375
+ # server_side_encryption: "AES256",
11376
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
11265
11377
  # }
11266
11378
  #
11267
- # @example Example: To upload an object and specify server-side encryption and object tags
11379
+ # @example Example: To create an object.
11268
11380
  #
11269
- # # The following example uploads and object. The request specifies the optional server-side encryption option. The request
11270
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
11381
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
11271
11382
  #
11272
11383
  # resp = client.put_object({
11273
11384
  # body: "filetoupload",
11274
11385
  # bucket: "examplebucket",
11275
- # key: "exampleobject",
11276
- # server_side_encryption: "AES256",
11277
- # tagging: "key1=value1&key2=value2",
11386
+ # key: "objectkey",
11278
11387
  # })
11279
11388
  #
11280
11389
  # resp.to_h outputs the following:
11281
11390
  # {
11282
11391
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11283
- # server_side_encryption: "AES256",
11284
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
11392
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
11285
11393
  # }
11286
11394
  #
11287
- # @example Example: To create an object.
11395
+ # @example Example: To upload object and specify user-defined metadata
11288
11396
  #
11289
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
11397
+ # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
11398
+ # # enabled, S3 returns version ID in response.
11290
11399
  #
11291
11400
  # resp = client.put_object({
11292
11401
  # body: "filetoupload",
11293
11402
  # bucket: "examplebucket",
11294
- # key: "objectkey",
11403
+ # key: "exampleobject",
11404
+ # metadata: {
11405
+ # "metadata1" => "value1",
11406
+ # "metadata2" => "value2",
11407
+ # },
11295
11408
  # })
11296
11409
  #
11297
11410
  # resp.to_h outputs the following:
11298
11411
  # {
11299
11412
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11300
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
11413
+ # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
11301
11414
  # }
11302
11415
  #
11303
- # @example Example: To upload an object
11416
+ # @example Example: To upload an object and specify canned ACL.
11304
11417
  #
11305
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
11306
- # # syntax. S3 returns VersionId of the newly created object.
11418
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
11419
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
11307
11420
  #
11308
11421
  # resp = client.put_object({
11309
- # body: "HappyFace.jpg",
11422
+ # acl: "authenticated-read",
11423
+ # body: "filetoupload",
11310
11424
  # bucket: "examplebucket",
11311
- # key: "HappyFace.jpg",
11425
+ # key: "exampleobject",
11312
11426
  # })
11313
11427
  #
11314
11428
  # resp.to_h outputs the following:
11315
11429
  # {
11316
11430
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11317
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
11431
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
11318
11432
  # }
11319
11433
  #
11320
- # @example Example: To upload an object (specify optional headers)
11434
+ # @example Example: To upload an object
11321
11435
  #
11322
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
11323
- # # storage class and use server-side encryption.
11436
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
11437
+ # # syntax. S3 returns VersionId of the newly created object.
11324
11438
  #
11325
11439
  # resp = client.put_object({
11326
11440
  # body: "HappyFace.jpg",
11327
11441
  # bucket: "examplebucket",
11328
11442
  # key: "HappyFace.jpg",
11329
- # server_side_encryption: "AES256",
11330
- # storage_class: "STANDARD_IA",
11331
11443
  # })
11332
11444
  #
11333
11445
  # resp.to_h outputs the following:
11334
11446
  # {
11335
11447
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11336
- # server_side_encryption: "AES256",
11337
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
11448
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
11338
11449
  # }
11339
11450
  #
11340
- # @example Example: To upload object and specify user-defined metadata
11451
+ # @example Example: To upload an object and specify optional tags
11341
11452
  #
11342
- # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
11343
- # # enabled, S3 returns version ID in response.
11453
+ # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
11454
+ # # S3 returns version ID of the newly created object.
11344
11455
  #
11345
11456
  # resp = client.put_object({
11346
- # body: "filetoupload",
11457
+ # body: "c:\\HappyFace.jpg",
11347
11458
  # bucket: "examplebucket",
11348
- # key: "exampleobject",
11349
- # metadata: {
11350
- # "metadata1" => "value1",
11351
- # "metadata2" => "value2",
11352
- # },
11459
+ # key: "HappyFace.jpg",
11460
+ # tagging: "key1=value1&key2=value2",
11353
11461
  # })
11354
11462
  #
11355
11463
  # resp.to_h outputs the following:
11356
11464
  # {
11357
11465
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11358
- # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
11466
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
11359
11467
  # }
11360
11468
  #
11361
11469
  # @example Streaming a file from disk
@@ -11387,7 +11495,7 @@ module Aws::S3
11387
11495
  # "MetadataKey" => "MetadataValue",
11388
11496
  # },
11389
11497
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
11390
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
11498
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
11391
11499
  # website_redirect_location: "WebsiteRedirectLocation",
11392
11500
  # sse_customer_algorithm: "SSECustomerAlgorithm",
11393
11501
  # sse_customer_key: "SSECustomerKey",
@@ -11440,6 +11548,14 @@ module Aws::S3
11440
11548
  # information, see [Access Control List (ACL) Overview][2] in the
11441
11549
  # *Amazon S3 User Guide*.
11442
11550
  #
11551
+ # If your bucket uses the bucket owner enforced setting for S3 Object
11552
+ # Ownership, ACLs are disabled and no longer affect permissions. You
11553
+ # must use policies to grant access to your bucket and the objects in
11554
+ # it. Requests to set ACLs or update ACLs fail and return the
11555
+ # `AccessControlListNotSupported` error code. Requests to read ACLs are
11556
+ # still supported. For more information, see [Controlling object
11557
+ # ownership][3] in the *Amazon S3 User Guide*.
11558
+ #
11443
11559
  # **Access Permissions**
11444
11560
  #
11445
11561
  # You can set access permissions using one of the following methods:
@@ -11449,7 +11565,7 @@ module Aws::S3
11449
11565
  # ACL has a predefined set of grantees and permissions. Specify the
11450
11566
  # canned ACL name as the value of `x-amz-ac`l. If you use this header,
11451
11567
  # you cannot use other access control-specific headers in your
11452
- # request. For more information, see [Canned ACL][3].
11568
+ # request. For more information, see [Canned ACL][4].
11453
11569
  #
11454
11570
  # * Specify access permissions explicitly with the `x-amz-grant-read`,
11455
11571
  # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
@@ -11492,7 +11608,7 @@ module Aws::S3
11492
11608
  # * South America (São Paulo)
11493
11609
  #
11494
11610
  # For a list of all the Amazon S3 supported Regions and endpoints,
11495
- # see [Regions and Endpoints][4] in the Amazon Web Services General
11611
+ # see [Regions and Endpoints][5] in the Amazon Web Services General
11496
11612
  # Reference.
11497
11613
  #
11498
11614
  # </note>
@@ -11553,7 +11669,7 @@ module Aws::S3
11553
11669
  # * South America (São Paulo)
11554
11670
  #
11555
11671
  # For a list of all the Amazon S3 supported Regions and endpoints, see
11556
- # [Regions and Endpoints][4] in the Amazon Web Services General
11672
+ # [Regions and Endpoints][5] in the Amazon Web Services General
11557
11673
  # Reference.
11558
11674
  #
11559
11675
  # </note>
@@ -11566,18 +11682,19 @@ module Aws::S3
11566
11682
  #
11567
11683
  # **Related Resources**
11568
11684
  #
11569
- # * [CopyObject][5]
11685
+ # * [CopyObject][6]
11570
11686
  #
11571
- # * [GetObject][6]
11687
+ # * [GetObject][7]
11572
11688
  #
11573
11689
  #
11574
11690
  #
11575
11691
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions
11576
11692
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
11577
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
11578
- # [4]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
11579
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
11580
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
11693
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
11694
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
11695
+ # [5]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
11696
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
11697
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
11581
11698
  #
11582
11699
  # @option params [String] :acl
11583
11700
  # The canned ACL to apply to the object. For more information, see
@@ -12711,7 +12828,7 @@ module Aws::S3
12711
12828
  # value: "MetadataValue",
12712
12829
  # },
12713
12830
  # ],
12714
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
12831
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
12715
12832
  # },
12716
12833
  # },
12717
12834
  # },
@@ -12744,10 +12861,11 @@ module Aws::S3
12744
12861
  # This action is not supported by Amazon S3 on Outposts.
12745
12862
  #
12746
12863
  # For more information about Amazon S3 Select, see [Selecting Content
12747
- # from Objects][1] in the *Amazon S3 User Guide*.
12864
+ # from Objects][1] and [SELECT Command][2] in the *Amazon S3 User
12865
+ # Guide*.
12748
12866
  #
12749
12867
  # For more information about using SQL with Amazon S3 Select, see [ SQL
12750
- # Reference for Amazon S3 Select and S3 Glacier Select][2] in the
12868
+ # Reference for Amazon S3 Select and S3 Glacier Select][3] in the
12751
12869
  # *Amazon S3 User Guide*.
12752
12870
  #
12753
12871
  #
@@ -12756,7 +12874,7 @@ module Aws::S3
12756
12874
  #
12757
12875
  # You must have `s3:GetObject` permission for this operation. Amazon S3
12758
12876
  # Select does not support anonymous access. For more information about
12759
- # permissions, see [Specifying Permissions in a Policy][3] in the
12877
+ # permissions, see [Specifying Permissions in a Policy][4] in the
12760
12878
  # *Amazon S3 User Guide*.
12761
12879
  #
12762
12880
  #
@@ -12783,70 +12901,71 @@ module Aws::S3
12783
12901
  #
12784
12902
  # For objects that are encrypted with customer-provided encryption
12785
12903
  # keys (SSE-C), you must use HTTPS, and you must use the headers that
12786
- # are documented in the [GetObject][4]. For more information about
12904
+ # are documented in the [GetObject][5]. For more information about
12787
12905
  # SSE-C, see [Server-Side Encryption (Using Customer-Provided
12788
- # Encryption Keys)][5] in the *Amazon S3 User Guide*.
12906
+ # Encryption Keys)][6] in the *Amazon S3 User Guide*.
12789
12907
  #
12790
12908
  # For objects that are encrypted with Amazon S3 managed encryption
12791
12909
  # keys (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS),
12792
12910
  # server-side encryption is handled transparently, so you don't need
12793
12911
  # to specify anything. For more information about server-side
12794
12912
  # encryption, including SSE-S3 and SSE-KMS, see [Protecting Data Using
12795
- # Server-Side Encryption][6] in the *Amazon S3 User Guide*.
12913
+ # Server-Side Encryption][7] in the *Amazon S3 User Guide*.
12796
12914
  #
12797
12915
  # **Working with the Response Body**
12798
12916
  #
12799
12917
  # Given the response size is unknown, Amazon S3 Select streams the
12800
12918
  # response as a series of messages and includes a `Transfer-Encoding`
12801
12919
  # header with `chunked` as its value in the response. For more
12802
- # information, see [Appendix: SelectObjectContent Response][7].
12920
+ # information, see [Appendix: SelectObjectContent Response][8].
12803
12921
  #
12804
12922
  #
12805
12923
  #
12806
12924
  # **GetObject Support**
12807
12925
  #
12808
12926
  # The `SelectObjectContent` action does not support the following
12809
- # `GetObject` functionality. For more information, see [GetObject][4].
12927
+ # `GetObject` functionality. For more information, see [GetObject][5].
12810
12928
  #
12811
12929
  # * `Range`\: Although you can specify a scan range for an Amazon S3
12812
- # Select request (see [SelectObjectContentRequest - ScanRange][8] in
12930
+ # Select request (see [SelectObjectContentRequest - ScanRange][9] in
12813
12931
  # the request parameters), you cannot specify the range of bytes of an
12814
12932
  # object to return.
12815
12933
  #
12816
12934
  # * GLACIER, DEEP\_ARCHIVE and REDUCED\_REDUNDANCY storage classes: You
12817
12935
  # cannot specify the GLACIER, DEEP\_ARCHIVE, or `REDUCED_REDUNDANCY`
12818
12936
  # storage classes. For more information, about storage classes see
12819
- # [Storage Classes][9] in the *Amazon S3 User Guide*.
12937
+ # [Storage Classes][10] in the *Amazon S3 User Guide*.
12820
12938
  #
12821
12939
  #
12822
12940
  #
12823
12941
  # **Special Errors**
12824
12942
  #
12825
12943
  # For a list of special errors for this operation, see [List of SELECT
12826
- # Object Content Error Codes][10]
12944
+ # Object Content Error Codes][11]
12827
12945
  #
12828
12946
  # **Related Resources**
12829
12947
  #
12830
- # * [GetObject][4]
12948
+ # * [GetObject][5]
12831
12949
  #
12832
- # * [GetBucketLifecycleConfiguration][11]
12950
+ # * [GetBucketLifecycleConfiguration][12]
12833
12951
  #
12834
- # * [PutBucketLifecycleConfiguration][12]
12952
+ # * [PutBucketLifecycleConfiguration][13]
12835
12953
  #
12836
12954
  #
12837
12955
  #
12838
12956
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html
12839
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html
12840
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
12841
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
12842
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
12843
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
12844
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
12845
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
12846
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro
12847
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
12848
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
12849
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
12957
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-glacier-select-sql-reference-select.html
12958
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html
12959
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
12960
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
12961
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
12962
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
12963
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
12964
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
12965
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro
12966
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
12967
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
12968
+ # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
12850
12969
  #
12851
12970
  # @option params [required, String] :bucket
12852
12971
  # The S3 bucket.
@@ -13699,45 +13818,45 @@ module Aws::S3
13699
13818
  # * {Types::UploadPartCopyOutput#request_charged #request_charged} => String
13700
13819
  #
13701
13820
  #
13702
- # @example Example: To upload a part by copying data from an existing object as data source
13821
+ # @example Example: To upload a part by copying byte range from an existing object as data source
13703
13822
  #
13704
- # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
13823
+ # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
13824
+ # # data source.
13705
13825
  #
13706
13826
  # resp = client.upload_part_copy({
13707
13827
  # bucket: "examplebucket",
13708
13828
  # copy_source: "/bucketname/sourceobjectkey",
13829
+ # copy_source_range: "bytes=1-100000",
13709
13830
  # key: "examplelargeobject",
13710
- # part_number: 1,
13831
+ # part_number: 2,
13711
13832
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
13712
13833
  # })
13713
13834
  #
13714
13835
  # resp.to_h outputs the following:
13715
13836
  # {
13716
13837
  # copy_part_result: {
13717
- # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
13718
- # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
13838
+ # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
13839
+ # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
13719
13840
  # },
13720
13841
  # }
13721
13842
  #
13722
- # @example Example: To upload a part by copying byte range from an existing object as data source
13843
+ # @example Example: To upload a part by copying data from an existing object as data source
13723
13844
  #
13724
- # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
13725
- # # data source.
13845
+ # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
13726
13846
  #
13727
13847
  # resp = client.upload_part_copy({
13728
13848
  # bucket: "examplebucket",
13729
13849
  # copy_source: "/bucketname/sourceobjectkey",
13730
- # copy_source_range: "bytes=1-100000",
13731
13850
  # key: "examplelargeobject",
13732
- # part_number: 2,
13851
+ # part_number: 1,
13733
13852
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
13734
13853
  # })
13735
13854
  #
13736
13855
  # resp.to_h outputs the following:
13737
13856
  # {
13738
13857
  # copy_part_result: {
13739
- # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
13740
- # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
13858
+ # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
13859
+ # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
13741
13860
  # },
13742
13861
  # }
13743
13862
  #
@@ -14069,7 +14188,7 @@ module Aws::S3
14069
14188
  # sse_customer_algorithm: "SSECustomerAlgorithm",
14070
14189
  # ssekms_key_id: "SSEKMSKeyId",
14071
14190
  # sse_customer_key_md5: "SSECustomerKeyMD5",
14072
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
14191
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
14073
14192
  # tag_count: 1,
14074
14193
  # version_id: "ObjectVersionId",
14075
14194
  # bucket_key_enabled: false,
@@ -14097,7 +14216,7 @@ module Aws::S3
14097
14216
  params: params,
14098
14217
  config: config)
14099
14218
  context[:gem_name] = 'aws-sdk-s3'
14100
- context[:gem_version] = '1.108.0'
14219
+ context[:gem_version] = '1.111.1'
14101
14220
  Seahorse::Client::Request.new(handlers, context)
14102
14221
  end
14103
14222