aws-sdk-s3 1.79.1 → 1.80.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -417,27 +417,32 @@ module Aws::S3
417
417
  # completely free all storage consumed by all parts.
418
418
  #
419
419
  # To verify that all parts have been removed, so you don't get charged
420
- # for the part storage, you should call the ListParts operation and
420
+ # for the part storage, you should call the [ListParts][1] operation and
421
421
  # ensure that the parts list is empty.
422
422
  #
423
423
  # For information about permissions required to use the multipart upload
424
- # API, see [Multipart Upload API and Permissions][1].
424
+ # API, see [Multipart Upload API and Permissions][2].
425
425
  #
426
426
  # The following operations are related to `AbortMultipartUpload`\:
427
427
  #
428
- # * CreateMultipartUpload
428
+ # * [CreateMultipartUpload][3]
429
429
  #
430
- # * UploadPart
430
+ # * [UploadPart][4]
431
431
  #
432
- # * CompleteMultipartUpload
432
+ # * [CompleteMultipartUpload][5]
433
433
  #
434
- # * ListParts
434
+ # * [ListParts][1]
435
435
  #
436
- # * ListMultipartUploads
436
+ # * [ListMultipartUploads][6]
437
437
  #
438
438
  #
439
439
  #
440
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
440
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
441
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
442
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
443
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
444
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
445
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
441
446
  #
442
447
  # @option params [required, String] :bucket
443
448
  # The bucket name to which the upload was taking place.
@@ -471,6 +476,11 @@ module Aws::S3
471
476
  #
472
477
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
473
478
  #
479
+ # @option params [String] :expected_bucket_owner
480
+ # The account id of the expected bucket owner. If the bucket is owned by
481
+ # a different account, the request will fail with an HTTP `403 (Access
482
+ # Denied)` error.
483
+ #
474
484
  # @return [Types::AbortMultipartUploadOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
475
485
  #
476
486
  # * {Types::AbortMultipartUploadOutput#request_charged #request_charged} => String
@@ -497,6 +507,7 @@ module Aws::S3
497
507
  # key: "ObjectKey", # required
498
508
  # upload_id: "MultipartUploadId", # required
499
509
  # request_payer: "requester", # accepts requester
510
+ # expected_bucket_owner: "AccountId",
500
511
  # })
501
512
  #
502
513
  # @example Response structure
@@ -515,7 +526,7 @@ module Aws::S3
515
526
  # Completes a multipart upload by assembling previously uploaded parts.
516
527
  #
517
528
  # You first initiate the multipart upload and then upload all parts
518
- # using the UploadPart operation. After successfully uploading all
529
+ # using the [UploadPart][1] operation. After successfully uploading all
519
530
  # relevant parts of an upload, you call this operation to complete the
520
531
  # upload. Upon receiving this request, Amazon S3 concatenates all the
521
532
  # parts in ascending order by part number to create a new object. In the
@@ -536,13 +547,13 @@ module Aws::S3
536
547
  #
537
548
  # Note that if `CompleteMultipartUpload` fails, applications should be
538
549
  # prepared to retry the failed requests. For more information, see
539
- # [Amazon S3 Error Best Practices][1].
550
+ # [Amazon S3 Error Best Practices][2].
540
551
  #
541
552
  # For more information about multipart uploads, see [Uploading Objects
542
- # Using Multipart Upload][2].
553
+ # Using Multipart Upload][3].
543
554
  #
544
555
  # For information about permissions required to use the multipart upload
545
- # API, see [Multipart Upload API and Permissions][3].
556
+ # API, see [Multipart Upload API and Permissions][4].
546
557
  #
547
558
  # `CompleteMultipartUpload` has the following special errors:
548
559
  #
@@ -579,21 +590,26 @@ module Aws::S3
579
590
  #
580
591
  # The following operations are related to `CompleteMultipartUpload`\:
581
592
  #
582
- # * CreateMultipartUpload
593
+ # * [CreateMultipartUpload][5]
583
594
  #
584
- # * UploadPart
595
+ # * [UploadPart][1]
585
596
  #
586
- # * AbortMultipartUpload
597
+ # * [AbortMultipartUpload][6]
587
598
  #
588
- # * ListParts
599
+ # * [ListParts][7]
589
600
  #
590
- # * ListMultipartUploads
601
+ # * [ListMultipartUploads][8]
591
602
  #
592
603
  #
593
604
  #
594
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html
595
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
596
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
605
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
606
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html
607
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
608
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
609
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
610
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
611
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
612
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
597
613
  #
598
614
  # @option params [required, String] :bucket
599
615
  # Name of the bucket to which the multipart upload was initiated.
@@ -618,6 +634,11 @@ module Aws::S3
618
634
  #
619
635
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
620
636
  #
637
+ # @option params [String] :expected_bucket_owner
638
+ # The account id of the expected bucket owner. If the bucket is owned by
639
+ # a different account, the request will fail with an HTTP `403 (Access
640
+ # Denied)` error.
641
+ #
621
642
  # @return [Types::CompleteMultipartUploadOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
622
643
  #
623
644
  # * {Types::CompleteMultipartUploadOutput#location #location} => String
@@ -676,6 +697,7 @@ module Aws::S3
676
697
  # },
677
698
  # upload_id: "MultipartUploadId", # required
678
699
  # request_payer: "requester", # accepts requester
700
+ # expected_bucket_owner: "AccountId",
679
701
  # })
680
702
  #
681
703
  # @example Response structure
@@ -850,15 +872,15 @@ module Aws::S3
850
872
  #
851
873
  # If the source object's storage class is GLACIER, you must restore a
852
874
  # copy of this object before you can use it as a source object for the
853
- # copy operation. For more information, see .
875
+ # copy operation. For more information, see [RestoreObject][12].
854
876
  #
855
877
  # The following operations are related to `CopyObject`\:
856
878
  #
857
- # * PutObject
879
+ # * [PutObject][13]
858
880
  #
859
- # * GetObject
881
+ # * [GetObject][14]
860
882
  #
861
- # For more information, see [Copying Objects][12].
883
+ # For more information, see [Copying Objects][15].
862
884
  #
863
885
  #
864
886
  #
@@ -873,7 +895,10 @@ module Aws::S3
873
895
  # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
874
896
  # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html
875
897
  # [11]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
876
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
898
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
899
+ # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
900
+ # [14]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
901
+ # [15]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
877
902
  #
878
903
  # @option params [String] :acl
879
904
  # The canned ACL to apply to the object.
@@ -899,8 +924,41 @@ module Aws::S3
899
924
  # A standard MIME type describing the format of the object data.
900
925
  #
901
926
  # @option params [required, String] :copy_source
902
- # The name of the source bucket and key name of the source object,
903
- # separated by a slash (/). Must be URL-encoded.
927
+ # Specifies the source object for the copy operation. You specify the
928
+ # value in one of two formats, depending on whether you want to access
929
+ # the source object through an [access point][1]\:
930
+ #
931
+ # * For objects not accessed through an access point, specify the name
932
+ # of the source bucket and the key of the source object, separated by
933
+ # a slash (/). For example, to copy the object `reports/january.pdf`
934
+ # from the bucket `awsexamplebucket`, use
935
+ # `awsexamplebucket/reports/january.pdf`. The value must be URL
936
+ # encoded.
937
+ #
938
+ # * For objects accessed through access points, specify the Amazon
939
+ # Resource Name (ARN) of the object as accessed through the access
940
+ # point, in the format
941
+ # `arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>`.
942
+ # For example, to copy the object `reports/january.pdf` through access
943
+ # point `my-access-point` owned by account `123456789012` in Region
944
+ # `us-west-2`, use the URL encoding of
945
+ # `arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf`.
946
+ # The value must be URL encoded.
947
+ #
948
+ # <note markdown="1"> Amazon S3 supports copy operations using access points only when the
949
+ # source and destination buckets are in the same AWS Region.
950
+ #
951
+ # </note>
952
+ #
953
+ # To copy a specific version of an object, append
954
+ # `?versionId=<version-id>` to the value (for example,
955
+ # `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
956
+ # If you don't specify a version ID, Amazon S3 copies the latest
957
+ # version of the source object.
958
+ #
959
+ #
960
+ #
961
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html
904
962
  #
905
963
  # @option params [String] :copy_source_if_match
906
964
  # Copies the object if its entity tag (ETag) matches the specified tag.
@@ -967,7 +1025,7 @@ module Aws::S3
967
1025
  # encrypting data. This value is used to store the object and then it is
968
1026
  # discarded; Amazon S3 does not store the encryption key. The key must
969
1027
  # be appropriate for use with the algorithm specified in the
970
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
1028
+ # `x-amz-server-side-encryption-customer-algorithm` header.
971
1029
  #
972
1030
  # @option params [String] :sse_customer_key_md5
973
1031
  # Specifies the 128-bit MD5 digest of the encryption key according to
@@ -1031,6 +1089,16 @@ module Aws::S3
1031
1089
  # @option params [String] :object_lock_legal_hold_status
1032
1090
  # Specifies whether you want to apply a Legal Hold to the copied object.
1033
1091
  #
1092
+ # @option params [String] :expected_bucket_owner
1093
+ # The account id of the expected destination bucket owner. If the
1094
+ # destination bucket is owned by a different account, the request will
1095
+ # fail with an HTTP `403 (Access Denied)` error.
1096
+ #
1097
+ # @option params [String] :expected_source_bucket_owner
1098
+ # The account id of the expected source bucket owner. If the source
1099
+ # bucket is owned by a different account, the request will fail with an
1100
+ # HTTP `403 (Access Denied)` error.
1101
+ #
1034
1102
  # @return [Types::CopyObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1035
1103
  #
1036
1104
  # * {Types::CopyObjectOutput#copy_object_result #copy_object_result} => Types::CopyObjectResult
@@ -1105,6 +1173,8 @@ module Aws::S3
1105
1173
  # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
1106
1174
  # object_lock_retain_until_date: Time.now,
1107
1175
  # object_lock_legal_hold_status: "ON", # accepts ON, OFF
1176
+ # expected_bucket_owner: "AccountId",
1177
+ # expected_source_bucket_owner: "AccountId",
1108
1178
  # })
1109
1179
  #
1110
1180
  # @example Response structure
@@ -1222,9 +1292,9 @@ module Aws::S3
1222
1292
  #
1223
1293
  # The following operations are related to `CreateBucket`\:
1224
1294
  #
1225
- # * PutObject
1295
+ # * [PutObject][7]
1226
1296
  #
1227
- # * DeleteBucket
1297
+ # * [DeleteBucket][8]
1228
1298
  #
1229
1299
  #
1230
1300
  #
@@ -1234,6 +1304,8 @@ module Aws::S3
1234
1304
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
1235
1305
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
1236
1306
  # [6]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
1307
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
1308
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
1237
1309
  #
1238
1310
  # @option params [String] :acl
1239
1311
  # The canned ACL to apply to the bucket.
@@ -1331,29 +1403,29 @@ module Aws::S3
1331
1403
  # This operation initiates a multipart upload and returns an upload ID.
1332
1404
  # This upload ID is used to associate all of the parts in the specific
1333
1405
  # multipart upload. You specify this upload ID in each of your
1334
- # subsequent upload part requests (see UploadPart). You also include
1335
- # this upload ID in the final request to either complete or abort the
1336
- # multipart upload request.
1406
+ # subsequent upload part requests (see [UploadPart][1]). You also
1407
+ # include this upload ID in the final request to either complete or
1408
+ # abort the multipart upload request.
1337
1409
  #
1338
1410
  # For more information about multipart uploads, see [Multipart Upload
1339
- # Overview][1].
1411
+ # Overview][2].
1340
1412
  #
1341
1413
  # If you have configured a lifecycle rule to abort incomplete multipart
1342
1414
  # uploads, the upload must complete within the number of days specified
1343
1415
  # in the bucket lifecycle configuration. Otherwise, the incomplete
1344
1416
  # multipart upload becomes eligible for an abort operation and Amazon S3
1345
1417
  # aborts the multipart upload. For more information, see [Aborting
1346
- # Incomplete Multipart Uploads Using a Bucket Lifecycle Policy][2].
1418
+ # Incomplete Multipart Uploads Using a Bucket Lifecycle Policy][3].
1347
1419
  #
1348
1420
  # For information about the permissions required to use the multipart
1349
- # upload API, see [Multipart Upload API and Permissions][3].
1421
+ # upload API, see [Multipart Upload API and Permissions][4].
1350
1422
  #
1351
1423
  # For request signing, multipart upload is just a series of regular
1352
1424
  # requests. You initiate a multipart upload, send one or more requests
1353
1425
  # to upload parts, and then complete the multipart upload process. You
1354
1426
  # sign each request individually. There is nothing special about signing
1355
1427
  # multipart upload requests. For more information about signing, see
1356
- # [Authenticating Requests (AWS Signature Version 4)][4].
1428
+ # [Authenticating Requests (AWS Signature Version 4)][5].
1357
1429
  #
1358
1430
  # <note markdown="1"> After you initiate a multipart upload and upload one or more parts, to
1359
1431
  # stop being charged for storing the uploaded parts, you must either
@@ -1369,9 +1441,9 @@ module Aws::S3
1369
1441
  # your own encryption key, or use AWS Key Management Service (AWS KMS)
1370
1442
  # customer master keys (CMKs) or Amazon S3-managed encryption keys. If
1371
1443
  # you choose to provide your own encryption key, the request headers you
1372
- # provide in UploadPart) and UploadPartCopy) requests must match the
1373
- # headers you used in the request to initiate the upload by using
1374
- # `CreateMultipartUpload`.
1444
+ # provide in [UploadPart](AmazonS3/latest/API/API_UploadPart.html) and
1445
+ # [UploadPartCopy][6] requests must match the headers you used in the
1446
+ # request to initiate the upload by using `CreateMultipartUpload`.
1375
1447
  #
1376
1448
  # To perform a multipart upload with encryption using an AWS KMS CMK,
1377
1449
  # the requester must have permission to the `kms:Encrypt`,
@@ -1387,7 +1459,7 @@ module Aws::S3
1387
1459
  # both the key policy and your IAM user or role.
1388
1460
  #
1389
1461
  # For more information, see [Protecting Data Using Server-Side
1390
- # Encryption][5].
1462
+ # Encryption][7].
1391
1463
  #
1392
1464
  # Access Permissions
1393
1465
  #
@@ -1397,13 +1469,13 @@ module Aws::S3
1397
1469
  # request headers:
1398
1470
  #
1399
1471
  # * Specify a canned ACL with the `x-amz-acl` request header. For more
1400
- # information, see [Canned ACL][6].
1472
+ # information, see [Canned ACL][8].
1401
1473
  #
1402
1474
  # * Specify access permissions explicitly with the `x-amz-grant-read`,
1403
1475
  # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
1404
1476
  # `x-amz-grant-full-control` headers. These parameters map to the
1405
1477
  # set of permissions that Amazon S3 supports in an ACL. For more
1406
- # information, see [Access Control List (ACL) Overview][7].
1478
+ # information, see [Access Control List (ACL) Overview][9].
1407
1479
  #
1408
1480
  # You can use either a canned ACL or specify access permissions
1409
1481
  # explicitly. You cannot do both.
@@ -1422,7 +1494,7 @@ module Aws::S3
1422
1494
  # want AWS to manage the keys used to encrypt data, specify the
1423
1495
  # following headers in the request.
1424
1496
  #
1425
- # * x-amz-server-side​-encryption
1497
+ # * x-amz-server-side-encryption
1426
1498
  #
1427
1499
  # * x-amz-server-side-encryption-aws-kms-key-id
1428
1500
  #
@@ -1439,21 +1511,21 @@ module Aws::S3
1439
1511
  #
1440
1512
  # For more information about server-side encryption with CMKs stored
1441
1513
  # in AWS KMS (SSE-KMS), see [Protecting Data Using Server-Side
1442
- # Encryption with CMKs stored in AWS KMS][8].
1514
+ # Encryption with CMKs stored in AWS KMS][10].
1443
1515
  #
1444
1516
  # * Use customer-provided encryption keys – If you want to manage your
1445
1517
  # own encryption keys, provide all the following headers in the
1446
1518
  # request.
1447
1519
  #
1448
- # * x-amz-server-side​-encryption​-customer-algorithm
1520
+ # * x-amz-server-side-encryption-customer-algorithm
1449
1521
  #
1450
- # * x-amz-server-side​-encryption​-customer-key
1522
+ # * x-amz-server-side-encryption-customer-key
1451
1523
  #
1452
- # * x-amz-server-side​-encryption​-customer-key-MD5
1524
+ # * x-amz-server-side-encryption-customer-key-MD5
1453
1525
  #
1454
1526
  # For more information about server-side encryption with CMKs stored
1455
1527
  # in AWS KMS (SSE-KMS), see [Protecting Data Using Server-Side
1456
- # Encryption with CMKs stored in AWS KMS][8].
1528
+ # Encryption with CMKs stored in AWS KMS][10].
1457
1529
  #
1458
1530
  # Access-Control-List (ACL)-Specific Request Headers
1459
1531
  #
@@ -1463,19 +1535,19 @@ module Aws::S3
1463
1535
  # permissions to individual AWS accounts or to predefined groups
1464
1536
  # defined by Amazon S3. These permissions are then added to the access
1465
1537
  # control list (ACL) on the object. For more information, see [Using
1466
- # ACLs][9]. With this operation, you can grant access permissions
1538
+ # ACLs][11]. With this operation, you can grant access permissions
1467
1539
  # using one of the following two methods:
1468
1540
  #
1469
1541
  # * Specify a canned ACL (`x-amz-acl`) — Amazon S3 supports a set of
1470
1542
  # predefined ACLs, known as *canned ACLs*. Each canned ACL has a
1471
1543
  # predefined set of grantees and permissions. For more information,
1472
- # see [Canned ACL][6].
1544
+ # see [Canned ACL][8].
1473
1545
  #
1474
1546
  # * Specify access permissions explicitly — To explicitly grant access
1475
1547
  # permissions to specific AWS accounts or groups, use the following
1476
1548
  # headers. Each header maps to specific permissions that Amazon S3
1477
1549
  # supports in an ACL. For more information, see [Access Control List
1478
- # (ACL) Overview][7]. In the header, you specify a list of grantees
1550
+ # (ACL) Overview][9]. In the header, you specify a list of grantees
1479
1551
  # who get the specific permission. To grant permissions explicitly,
1480
1552
  # use:
1481
1553
  #
@@ -1520,7 +1592,7 @@ module Aws::S3
1520
1592
  # * South America (São Paulo)
1521
1593
  #
1522
1594
  # For a list of all the Amazon S3 supported Regions and endpoints,
1523
- # see [Regions and Endpoints][10] in the AWS General Reference.
1595
+ # see [Regions and Endpoints][12] in the AWS General Reference.
1524
1596
  #
1525
1597
  # </note>
1526
1598
  #
@@ -1532,28 +1604,34 @@ module Aws::S3
1532
1604
  #
1533
1605
  # The following operations are related to `CreateMultipartUpload`\:
1534
1606
  #
1535
- # * UploadPart
1607
+ # * [UploadPart][1]
1536
1608
  #
1537
- # * CompleteMultipartUpload
1609
+ # * [CompleteMultipartUpload][13]
1538
1610
  #
1539
- # * AbortMultipartUpload
1611
+ # * [AbortMultipartUpload][14]
1540
1612
  #
1541
- # * ListParts
1613
+ # * [ListParts][15]
1542
1614
  #
1543
- # * ListMultipartUploads
1615
+ # * [ListMultipartUploads][16]
1544
1616
  #
1545
1617
  #
1546
1618
  #
1547
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html
1548
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config
1549
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
1550
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html
1551
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
1552
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
1553
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
1554
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html
1555
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
1556
- # [10]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
1619
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
1620
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html
1621
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config
1622
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
1623
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html
1624
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
1625
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
1626
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
1627
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
1628
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html
1629
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
1630
+ # [12]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
1631
+ # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
1632
+ # [14]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
1633
+ # [15]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
1634
+ # [16]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
1557
1635
  #
1558
1636
  # @option params [String] :acl
1559
1637
  # The canned ACL to apply to the object.
@@ -1621,7 +1699,7 @@ module Aws::S3
1621
1699
  # encrypting data. This value is used to store the object and then it is
1622
1700
  # discarded; Amazon S3 does not store the encryption key. The key must
1623
1701
  # be appropriate for use with the algorithm specified in the
1624
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
1702
+ # `x-amz-server-side-encryption-customer-algorithm` header.
1625
1703
  #
1626
1704
  # @option params [String] :sse_customer_key_md5
1627
1705
  # Specifies the 128-bit MD5 digest of the encryption key according to
@@ -1671,6 +1749,11 @@ module Aws::S3
1671
1749
  # Specifies whether you want to apply a Legal Hold to the uploaded
1672
1750
  # object.
1673
1751
  #
1752
+ # @option params [String] :expected_bucket_owner
1753
+ # The account id of the expected bucket owner. If the bucket is owned by
1754
+ # a different account, the request will fail with an HTTP `403 (Access
1755
+ # Denied)` error.
1756
+ #
1674
1757
  # @return [Types::CreateMultipartUploadOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1675
1758
  #
1676
1759
  # * {Types::CreateMultipartUploadOutput#abort_date #abort_date} => Time
@@ -1734,6 +1817,7 @@ module Aws::S3
1734
1817
  # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
1735
1818
  # object_lock_retain_until_date: Time.now,
1736
1819
  # object_lock_legal_hold_status: "ON", # accepts ON, OFF
1820
+ # expected_bucket_owner: "AccountId",
1737
1821
  # })
1738
1822
  #
1739
1823
  # @example Response structure
@@ -1765,12 +1849,23 @@ module Aws::S3
1765
1849
  #
1766
1850
  # **Related Resources**
1767
1851
  #
1768
- # *
1769
- # *
1852
+ # * [CreateBucket][1]
1853
+ #
1854
+ # * [DeleteObject][2]
1855
+ #
1856
+ #
1857
+ #
1858
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
1859
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
1770
1860
  #
1771
1861
  # @option params [required, String] :bucket
1772
1862
  # Specifies the bucket being deleted.
1773
1863
  #
1864
+ # @option params [String] :expected_bucket_owner
1865
+ # The account id of the expected bucket owner. If the bucket is owned by
1866
+ # a different account, the request will fail with an HTTP `403 (Access
1867
+ # Denied)` error.
1868
+ #
1774
1869
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1775
1870
  #
1776
1871
  #
@@ -1786,6 +1881,7 @@ module Aws::S3
1786
1881
  #
1787
1882
  # resp = client.delete_bucket({
1788
1883
  # bucket: "BucketName", # required
1884
+ # expected_bucket_owner: "AccountId",
1789
1885
  # })
1790
1886
  #
1791
1887
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucket AWS API Documentation
@@ -1813,15 +1909,20 @@ module Aws::S3
1813
1909
  # The following operations are related to
1814
1910
  # `DeleteBucketAnalyticsConfiguration`\:
1815
1911
  #
1816
- # *
1817
- # *
1818
- # *
1912
+ # * [GetBucketAnalyticsConfiguration][4]
1913
+ #
1914
+ # * [ListBucketAnalyticsConfigurations][5]
1915
+ #
1916
+ # * [PutBucketAnalyticsConfiguration][6]
1819
1917
  #
1820
1918
  #
1821
1919
  #
1822
1920
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
1823
1921
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
1824
1922
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html
1923
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html
1924
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html
1925
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html
1825
1926
  #
1826
1927
  # @option params [required, String] :bucket
1827
1928
  # The name of the bucket from which an analytics configuration is
@@ -1830,6 +1931,11 @@ module Aws::S3
1830
1931
  # @option params [required, String] :id
1831
1932
  # The ID that identifies the analytics configuration.
1832
1933
  #
1934
+ # @option params [String] :expected_bucket_owner
1935
+ # The account id of the expected bucket owner. If the bucket is owned by
1936
+ # a different account, the request will fail with an HTTP `403 (Access
1937
+ # Denied)` error.
1938
+ #
1833
1939
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1834
1940
  #
1835
1941
  # @example Request syntax with placeholder values
@@ -1837,6 +1943,7 @@ module Aws::S3
1837
1943
  # resp = client.delete_bucket_analytics_configuration({
1838
1944
  # bucket: "BucketName", # required
1839
1945
  # id: "AnalyticsId", # required
1946
+ # expected_bucket_owner: "AccountId",
1840
1947
  # })
1841
1948
  #
1842
1949
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketAnalyticsConfiguration AWS API Documentation
@@ -1859,16 +1966,24 @@ module Aws::S3
1859
1966
  #
1860
1967
  # **Related Resources:**
1861
1968
  #
1862
- # *
1863
- # * RESTOPTIONSobject
1969
+ # * [PutBucketCors][2]
1970
+ #
1971
+ # * [RESTOPTIONSobject][3]
1864
1972
  #
1865
1973
  #
1866
1974
  #
1867
1975
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
1976
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html
1977
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html
1868
1978
  #
1869
1979
  # @option params [required, String] :bucket
1870
1980
  # Specifies the bucket whose `cors` configuration is being deleted.
1871
1981
  #
1982
+ # @option params [String] :expected_bucket_owner
1983
+ # The account id of the expected bucket owner. If the bucket is owned by
1984
+ # a different account, the request will fail with an HTTP `403 (Access
1985
+ # Denied)` error.
1986
+ #
1872
1987
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1873
1988
  #
1874
1989
  #
@@ -1884,6 +1999,7 @@ module Aws::S3
1884
1999
  #
1885
2000
  # resp = client.delete_bucket_cors({
1886
2001
  # bucket: "BucketName", # required
2002
+ # expected_bucket_owner: "AccountId",
1887
2003
  # })
1888
2004
  #
1889
2005
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketCors AWS API Documentation
@@ -1910,26 +2026,34 @@ module Aws::S3
1910
2026
  #
1911
2027
  # **Related Resources**
1912
2028
  #
1913
- # * PutBucketEncryption
2029
+ # * [PutBucketEncryption][4]
1914
2030
  #
1915
- # * GetBucketEncryption
2031
+ # * [GetBucketEncryption][5]
1916
2032
  #
1917
2033
  #
1918
2034
  #
1919
2035
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html
1920
2036
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
1921
2037
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
2038
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html
2039
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html
1922
2040
  #
1923
2041
  # @option params [required, String] :bucket
1924
2042
  # The name of the bucket containing the server-side encryption
1925
2043
  # configuration to delete.
1926
2044
  #
2045
+ # @option params [String] :expected_bucket_owner
2046
+ # The account id of the expected bucket owner. If the bucket is owned by
2047
+ # a different account, the request will fail with an HTTP `403 (Access
2048
+ # Denied)` error.
2049
+ #
1927
2050
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1928
2051
  #
1929
2052
  # @example Request syntax with placeholder values
1930
2053
  #
1931
2054
  # resp = client.delete_bucket_encryption({
1932
2055
  # bucket: "BucketName", # required
2056
+ # expected_bucket_owner: "AccountId",
1933
2057
  # })
1934
2058
  #
1935
2059
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketEncryption AWS API Documentation
@@ -1956,17 +2080,20 @@ module Aws::S3
1956
2080
  #
1957
2081
  # Operations related to `DeleteBucketInventoryConfiguration` include:
1958
2082
  #
1959
- # * GetBucketInventoryConfiguration
2083
+ # * [GetBucketInventoryConfiguration][4]
1960
2084
  #
1961
- # * PutBucketInventoryConfiguration
2085
+ # * [PutBucketInventoryConfiguration][5]
1962
2086
  #
1963
- # * ListBucketInventoryConfigurations
2087
+ # * [ListBucketInventoryConfigurations][6]
1964
2088
  #
1965
2089
  #
1966
2090
  #
1967
2091
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
1968
2092
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
1969
2093
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html
2094
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html
2095
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html
2096
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html
1970
2097
  #
1971
2098
  # @option params [required, String] :bucket
1972
2099
  # The name of the bucket containing the inventory configuration to
@@ -1975,6 +2102,11 @@ module Aws::S3
1975
2102
  # @option params [required, String] :id
1976
2103
  # The ID used to identify the inventory configuration.
1977
2104
  #
2105
+ # @option params [String] :expected_bucket_owner
2106
+ # The account id of the expected bucket owner. If the bucket is owned by
2107
+ # a different account, the request will fail with an HTTP `403 (Access
2108
+ # Denied)` error.
2109
+ #
1978
2110
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1979
2111
  #
1980
2112
  # @example Request syntax with placeholder values
@@ -1982,6 +2114,7 @@ module Aws::S3
1982
2114
  # resp = client.delete_bucket_inventory_configuration({
1983
2115
  # bucket: "BucketName", # required
1984
2116
  # id: "InventoryId", # required
2117
+ # expected_bucket_owner: "AccountId",
1985
2118
  # })
1986
2119
  #
1987
2120
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketInventoryConfiguration AWS API Documentation
@@ -2012,17 +2145,24 @@ module Aws::S3
2012
2145
  #
2013
2146
  # Related actions include:
2014
2147
  #
2015
- # * PutBucketLifecycleConfiguration
2148
+ # * [PutBucketLifecycleConfiguration][2]
2016
2149
  #
2017
- # * GetBucketLifecycleConfiguration
2150
+ # * [GetBucketLifecycleConfiguration][3]
2018
2151
  #
2019
2152
  #
2020
2153
  #
2021
2154
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-actions
2155
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
2156
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
2022
2157
  #
2023
2158
  # @option params [required, String] :bucket
2024
2159
  # The bucket name of the lifecycle to delete.
2025
2160
  #
2161
+ # @option params [String] :expected_bucket_owner
2162
+ # The account id of the expected bucket owner. If the bucket is owned by
2163
+ # a different account, the request will fail with an HTTP `403 (Access
2164
+ # Denied)` error.
2165
+ #
2026
2166
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2027
2167
  #
2028
2168
  #
@@ -2038,6 +2178,7 @@ module Aws::S3
2038
2178
  #
2039
2179
  # resp = client.delete_bucket_lifecycle({
2040
2180
  # bucket: "BucketName", # required
2181
+ # expected_bucket_owner: "AccountId",
2041
2182
  # })
2042
2183
  #
2043
2184
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketLifecycle AWS API Documentation
@@ -2066,11 +2207,11 @@ module Aws::S3
2066
2207
  # The following operations are related to
2067
2208
  # `DeleteBucketMetricsConfiguration`\:
2068
2209
  #
2069
- # * GetBucketMetricsConfiguration
2210
+ # * [GetBucketMetricsConfiguration][4]
2070
2211
  #
2071
- # * PutBucketMetricsConfiguration
2212
+ # * [PutBucketMetricsConfiguration][5]
2072
2213
  #
2073
- # * ListBucketMetricsConfigurations
2214
+ # * [ListBucketMetricsConfigurations][6]
2074
2215
  #
2075
2216
  # * [Monitoring Metrics with Amazon CloudWatch][3]
2076
2217
  #
@@ -2079,6 +2220,9 @@ module Aws::S3
2079
2220
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
2080
2221
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
2081
2222
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html
2223
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html
2224
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html
2225
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html
2082
2226
  #
2083
2227
  # @option params [required, String] :bucket
2084
2228
  # The name of the bucket containing the metrics configuration to delete.
@@ -2086,6 +2230,11 @@ module Aws::S3
2086
2230
  # @option params [required, String] :id
2087
2231
  # The ID used to identify the metrics configuration.
2088
2232
  #
2233
+ # @option params [String] :expected_bucket_owner
2234
+ # The account id of the expected bucket owner. If the bucket is owned by
2235
+ # a different account, the request will fail with an HTTP `403 (Access
2236
+ # Denied)` error.
2237
+ #
2089
2238
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2090
2239
  #
2091
2240
  # @example Request syntax with placeholder values
@@ -2093,6 +2242,7 @@ module Aws::S3
2093
2242
  # resp = client.delete_bucket_metrics_configuration({
2094
2243
  # bucket: "BucketName", # required
2095
2244
  # id: "MetricsId", # required
2245
+ # expected_bucket_owner: "AccountId",
2096
2246
  # })
2097
2247
  #
2098
2248
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketMetricsConfiguration AWS API Documentation
@@ -2126,13 +2276,23 @@ module Aws::S3
2126
2276
  #
2127
2277
  # The following operations are related to `DeleteBucketPolicy`
2128
2278
  #
2129
- # * CreateBucket
2279
+ # * [CreateBucket][1]
2280
+ #
2281
+ # * [DeleteObject][2]
2130
2282
  #
2131
- # * DeleteObject
2283
+ #
2284
+ #
2285
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
2286
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
2132
2287
  #
2133
2288
  # @option params [required, String] :bucket
2134
2289
  # The bucket name.
2135
2290
  #
2291
+ # @option params [String] :expected_bucket_owner
2292
+ # The account id of the expected bucket owner. If the bucket is owned by
2293
+ # a different account, the request will fail with an HTTP `403 (Access
2294
+ # Denied)` error.
2295
+ #
2136
2296
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2137
2297
  #
2138
2298
  #
@@ -2148,6 +2308,7 @@ module Aws::S3
2148
2308
  #
2149
2309
  # resp = client.delete_bucket_policy({
2150
2310
  # bucket: "BucketName", # required
2311
+ # expected_bucket_owner: "AccountId",
2151
2312
  # })
2152
2313
  #
2153
2314
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketPolicy AWS API Documentation
@@ -2179,18 +2340,25 @@ module Aws::S3
2179
2340
  #
2180
2341
  # The following operations are related to `DeleteBucketReplication`\:
2181
2342
  #
2182
- # * PutBucketReplication
2343
+ # * [PutBucketReplication][3]
2183
2344
  #
2184
- # * GetBucketReplication
2345
+ # * [GetBucketReplication][4]
2185
2346
  #
2186
2347
  #
2187
2348
  #
2188
2349
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
2189
2350
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
2351
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html
2352
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html
2190
2353
  #
2191
2354
  # @option params [required, String] :bucket
2192
2355
  # The bucket name.
2193
2356
  #
2357
+ # @option params [String] :expected_bucket_owner
2358
+ # The account id of the expected bucket owner. If the bucket is owned by
2359
+ # a different account, the request will fail with an HTTP `403 (Access
2360
+ # Denied)` error.
2361
+ #
2194
2362
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2195
2363
  #
2196
2364
  #
@@ -2206,6 +2374,7 @@ module Aws::S3
2206
2374
  #
2207
2375
  # resp = client.delete_bucket_replication({
2208
2376
  # bucket: "BucketName", # required
2377
+ # expected_bucket_owner: "AccountId",
2209
2378
  # })
2210
2379
  #
2211
2380
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketReplication AWS API Documentation
@@ -2225,13 +2394,23 @@ module Aws::S3
2225
2394
  #
2226
2395
  # The following operations are related to `DeleteBucketTagging`\:
2227
2396
  #
2228
- # * GetBucketTagging
2397
+ # * [GetBucketTagging][1]
2398
+ #
2399
+ # * [PutBucketTagging][2]
2400
+ #
2229
2401
  #
2230
- # * PutBucketTagging
2402
+ #
2403
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html
2404
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html
2231
2405
  #
2232
2406
  # @option params [required, String] :bucket
2233
2407
  # The bucket that has the tag set to be removed.
2234
2408
  #
2409
+ # @option params [String] :expected_bucket_owner
2410
+ # The account id of the expected bucket owner. If the bucket is owned by
2411
+ # a different account, the request will fail with an HTTP `403 (Access
2412
+ # Denied)` error.
2413
+ #
2235
2414
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2236
2415
  #
2237
2416
  #
@@ -2247,6 +2426,7 @@ module Aws::S3
2247
2426
  #
2248
2427
  # resp = client.delete_bucket_tagging({
2249
2428
  # bucket: "BucketName", # required
2429
+ # expected_bucket_owner: "AccountId",
2250
2430
  # })
2251
2431
  #
2252
2432
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketTagging AWS API Documentation
@@ -2276,18 +2456,25 @@ module Aws::S3
2276
2456
  #
2277
2457
  # The following operations are related to `DeleteBucketWebsite`\:
2278
2458
  #
2279
- # * GetBucketWebsite
2459
+ # * [GetBucketWebsite][2]
2280
2460
  #
2281
- # * PutBucketWebsite
2461
+ # * [PutBucketWebsite][3]
2282
2462
  #
2283
2463
  #
2284
2464
  #
2285
2465
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html
2466
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketWebsite.html
2467
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html
2286
2468
  #
2287
2469
  # @option params [required, String] :bucket
2288
2470
  # The bucket name for which you want to remove the website
2289
2471
  # configuration.
2290
2472
  #
2473
+ # @option params [String] :expected_bucket_owner
2474
+ # The account id of the expected bucket owner. If the bucket is owned by
2475
+ # a different account, the request will fail with an HTTP `403 (Access
2476
+ # Denied)` error.
2477
+ #
2291
2478
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2292
2479
  #
2293
2480
  #
@@ -2303,6 +2490,7 @@ module Aws::S3
2303
2490
  #
2304
2491
  # resp = client.delete_bucket_website({
2305
2492
  # bucket: "BucketName", # required
2493
+ # expected_bucket_owner: "AccountId",
2306
2494
  # })
2307
2495
  #
2308
2496
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketWebsite AWS API Documentation
@@ -2333,15 +2521,15 @@ module Aws::S3
2333
2521
  # see sample requests that use versioning, see [Sample Request][2].
2334
2522
  #
2335
2523
  # You can delete objects by explicitly calling the DELETE Object API or
2336
- # configure its lifecycle (PutBucketLifecycle) to enable Amazon S3 to
2337
- # remove them for you. If you want to block users or accounts from
2524
+ # configure its lifecycle ([PutBucketLifecycle][3]) to enable Amazon S3
2525
+ # to remove them for you. If you want to block users or accounts from
2338
2526
  # removing or deleting objects from your bucket, you must deny them the
2339
2527
  # `s3:DeleteObject`, `s3:DeleteObjectVersion`, and
2340
2528
  # `s3:PutLifeCycleConfiguration` actions.
2341
2529
  #
2342
2530
  # The following operation is related to `DeleteObject`\:
2343
2531
  #
2344
- # * PutObject
2532
+ # * [PutObject][4]
2345
2533
  #
2346
2534
  # ^
2347
2535
  #
@@ -2349,6 +2537,8 @@ module Aws::S3
2349
2537
  #
2350
2538
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html
2351
2539
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete
2540
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
2541
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
2352
2542
  #
2353
2543
  # @option params [required, String] :bucket
2354
2544
  # The bucket name of the bucket containing the object.
@@ -2392,6 +2582,11 @@ module Aws::S3
2392
2582
  # Indicates whether S3 Object Lock should bypass Governance-mode
2393
2583
  # restrictions to process this operation.
2394
2584
  #
2585
+ # @option params [String] :expected_bucket_owner
2586
+ # The account id of the expected bucket owner. If the bucket is owned by
2587
+ # a different account, the request will fail with an HTTP `403 (Access
2588
+ # Denied)` error.
2589
+ #
2395
2590
  # @return [Types::DeleteObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2396
2591
  #
2397
2592
  # * {Types::DeleteObjectOutput#delete_marker #delete_marker} => Boolean
@@ -2399,15 +2594,6 @@ module Aws::S3
2399
2594
  # * {Types::DeleteObjectOutput#request_charged #request_charged} => String
2400
2595
  #
2401
2596
  #
2402
- # @example Example: To delete an object (from a non-versioned bucket)
2403
- #
2404
- # # The following example deletes an object from a non-versioned bucket.
2405
- #
2406
- # resp = client.delete_object({
2407
- # bucket: "ExampleBucket",
2408
- # key: "HappyFace.jpg",
2409
- # })
2410
- #
2411
2597
  # @example Example: To delete an object
2412
2598
  #
2413
2599
  # # The following example deletes an object from an S3 bucket.
@@ -2421,6 +2607,15 @@ module Aws::S3
2421
2607
  # {
2422
2608
  # }
2423
2609
  #
2610
+ # @example Example: To delete an object (from a non-versioned bucket)
2611
+ #
2612
+ # # The following example deletes an object from a non-versioned bucket.
2613
+ #
2614
+ # resp = client.delete_object({
2615
+ # bucket: "ExampleBucket",
2616
+ # key: "HappyFace.jpg",
2617
+ # })
2618
+ #
2424
2619
  # @example Request syntax with placeholder values
2425
2620
  #
2426
2621
  # resp = client.delete_object({
@@ -2430,6 +2625,7 @@ module Aws::S3
2430
2625
  # version_id: "ObjectVersionId",
2431
2626
  # request_payer: "requester", # accepts requester
2432
2627
  # bypass_governance_retention: false,
2628
+ # expected_bucket_owner: "AccountId",
2433
2629
  # })
2434
2630
  #
2435
2631
  # @example Response structure
@@ -2460,13 +2656,15 @@ module Aws::S3
2460
2656
  # The following operations are related to
2461
2657
  # `DeleteBucketMetricsConfiguration`\:
2462
2658
  #
2463
- # * PutObjectTagging
2659
+ # * [PutObjectTagging][2]
2464
2660
  #
2465
- # * GetObjectTagging
2661
+ # * [GetObjectTagging][3]
2466
2662
  #
2467
2663
  #
2468
2664
  #
2469
2665
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html
2666
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html
2667
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html
2470
2668
  #
2471
2669
  # @option params [required, String] :bucket
2472
2670
  # The bucket name containing the objects from which to remove the tags.
@@ -2489,40 +2687,45 @@ module Aws::S3
2489
2687
  # @option params [String] :version_id
2490
2688
  # The versionId of the object that the tag-set will be removed from.
2491
2689
  #
2690
+ # @option params [String] :expected_bucket_owner
2691
+ # The account id of the expected bucket owner. If the bucket is owned by
2692
+ # a different account, the request will fail with an HTTP `403 (Access
2693
+ # Denied)` error.
2694
+ #
2492
2695
  # @return [Types::DeleteObjectTaggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2493
2696
  #
2494
2697
  # * {Types::DeleteObjectTaggingOutput#version_id #version_id} => String
2495
2698
  #
2496
2699
  #
2497
- # @example Example: To remove tag set from an object
2700
+ # @example Example: To remove tag set from an object version
2498
2701
  #
2499
- # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
2500
- # # operation removes tag set from the latest object version.
2702
+ # # The following example removes tag set associated with the specified object version. The request specifies both the
2703
+ # # object key and object version.
2501
2704
  #
2502
2705
  # resp = client.delete_object_tagging({
2503
2706
  # bucket: "examplebucket",
2504
2707
  # key: "HappyFace.jpg",
2708
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2505
2709
  # })
2506
2710
  #
2507
2711
  # resp.to_h outputs the following:
2508
2712
  # {
2509
- # version_id: "null",
2713
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2510
2714
  # }
2511
2715
  #
2512
- # @example Example: To remove tag set from an object version
2716
+ # @example Example: To remove tag set from an object
2513
2717
  #
2514
- # # The following example removes tag set associated with the specified object version. The request specifies both the
2515
- # # object key and object version.
2718
+ # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
2719
+ # # operation removes tag set from the latest object version.
2516
2720
  #
2517
2721
  # resp = client.delete_object_tagging({
2518
2722
  # bucket: "examplebucket",
2519
2723
  # key: "HappyFace.jpg",
2520
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2521
2724
  # })
2522
2725
  #
2523
2726
  # resp.to_h outputs the following:
2524
2727
  # {
2525
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2728
+ # version_id: "null",
2526
2729
  # }
2527
2730
  #
2528
2731
  # @example Request syntax with placeholder values
@@ -2531,6 +2734,7 @@ module Aws::S3
2531
2734
  # bucket: "BucketName", # required
2532
2735
  # key: "ObjectKey", # required
2533
2736
  # version_id: "ObjectVersionId",
2737
+ # expected_bucket_owner: "AccountId",
2534
2738
  # })
2535
2739
  #
2536
2740
  # @example Response structure
@@ -2580,19 +2784,24 @@ module Aws::S3
2580
2784
  #
2581
2785
  # The following operations are related to `DeleteObjects`\:
2582
2786
  #
2583
- # * CreateMultipartUpload
2787
+ # * [CreateMultipartUpload][2]
2584
2788
  #
2585
- # * UploadPart
2789
+ # * [UploadPart][3]
2586
2790
  #
2587
- # * CompleteMultipartUpload
2791
+ # * [CompleteMultipartUpload][4]
2588
2792
  #
2589
- # * ListParts
2793
+ # * [ListParts][5]
2590
2794
  #
2591
- # * AbortMultipartUpload
2795
+ # * [AbortMultipartUpload][6]
2592
2796
  #
2593
2797
  #
2594
2798
  #
2595
2799
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete
2800
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
2801
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
2802
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
2803
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
2804
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
2596
2805
  #
2597
2806
  # @option params [required, String] :bucket
2598
2807
  # The bucket name containing the objects to delete.
@@ -2634,6 +2843,11 @@ module Aws::S3
2634
2843
  # Governance-type Object Lock in place. You must have sufficient
2635
2844
  # permissions to perform this operation.
2636
2845
  #
2846
+ # @option params [String] :expected_bucket_owner
2847
+ # The account id of the expected bucket owner. If the bucket is owned by
2848
+ # a different account, the request will fail with an HTTP `403 (Access
2849
+ # Denied)` error.
2850
+ #
2637
2851
  # @return [Types::DeleteObjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2638
2852
  #
2639
2853
  # * {Types::DeleteObjectsOutput#deleted #deleted} => Array&lt;Types::DeletedObject&gt;
@@ -2641,20 +2855,22 @@ module Aws::S3
2641
2855
  # * {Types::DeleteObjectsOutput#errors #errors} => Array&lt;Types::Error&gt;
2642
2856
  #
2643
2857
  #
2644
- # @example Example: To delete multiple objects from a versioned bucket
2858
+ # @example Example: To delete multiple object versions from a versioned bucket
2645
2859
  #
2646
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
2647
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
2860
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
2861
+ # # versions and returns the key and versions of deleted objects in the response.
2648
2862
  #
2649
2863
  # resp = client.delete_objects({
2650
2864
  # bucket: "examplebucket",
2651
2865
  # delete: {
2652
2866
  # objects: [
2653
2867
  # {
2654
- # key: "objectkey1",
2868
+ # key: "HappyFace.jpg",
2869
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
2655
2870
  # },
2656
2871
  # {
2657
- # key: "objectkey2",
2872
+ # key: "HappyFace.jpg",
2873
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
2658
2874
  # },
2659
2875
  # ],
2660
2876
  # quiet: false,
@@ -2665,34 +2881,30 @@ module Aws::S3
2665
2881
  # {
2666
2882
  # deleted: [
2667
2883
  # {
2668
- # delete_marker: true,
2669
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
2670
- # key: "objectkey1",
2884
+ # key: "HappyFace.jpg",
2885
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
2671
2886
  # },
2672
2887
  # {
2673
- # delete_marker: true,
2674
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
2675
- # key: "objectkey2",
2888
+ # key: "HappyFace.jpg",
2889
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
2676
2890
  # },
2677
2891
  # ],
2678
2892
  # }
2679
2893
  #
2680
- # @example Example: To delete multiple object versions from a versioned bucket
2894
+ # @example Example: To delete multiple objects from a versioned bucket
2681
2895
  #
2682
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
2683
- # # versions and returns the key and versions of deleted objects in the response.
2896
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
2897
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
2684
2898
  #
2685
2899
  # resp = client.delete_objects({
2686
2900
  # bucket: "examplebucket",
2687
2901
  # delete: {
2688
2902
  # objects: [
2689
2903
  # {
2690
- # key: "HappyFace.jpg",
2691
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
2904
+ # key: "objectkey1",
2692
2905
  # },
2693
2906
  # {
2694
- # key: "HappyFace.jpg",
2695
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
2907
+ # key: "objectkey2",
2696
2908
  # },
2697
2909
  # ],
2698
2910
  # quiet: false,
@@ -2703,12 +2915,14 @@ module Aws::S3
2703
2915
  # {
2704
2916
  # deleted: [
2705
2917
  # {
2706
- # key: "HappyFace.jpg",
2707
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
2918
+ # delete_marker: true,
2919
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
2920
+ # key: "objectkey1",
2708
2921
  # },
2709
2922
  # {
2710
- # key: "HappyFace.jpg",
2711
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
2923
+ # delete_marker: true,
2924
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
2925
+ # key: "objectkey2",
2712
2926
  # },
2713
2927
  # ],
2714
2928
  # }
@@ -2729,6 +2943,7 @@ module Aws::S3
2729
2943
  # mfa: "MFA",
2730
2944
  # request_payer: "requester", # accepts requester
2731
2945
  # bypass_governance_retention: false,
2946
+ # expected_bucket_owner: "AccountId",
2732
2947
  # })
2733
2948
  #
2734
2949
  # @example Response structure
@@ -2765,28 +2980,37 @@ module Aws::S3
2765
2980
  #
2766
2981
  # * [Using Amazon S3 Block Public Access][3]
2767
2982
  #
2768
- # * GetPublicAccessBlock
2983
+ # * [GetPublicAccessBlock][4]
2769
2984
  #
2770
- # * PutPublicAccessBlock
2985
+ # * [PutPublicAccessBlock][5]
2771
2986
  #
2772
- # * GetBucketPolicyStatus
2987
+ # * [GetBucketPolicyStatus][6]
2773
2988
  #
2774
2989
  #
2775
2990
  #
2776
2991
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
2777
2992
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
2778
2993
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html
2994
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html
2995
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html
2996
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html
2779
2997
  #
2780
2998
  # @option params [required, String] :bucket
2781
2999
  # The Amazon S3 bucket whose `PublicAccessBlock` configuration you want
2782
3000
  # to delete.
2783
3001
  #
3002
+ # @option params [String] :expected_bucket_owner
3003
+ # The account id of the expected bucket owner. If the bucket is owned by
3004
+ # a different account, the request will fail with an HTTP `403 (Access
3005
+ # Denied)` error.
3006
+ #
2784
3007
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2785
3008
  #
2786
3009
  # @example Request syntax with placeholder values
2787
3010
  #
2788
3011
  # resp = client.delete_public_access_block({
2789
3012
  # bucket: "BucketName", # required
3013
+ # expected_bucket_owner: "AccountId",
2790
3014
  # })
2791
3015
  #
2792
3016
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeletePublicAccessBlock AWS API Documentation
@@ -2813,19 +3037,19 @@ module Aws::S3
2813
3037
  # Storage Service Developer Guide*.
2814
3038
  #
2815
3039
  # You set the Transfer Acceleration state of an existing bucket to
2816
- # `Enabled` or `Suspended` by using the PutBucketAccelerateConfiguration
2817
- # operation.
3040
+ # `Enabled` or `Suspended` by using the
3041
+ # [PutBucketAccelerateConfiguration][3] operation.
2818
3042
  #
2819
3043
  # A GET `accelerate` request does not return a state value for a bucket
2820
3044
  # that has no transfer acceleration state. A bucket has no Transfer
2821
3045
  # Acceleration state if a state has never been set on the bucket.
2822
3046
  #
2823
3047
  # For more information about transfer acceleration, see [Transfer
2824
- # Acceleration][3] in the Amazon Simple Storage Service Developer Guide.
3048
+ # Acceleration][4] in the Amazon Simple Storage Service Developer Guide.
2825
3049
  #
2826
3050
  # **Related Resources**
2827
3051
  #
2828
- # * PutBucketAccelerateConfiguration
3052
+ # * [PutBucketAccelerateConfiguration][3]
2829
3053
  #
2830
3054
  # ^
2831
3055
  #
@@ -2833,12 +3057,18 @@ module Aws::S3
2833
3057
  #
2834
3058
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
2835
3059
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
2836
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html
3060
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html
3061
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html
2837
3062
  #
2838
3063
  # @option params [required, String] :bucket
2839
3064
  # Name of the bucket for which the accelerate configuration is
2840
3065
  # retrieved.
2841
3066
  #
3067
+ # @option params [String] :expected_bucket_owner
3068
+ # The account id of the expected bucket owner. If the bucket is owned by
3069
+ # a different account, the request will fail with an HTTP `403 (Access
3070
+ # Denied)` error.
3071
+ #
2842
3072
  # @return [Types::GetBucketAccelerateConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2843
3073
  #
2844
3074
  # * {Types::GetBucketAccelerateConfigurationOutput#status #status} => String
@@ -2847,6 +3077,7 @@ module Aws::S3
2847
3077
  #
2848
3078
  # resp = client.get_bucket_accelerate_configuration({
2849
3079
  # bucket: "BucketName", # required
3080
+ # expected_bucket_owner: "AccountId",
2850
3081
  # })
2851
3082
  #
2852
3083
  # @example Response structure
@@ -2871,12 +3102,22 @@ module Aws::S3
2871
3102
  #
2872
3103
  # **Related Resources**
2873
3104
  #
2874
- # *
3105
+ # * [ListObjects][1]
3106
+ #
2875
3107
  # ^
2876
3108
  #
3109
+ #
3110
+ #
3111
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html
3112
+ #
2877
3113
  # @option params [required, String] :bucket
2878
3114
  # Specifies the S3 bucket whose ACL is being requested.
2879
3115
  #
3116
+ # @option params [String] :expected_bucket_owner
3117
+ # The account id of the expected bucket owner. If the bucket is owned by
3118
+ # a different account, the request will fail with an HTTP `403 (Access
3119
+ # Denied)` error.
3120
+ #
2880
3121
  # @return [Types::GetBucketAclOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2881
3122
  #
2882
3123
  # * {Types::GetBucketAclOutput#owner #owner} => Types::Owner
@@ -2886,6 +3127,7 @@ module Aws::S3
2886
3127
  #
2887
3128
  # resp = client.get_bucket_acl({
2888
3129
  # bucket: "BucketName", # required
3130
+ # expected_bucket_owner: "AccountId",
2889
3131
  # })
2890
3132
  #
2891
3133
  # @example Response structure
@@ -2927,15 +3169,20 @@ module Aws::S3
2927
3169
  #
2928
3170
  # **Related Resources**
2929
3171
  #
2930
- # *
2931
- # *
2932
- # *
3172
+ # * [DeleteBucketAnalyticsConfiguration][4]
3173
+ #
3174
+ # * [ListBucketAnalyticsConfigurations][5]
3175
+ #
3176
+ # * [PutBucketAnalyticsConfiguration][6]
2933
3177
  #
2934
3178
  #
2935
3179
  #
2936
3180
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
2937
3181
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
2938
3182
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html
3183
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html
3184
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html
3185
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html
2939
3186
  #
2940
3187
  # @option params [required, String] :bucket
2941
3188
  # The name of the bucket from which an analytics configuration is
@@ -2944,6 +3191,11 @@ module Aws::S3
2944
3191
  # @option params [required, String] :id
2945
3192
  # The ID that identifies the analytics configuration.
2946
3193
  #
3194
+ # @option params [String] :expected_bucket_owner
3195
+ # The account id of the expected bucket owner. If the bucket is owned by
3196
+ # a different account, the request will fail with an HTTP `403 (Access
3197
+ # Denied)` error.
3198
+ #
2947
3199
  # @return [Types::GetBucketAnalyticsConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2948
3200
  #
2949
3201
  # * {Types::GetBucketAnalyticsConfigurationOutput#analytics_configuration #analytics_configuration} => Types::AnalyticsConfiguration
@@ -2953,6 +3205,7 @@ module Aws::S3
2953
3205
  # resp = client.get_bucket_analytics_configuration({
2954
3206
  # bucket: "BucketName", # required
2955
3207
  # id: "AnalyticsId", # required
3208
+ # expected_bucket_owner: "AccountId",
2956
3209
  # })
2957
3210
  #
2958
3211
  # @example Response structure
@@ -2991,17 +3244,24 @@ module Aws::S3
2991
3244
  #
2992
3245
  # The following operations are related to `GetBucketCors`\:
2993
3246
  #
2994
- # * PutBucketCors
3247
+ # * [PutBucketCors][2]
2995
3248
  #
2996
- # * DeleteBucketCors
3249
+ # * [DeleteBucketCors][3]
2997
3250
  #
2998
3251
  #
2999
3252
  #
3000
3253
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
3254
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html
3255
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html
3001
3256
  #
3002
3257
  # @option params [required, String] :bucket
3003
3258
  # The bucket name for which to get the cors configuration.
3004
3259
  #
3260
+ # @option params [String] :expected_bucket_owner
3261
+ # The account id of the expected bucket owner. If the bucket is owned by
3262
+ # a different account, the request will fail with an HTTP `403 (Access
3263
+ # Denied)` error.
3264
+ #
3005
3265
  # @return [Types::GetBucketCorsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3006
3266
  #
3007
3267
  # * {Types::GetBucketCorsOutput#cors_rules #cors_rules} => Array&lt;Types::CORSRule&gt;
@@ -3037,6 +3297,7 @@ module Aws::S3
3037
3297
  #
3038
3298
  # resp = client.get_bucket_cors({
3039
3299
  # bucket: "BucketName", # required
3300
+ # expected_bucket_owner: "AccountId",
3040
3301
  # })
3041
3302
  #
3042
3303
  # @example Response structure
@@ -3074,20 +3335,27 @@ module Aws::S3
3074
3335
  #
3075
3336
  # The following operations are related to `GetBucketEncryption`\:
3076
3337
  #
3077
- # * PutBucketEncryption
3338
+ # * [PutBucketEncryption][4]
3078
3339
  #
3079
- # * DeleteBucketEncryption
3340
+ # * [DeleteBucketEncryption][5]
3080
3341
  #
3081
3342
  #
3082
3343
  #
3083
3344
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html
3084
3345
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
3085
3346
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
3347
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html
3348
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html
3086
3349
  #
3087
3350
  # @option params [required, String] :bucket
3088
3351
  # The name of the bucket from which the server-side encryption
3089
3352
  # configuration is retrieved.
3090
3353
  #
3354
+ # @option params [String] :expected_bucket_owner
3355
+ # The account id of the expected bucket owner. If the bucket is owned by
3356
+ # a different account, the request will fail with an HTTP `403 (Access
3357
+ # Denied)` error.
3358
+ #
3091
3359
  # @return [Types::GetBucketEncryptionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3092
3360
  #
3093
3361
  # * {Types::GetBucketEncryptionOutput#server_side_encryption_configuration #server_side_encryption_configuration} => Types::ServerSideEncryptionConfiguration
@@ -3096,6 +3364,7 @@ module Aws::S3
3096
3364
  #
3097
3365
  # resp = client.get_bucket_encryption({
3098
3366
  # bucket: "BucketName", # required
3367
+ # expected_bucket_owner: "AccountId",
3099
3368
  # })
3100
3369
  #
3101
3370
  # @example Response structure
@@ -3129,17 +3398,20 @@ module Aws::S3
3129
3398
  # The following operations are related to
3130
3399
  # `GetBucketInventoryConfiguration`\:
3131
3400
  #
3132
- # * DeleteBucketInventoryConfiguration
3401
+ # * [DeleteBucketInventoryConfiguration][4]
3133
3402
  #
3134
- # * ListBucketInventoryConfigurations
3403
+ # * [ListBucketInventoryConfigurations][5]
3135
3404
  #
3136
- # * PutBucketInventoryConfiguration
3405
+ # * [PutBucketInventoryConfiguration][6]
3137
3406
  #
3138
3407
  #
3139
3408
  #
3140
3409
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
3141
3410
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
3142
3411
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html
3412
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html
3413
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html
3414
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html
3143
3415
  #
3144
3416
  # @option params [required, String] :bucket
3145
3417
  # The name of the bucket containing the inventory configuration to
@@ -3148,6 +3420,11 @@ module Aws::S3
3148
3420
  # @option params [required, String] :id
3149
3421
  # The ID used to identify the inventory configuration.
3150
3422
  #
3423
+ # @option params [String] :expected_bucket_owner
3424
+ # The account id of the expected bucket owner. If the bucket is owned by
3425
+ # a different account, the request will fail with an HTTP `403 (Access
3426
+ # Denied)` error.
3427
+ #
3151
3428
  # @return [Types::GetBucketInventoryConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3152
3429
  #
3153
3430
  # * {Types::GetBucketInventoryConfigurationOutput#inventory_configuration #inventory_configuration} => Types::InventoryConfiguration
@@ -3157,6 +3434,7 @@ module Aws::S3
3157
3434
  # resp = client.get_bucket_inventory_configuration({
3158
3435
  # bucket: "BucketName", # required
3159
3436
  # id: "InventoryId", # required
3437
+ # expected_bucket_owner: "AccountId",
3160
3438
  # })
3161
3439
  #
3162
3440
  # @example Response structure
@@ -3184,20 +3462,21 @@ module Aws::S3
3184
3462
  end
3185
3463
 
3186
3464
  # For an updated version of this API, see
3187
- # GetBucketLifecycleConfiguration. If you configured a bucket lifecycle
3188
- # using the `filter` element, you should see the updated version of this
3189
- # topic. This topic is provided for backward compatibility.
3465
+ # [GetBucketLifecycleConfiguration][1]. If you configured a bucket
3466
+ # lifecycle using the `filter` element, you should see the updated
3467
+ # version of this topic. This topic is provided for backward
3468
+ # compatibility.
3190
3469
  #
3191
3470
  # Returns the lifecycle configuration information set on the bucket. For
3192
3471
  # information about lifecycle configuration, see [Object Lifecycle
3193
- # Management][1].
3472
+ # Management][2].
3194
3473
  #
3195
3474
  # To use this operation, you must have permission to perform the
3196
3475
  # `s3:GetLifecycleConfiguration` action. The bucket owner has this
3197
3476
  # permission by default. The bucket owner can grant this permission to
3198
3477
  # others. For more information about permissions, see [Permissions
3199
- # Related to Bucket Subresource Operations][2] and [Managing Access
3200
- # Permissions to Your Amazon S3 Resources][3].
3478
+ # Related to Bucket Subresource Operations][3] and [Managing Access
3479
+ # Permissions to Your Amazon S3 Resources][4].
3201
3480
  #
3202
3481
  # `GetBucketLifecycle` has the following special error:
3203
3482
  #
@@ -3211,21 +3490,29 @@ module Aws::S3
3211
3490
  #
3212
3491
  # The following operations are related to `GetBucketLifecycle`\:
3213
3492
  #
3214
- # * GetBucketLifecycleConfiguration
3493
+ # * [GetBucketLifecycleConfiguration][1]
3215
3494
  #
3216
- # * PutBucketLifecycle
3495
+ # * [PutBucketLifecycle][5]
3217
3496
  #
3218
- # * DeleteBucketLifecycle
3497
+ # * [DeleteBucketLifecycle][6]
3219
3498
  #
3220
3499
  #
3221
3500
  #
3222
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
3223
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
3224
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
3501
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
3502
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
3503
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
3504
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
3505
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
3506
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html
3225
3507
  #
3226
3508
  # @option params [required, String] :bucket
3227
3509
  # The name of the bucket for which to get the lifecycle information.
3228
3510
  #
3511
+ # @option params [String] :expected_bucket_owner
3512
+ # The account id of the expected bucket owner. If the bucket is owned by
3513
+ # a different account, the request will fail with an HTTP `403 (Access
3514
+ # Denied)` error.
3515
+ #
3229
3516
  # @return [Types::GetBucketLifecycleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3230
3517
  #
3231
3518
  # * {Types::GetBucketLifecycleOutput#rules #rules} => Array&lt;Types::Rule&gt;
@@ -3257,6 +3544,7 @@ module Aws::S3
3257
3544
  #
3258
3545
  # resp = client.get_bucket_lifecycle({
3259
3546
  # bucket: "BucketName", # required
3547
+ # expected_bucket_owner: "AccountId",
3260
3548
  # })
3261
3549
  #
3262
3550
  # @example Response structure
@@ -3292,20 +3580,20 @@ module Aws::S3
3292
3580
  # specify a filter to select a subset of objects to which the rule
3293
3581
  # applies. If you are still using previous version of the lifecycle
3294
3582
  # configuration, it works. For the earlier API description, see
3295
- # GetBucketLifecycle.
3583
+ # [GetBucketLifecycle][1].
3296
3584
  #
3297
3585
  # </note>
3298
3586
  #
3299
3587
  # Returns the lifecycle configuration information set on the bucket. For
3300
3588
  # information about lifecycle configuration, see [Object Lifecycle
3301
- # Management][1].
3589
+ # Management][2].
3302
3590
  #
3303
3591
  # To use this operation, you must have permission to perform the
3304
3592
  # `s3:GetLifecycleConfiguration` action. The bucket owner has this
3305
3593
  # permission, by default. The bucket owner can grant this permission to
3306
3594
  # others. For more information about permissions, see [Permissions
3307
- # Related to Bucket Subresource Operations][2] and [Managing Access
3308
- # Permissions to Your Amazon S3 Resources][3].
3595
+ # Related to Bucket Subresource Operations][3] and [Managing Access
3596
+ # Permissions to Your Amazon S3 Resources][4].
3309
3597
  #
3310
3598
  # `GetBucketLifecycleConfiguration` has the following special error:
3311
3599
  #
@@ -3320,21 +3608,29 @@ module Aws::S3
3320
3608
  # The following operations are related to
3321
3609
  # `GetBucketLifecycleConfiguration`\:
3322
3610
  #
3323
- # * GetBucketLifecycle
3611
+ # * [GetBucketLifecycle][1]
3324
3612
  #
3325
- # * PutBucketLifecycle
3613
+ # * [PutBucketLifecycle][5]
3326
3614
  #
3327
- # * DeleteBucketLifecycle
3615
+ # * [DeleteBucketLifecycle][6]
3328
3616
  #
3329
3617
  #
3330
3618
  #
3331
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
3332
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
3333
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
3619
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html
3620
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
3621
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
3622
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
3623
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
3624
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html
3334
3625
  #
3335
3626
  # @option params [required, String] :bucket
3336
3627
  # The name of the bucket for which to get the lifecycle information.
3337
3628
  #
3629
+ # @option params [String] :expected_bucket_owner
3630
+ # The account id of the expected bucket owner. If the bucket is owned by
3631
+ # a different account, the request will fail with an HTTP `403 (Access
3632
+ # Denied)` error.
3633
+ #
3338
3634
  # @return [Types::GetBucketLifecycleConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3339
3635
  #
3340
3636
  # * {Types::GetBucketLifecycleConfigurationOutput#rules #rules} => Array&lt;Types::LifecycleRule&gt;
@@ -3369,6 +3665,7 @@ module Aws::S3
3369
3665
  #
3370
3666
  # resp = client.get_bucket_lifecycle_configuration({
3371
3667
  # bucket: "BucketName", # required
3668
+ # expected_bucket_owner: "AccountId",
3372
3669
  # })
3373
3670
  #
3374
3671
  # @example Response structure
@@ -3408,20 +3705,30 @@ module Aws::S3
3408
3705
 
3409
3706
  # Returns the Region the bucket resides in. You set the bucket's Region
3410
3707
  # using the `LocationConstraint` request parameter in a `CreateBucket`
3411
- # request. For more information, see CreateBucket.
3708
+ # request. For more information, see [CreateBucket][1].
3412
3709
  #
3413
3710
  # To use this implementation of the operation, you must be the bucket
3414
3711
  # owner.
3415
3712
  #
3416
3713
  # The following operations are related to `GetBucketLocation`\:
3417
3714
  #
3418
- # * GetObject
3715
+ # * [GetObject][2]
3716
+ #
3717
+ # * [CreateBucket][1]
3718
+ #
3719
+ #
3419
3720
  #
3420
- # * CreateBucket
3721
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
3722
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
3421
3723
  #
3422
3724
  # @option params [required, String] :bucket
3423
3725
  # The name of the bucket for which to get the location.
3424
3726
  #
3727
+ # @option params [String] :expected_bucket_owner
3728
+ # The account id of the expected bucket owner. If the bucket is owned by
3729
+ # a different account, the request will fail with an HTTP `403 (Access
3730
+ # Denied)` error.
3731
+ #
3425
3732
  # @return [Types::GetBucketLocationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3426
3733
  #
3427
3734
  # * {Types::GetBucketLocationOutput#location_constraint #location_constraint} => String
@@ -3444,6 +3751,7 @@ module Aws::S3
3444
3751
  #
3445
3752
  # resp = client.get_bucket_location({
3446
3753
  # bucket: "BucketName", # required
3754
+ # expected_bucket_owner: "AccountId",
3447
3755
  # })
3448
3756
  #
3449
3757
  # @example Response structure
@@ -3465,13 +3773,23 @@ module Aws::S3
3465
3773
  #
3466
3774
  # The following operations are related to `GetBucketLogging`\:
3467
3775
  #
3468
- # * CreateBucket
3776
+ # * [CreateBucket][1]
3777
+ #
3778
+ # * [PutBucketLogging][2]
3779
+ #
3469
3780
  #
3470
- # * PutBucketLogging
3781
+ #
3782
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
3783
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLogging.html
3471
3784
  #
3472
3785
  # @option params [required, String] :bucket
3473
3786
  # The bucket name for which to get the logging information.
3474
3787
  #
3788
+ # @option params [String] :expected_bucket_owner
3789
+ # The account id of the expected bucket owner. If the bucket is owned by
3790
+ # a different account, the request will fail with an HTTP `403 (Access
3791
+ # Denied)` error.
3792
+ #
3475
3793
  # @return [Types::GetBucketLoggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3476
3794
  #
3477
3795
  # * {Types::GetBucketLoggingOutput#logging_enabled #logging_enabled} => Types::LoggingEnabled
@@ -3480,6 +3798,7 @@ module Aws::S3
3480
3798
  #
3481
3799
  # resp = client.get_bucket_logging({
3482
3800
  # bucket: "BucketName", # required
3801
+ # expected_bucket_owner: "AccountId",
3483
3802
  # })
3484
3803
  #
3485
3804
  # @example Response structure
@@ -3520,11 +3839,11 @@ module Aws::S3
3520
3839
  # The following operations are related to
3521
3840
  # `GetBucketMetricsConfiguration`\:
3522
3841
  #
3523
- # * PutBucketMetricsConfiguration
3842
+ # * [PutBucketMetricsConfiguration][4]
3524
3843
  #
3525
- # * DeleteBucketMetricsConfiguration
3844
+ # * [DeleteBucketMetricsConfiguration][5]
3526
3845
  #
3527
- # * ListBucketMetricsConfigurations
3846
+ # * [ListBucketMetricsConfigurations][6]
3528
3847
  #
3529
3848
  # * [Monitoring Metrics with Amazon CloudWatch][3]
3530
3849
  #
@@ -3533,6 +3852,9 @@ module Aws::S3
3533
3852
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
3534
3853
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
3535
3854
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html
3855
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html
3856
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html
3857
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html
3536
3858
  #
3537
3859
  # @option params [required, String] :bucket
3538
3860
  # The name of the bucket containing the metrics configuration to
@@ -3541,6 +3863,11 @@ module Aws::S3
3541
3863
  # @option params [required, String] :id
3542
3864
  # The ID used to identify the metrics configuration.
3543
3865
  #
3866
+ # @option params [String] :expected_bucket_owner
3867
+ # The account id of the expected bucket owner. If the bucket is owned by
3868
+ # a different account, the request will fail with an HTTP `403 (Access
3869
+ # Denied)` error.
3870
+ #
3544
3871
  # @return [Types::GetBucketMetricsConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3545
3872
  #
3546
3873
  # * {Types::GetBucketMetricsConfigurationOutput#metrics_configuration #metrics_configuration} => Types::MetricsConfiguration
@@ -3550,6 +3877,7 @@ module Aws::S3
3550
3877
  # resp = client.get_bucket_metrics_configuration({
3551
3878
  # bucket: "BucketName", # required
3552
3879
  # id: "MetricsId", # required
3880
+ # expected_bucket_owner: "AccountId",
3553
3881
  # })
3554
3882
  #
3555
3883
  # @example Response structure
@@ -3572,11 +3900,20 @@ module Aws::S3
3572
3900
  req.send_request(options)
3573
3901
  end
3574
3902
 
3575
- # No longer used, see GetBucketNotificationConfiguration.
3903
+ # No longer used, see [GetBucketNotificationConfiguration][1].
3904
+ #
3905
+ #
3906
+ #
3907
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html
3576
3908
  #
3577
3909
  # @option params [required, String] :bucket
3578
3910
  # Name of the bucket for which to get the notification configuration.
3579
3911
  #
3912
+ # @option params [String] :expected_bucket_owner
3913
+ # The account id of the expected bucket owner. If the bucket is owned by
3914
+ # a different account, the request will fail with an HTTP `403 (Access
3915
+ # Denied)` error.
3916
+ #
3580
3917
  # @return [Types::NotificationConfigurationDeprecated] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3581
3918
  #
3582
3919
  # * {Types::NotificationConfigurationDeprecated#topic_configuration #topic_configuration} => Types::TopicConfigurationDeprecated
@@ -3644,6 +3981,7 @@ module Aws::S3
3644
3981
  #
3645
3982
  # resp = client.get_bucket_notification({
3646
3983
  # bucket: "BucketName", # required
3984
+ # expected_bucket_owner: "AccountId",
3647
3985
  # })
3648
3986
  #
3649
3987
  # @example Response structure
@@ -3691,7 +4029,7 @@ module Aws::S3
3691
4029
  #
3692
4030
  # The following operation is related to `GetBucketNotification`\:
3693
4031
  #
3694
- # * PutBucketNotification
4032
+ # * [PutBucketNotification][3]
3695
4033
  #
3696
4034
  # ^
3697
4035
  #
@@ -3699,10 +4037,16 @@ module Aws::S3
3699
4037
  #
3700
4038
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
3701
4039
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
4040
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html
3702
4041
  #
3703
4042
  # @option params [required, String] :bucket
3704
4043
  # Name of the bucket for which to get the notification configuration.
3705
4044
  #
4045
+ # @option params [String] :expected_bucket_owner
4046
+ # The account id of the expected bucket owner. If the bucket is owned by
4047
+ # a different account, the request will fail with an HTTP `403 (Access
4048
+ # Denied)` error.
4049
+ #
3706
4050
  # @return [Types::NotificationConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3707
4051
  #
3708
4052
  # * {Types::NotificationConfiguration#topic_configurations #topic_configurations} => Array&lt;Types::TopicConfiguration&gt;
@@ -3713,6 +4057,7 @@ module Aws::S3
3713
4057
  #
3714
4058
  # resp = client.get_bucket_notification_configuration({
3715
4059
  # bucket: "BucketName", # required
4060
+ # expected_bucket_owner: "AccountId",
3716
4061
  # })
3717
4062
  #
3718
4063
  # @example Response structure
@@ -3771,17 +4116,23 @@ module Aws::S3
3771
4116
  #
3772
4117
  # The following operation is related to `GetBucketPolicy`\:
3773
4118
  #
3774
- # * GetObject
4119
+ # * [GetObject][2]
3775
4120
  #
3776
4121
  # ^
3777
4122
  #
3778
4123
  #
3779
4124
  #
3780
4125
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
4126
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
3781
4127
  #
3782
4128
  # @option params [required, String] :bucket
3783
4129
  # The bucket name for which to get the bucket policy.
3784
4130
  #
4131
+ # @option params [String] :expected_bucket_owner
4132
+ # The account id of the expected bucket owner. If the bucket is owned by
4133
+ # a different account, the request will fail with an HTTP `403 (Access
4134
+ # Denied)` error.
4135
+ #
3785
4136
  # @return [Types::GetBucketPolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3786
4137
  #
3787
4138
  # * {Types::GetBucketPolicyOutput#policy #policy} => IO
@@ -3804,6 +4155,7 @@ module Aws::S3
3804
4155
  #
3805
4156
  # resp = client.get_bucket_policy({
3806
4157
  # bucket: "BucketName", # required
4158
+ # expected_bucket_owner: "AccountId",
3807
4159
  # })
3808
4160
  #
3809
4161
  # @example Response structure
@@ -3832,22 +4184,30 @@ module Aws::S3
3832
4184
  #
3833
4185
  # * [Using Amazon S3 Block Public Access][3]
3834
4186
  #
3835
- # * GetPublicAccessBlock
4187
+ # * [GetPublicAccessBlock][4]
3836
4188
  #
3837
- # * PutPublicAccessBlock
4189
+ # * [PutPublicAccessBlock][5]
3838
4190
  #
3839
- # * DeletePublicAccessBlock
4191
+ # * [DeletePublicAccessBlock][6]
3840
4192
  #
3841
4193
  #
3842
4194
  #
3843
4195
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
3844
4196
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status
3845
4197
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html
4198
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html
4199
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html
4200
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html
3846
4201
  #
3847
4202
  # @option params [required, String] :bucket
3848
4203
  # The name of the Amazon S3 bucket whose policy status you want to
3849
4204
  # retrieve.
3850
4205
  #
4206
+ # @option params [String] :expected_bucket_owner
4207
+ # The account id of the expected bucket owner. If the bucket is owned by
4208
+ # a different account, the request will fail with an HTTP `403 (Access
4209
+ # Denied)` error.
4210
+ #
3851
4211
  # @return [Types::GetBucketPolicyStatusOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3852
4212
  #
3853
4213
  # * {Types::GetBucketPolicyStatusOutput#policy_status #policy_status} => Types::PolicyStatus
@@ -3856,6 +4216,7 @@ module Aws::S3
3856
4216
  #
3857
4217
  # resp = client.get_bucket_policy_status({
3858
4218
  # bucket: "BucketName", # required
4219
+ # expected_bucket_owner: "AccountId",
3859
4220
  # })
3860
4221
  #
3861
4222
  # @example Response structure
@@ -3890,23 +4251,31 @@ module Aws::S3
3890
4251
  # you must also include the `DeleteMarkerReplication` and `Priority`
3891
4252
  # elements. The response also returns those elements.
3892
4253
  #
3893
- # For information about `GetBucketReplication` errors, see
3894
- # ReplicationErrorCodeList
4254
+ # For information about `GetBucketReplication` errors, see [List of
4255
+ # replication-related error codes][3]
3895
4256
  #
3896
4257
  # The following operations are related to `GetBucketReplication`\:
3897
4258
  #
3898
- # * PutBucketReplication
4259
+ # * [PutBucketReplication][4]
3899
4260
  #
3900
- # * DeleteBucketReplication
4261
+ # * [DeleteBucketReplication][5]
3901
4262
  #
3902
4263
  #
3903
4264
  #
3904
4265
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html
3905
4266
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
4267
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList
4268
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html
4269
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html
3906
4270
  #
3907
4271
  # @option params [required, String] :bucket
3908
4272
  # The bucket name for which to get the replication information.
3909
4273
  #
4274
+ # @option params [String] :expected_bucket_owner
4275
+ # The account id of the expected bucket owner. If the bucket is owned by
4276
+ # a different account, the request will fail with an HTTP `403 (Access
4277
+ # Denied)` error.
4278
+ #
3910
4279
  # @return [Types::GetBucketReplicationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3911
4280
  #
3912
4281
  # * {Types::GetBucketReplicationOutput#replication_configuration #replication_configuration} => Types::ReplicationConfiguration
@@ -3941,6 +4310,7 @@ module Aws::S3
3941
4310
  #
3942
4311
  # resp = client.get_bucket_replication({
3943
4312
  # bucket: "BucketName", # required
4313
+ # expected_bucket_owner: "AccountId",
3944
4314
  # })
3945
4315
  #
3946
4316
  # @example Response structure
@@ -3986,18 +4356,24 @@ module Aws::S3
3986
4356
  #
3987
4357
  # The following operations are related to `GetBucketRequestPayment`\:
3988
4358
  #
3989
- # * ListObjects
4359
+ # * [ListObjects][2]
3990
4360
  #
3991
4361
  # ^
3992
4362
  #
3993
4363
  #
3994
4364
  #
3995
4365
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html
4366
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html
3996
4367
  #
3997
4368
  # @option params [required, String] :bucket
3998
4369
  # The name of the bucket for which to get the payment request
3999
4370
  # configuration
4000
4371
  #
4372
+ # @option params [String] :expected_bucket_owner
4373
+ # The account id of the expected bucket owner. If the bucket is owned by
4374
+ # a different account, the request will fail with an HTTP `403 (Access
4375
+ # Denied)` error.
4376
+ #
4001
4377
  # @return [Types::GetBucketRequestPaymentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4002
4378
  #
4003
4379
  # * {Types::GetBucketRequestPaymentOutput#payer #payer} => String
@@ -4020,6 +4396,7 @@ module Aws::S3
4020
4396
  #
4021
4397
  # resp = client.get_bucket_request_payment({
4022
4398
  # bucket: "BucketName", # required
4399
+ # expected_bucket_owner: "AccountId",
4023
4400
  # })
4024
4401
  #
4025
4402
  # @example Response structure
@@ -4051,13 +4428,23 @@ module Aws::S3
4051
4428
  #
4052
4429
  # The following operations are related to `GetBucketTagging`\:
4053
4430
  #
4054
- # * PutBucketTagging
4431
+ # * [PutBucketTagging][1]
4432
+ #
4433
+ # * [DeleteBucketTagging][2]
4055
4434
  #
4056
- # * DeleteBucketTagging
4435
+ #
4436
+ #
4437
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html
4438
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html
4057
4439
  #
4058
4440
  # @option params [required, String] :bucket
4059
4441
  # The name of the bucket for which to get the tagging information.
4060
4442
  #
4443
+ # @option params [String] :expected_bucket_owner
4444
+ # The account id of the expected bucket owner. If the bucket is owned by
4445
+ # a different account, the request will fail with an HTTP `403 (Access
4446
+ # Denied)` error.
4447
+ #
4061
4448
  # @return [Types::GetBucketTaggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4062
4449
  #
4063
4450
  # * {Types::GetBucketTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
@@ -4089,6 +4476,7 @@ module Aws::S3
4089
4476
  #
4090
4477
  # resp = client.get_bucket_tagging({
4091
4478
  # bucket: "BucketName", # required
4479
+ # expected_bucket_owner: "AccountId",
4092
4480
  # })
4093
4481
  #
4094
4482
  # @example Response structure
@@ -4118,15 +4506,26 @@ module Aws::S3
4118
4506
  #
4119
4507
  # The following operations are related to `GetBucketVersioning`\:
4120
4508
  #
4121
- # * GetObject
4509
+ # * [GetObject][1]
4122
4510
  #
4123
- # * PutObject
4511
+ # * [PutObject][2]
4124
4512
  #
4125
- # * DeleteObject
4513
+ # * [DeleteObject][3]
4514
+ #
4515
+ #
4516
+ #
4517
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
4518
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
4519
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
4126
4520
  #
4127
4521
  # @option params [required, String] :bucket
4128
4522
  # The name of the bucket for which to get the versioning information.
4129
4523
  #
4524
+ # @option params [String] :expected_bucket_owner
4525
+ # The account id of the expected bucket owner. If the bucket is owned by
4526
+ # a different account, the request will fail with an HTTP `403 (Access
4527
+ # Denied)` error.
4528
+ #
4130
4529
  # @return [Types::GetBucketVersioningOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4131
4530
  #
4132
4531
  # * {Types::GetBucketVersioningOutput#status #status} => String
@@ -4151,6 +4550,7 @@ module Aws::S3
4151
4550
  #
4152
4551
  # resp = client.get_bucket_versioning({
4153
4552
  # bucket: "BucketName", # required
4553
+ # expected_bucket_owner: "AccountId",
4154
4554
  # })
4155
4555
  #
4156
4556
  # @example Response structure
@@ -4180,17 +4580,24 @@ module Aws::S3
4180
4580
  #
4181
4581
  # The following operations are related to `DeleteBucketWebsite`\:
4182
4582
  #
4183
- # * DeleteBucketWebsite
4583
+ # * [DeleteBucketWebsite][2]
4184
4584
  #
4185
- # * PutBucketWebsite
4585
+ # * [PutBucketWebsite][3]
4186
4586
  #
4187
4587
  #
4188
4588
  #
4189
4589
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html
4590
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketWebsite.html
4591
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html
4190
4592
  #
4191
4593
  # @option params [required, String] :bucket
4192
4594
  # The bucket name for which to get the website configuration.
4193
4595
  #
4596
+ # @option params [String] :expected_bucket_owner
4597
+ # The account id of the expected bucket owner. If the bucket is owned by
4598
+ # a different account, the request will fail with an HTTP `403 (Access
4599
+ # Denied)` error.
4600
+ #
4194
4601
  # @return [Types::GetBucketWebsiteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4195
4602
  #
4196
4603
  # * {Types::GetBucketWebsiteOutput#redirect_all_requests_to #redirect_all_requests_to} => Types::RedirectAllRequestsTo
@@ -4221,6 +4628,7 @@ module Aws::S3
4221
4628
  #
4222
4629
  # resp = client.get_bucket_website({
4223
4630
  # bucket: "BucketName", # required
4631
+ # expected_bucket_owner: "AccountId",
4224
4632
  # })
4225
4633
  #
4226
4634
  # @example Response structure
@@ -4270,13 +4678,13 @@ module Aws::S3
4270
4678
  # To distribute large files to many people, you can save bandwidth costs
4271
4679
  # by using BitTorrent. For more information, see [Amazon S3 Torrent][2].
4272
4680
  # For more information about returning the ACL of an object, see
4273
- # GetObjectAcl.
4681
+ # [GetObjectAcl][3].
4274
4682
  #
4275
4683
  # If the object you are retrieving is stored in the GLACIER or
4276
4684
  # DEEP\_ARCHIVE storage classes, before you can retrieve the object you
4277
- # must first restore a copy using . Otherwise, this operation returns an
4278
- # `InvalidObjectStateError` error. For information about restoring
4279
- # archived objects, see [Restoring Archived Objects][3].
4685
+ # must first restore a copy using [RestoreObject][4]. Otherwise, this
4686
+ # operation returns an `InvalidObjectStateError` error. For information
4687
+ # about restoring archived objects, see [Restoring Archived Objects][5].
4280
4688
  #
4281
4689
  # Encryption request headers, like `x-amz-server-side-encryption`,
4282
4690
  # should not be sent for GET requests if your object uses server-side
@@ -4290,25 +4698,25 @@ module Aws::S3
4290
4698
  # Amazon S3, then when you GET the object, you must use the following
4291
4699
  # headers:
4292
4700
  #
4293
- # * x-amz-server-side​-encryption​-customer-algorithm
4701
+ # * x-amz-server-side-encryption-customer-algorithm
4294
4702
  #
4295
- # * x-amz-server-side​-encryption​-customer-key
4703
+ # * x-amz-server-side-encryption-customer-key
4296
4704
  #
4297
- # * x-amz-server-side​-encryption​-customer-key-MD5
4705
+ # * x-amz-server-side-encryption-customer-key-MD5
4298
4706
  #
4299
4707
  # For more information about SSE-C, see [Server-Side Encryption (Using
4300
- # Customer-Provided Encryption Keys)][4].
4708
+ # Customer-Provided Encryption Keys)][6].
4301
4709
  #
4302
4710
  # Assuming you have permission to read object tags (permission for the
4303
4711
  # `s3:GetObjectVersionTagging` action), the response also returns the
4304
4712
  # `x-amz-tagging-count` header that provides the count of number of tags
4305
- # associated with the object. You can use GetObjectTagging to retrieve
4306
- # the tag set associated with an object.
4713
+ # associated with the object. You can use [GetObjectTagging][7] to
4714
+ # retrieve the tag set associated with an object.
4307
4715
  #
4308
4716
  # **Permissions**
4309
4717
  #
4310
4718
  # You need the `s3:GetObject` permission for this operation. For more
4311
- # information, see [Specifying Permissions in a Policy][5]. If the
4719
+ # information, see [Specifying Permissions in a Policy][8]. If the
4312
4720
  # object you request does not exist, the error Amazon S3 returns depends
4313
4721
  # on whether you also have the `s3:ListBucket` permission.
4314
4722
  #
@@ -4330,7 +4738,7 @@ module Aws::S3
4330
4738
  #
4331
4739
  # </note>
4332
4740
  #
4333
- # For more information about versioning, see PutBucketVersioning.
4741
+ # For more information about versioning, see [PutBucketVersioning][9].
4334
4742
  #
4335
4743
  # **Overriding Response Header Values**
4336
4744
  #
@@ -4379,22 +4787,27 @@ module Aws::S3
4379
4787
  # to `false`, and; `If-Modified-Since` condition evaluates to `true`;
4380
4788
  # then, S3 returns 304 Not Modified response code.
4381
4789
  #
4382
- # For more information about conditional requests, see [RFC 7232][6].
4790
+ # For more information about conditional requests, see [RFC 7232][10].
4383
4791
  #
4384
4792
  # The following operations are related to `GetObject`\:
4385
4793
  #
4386
- # * ListBuckets
4794
+ # * [ListBuckets][11]
4387
4795
  #
4388
- # * GetObjectAcl
4796
+ # * [GetObjectAcl][3]
4389
4797
  #
4390
4798
  #
4391
4799
  #
4392
4800
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket
4393
4801
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html
4394
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
4395
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
4396
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
4397
- # [6]: https://tools.ietf.org/html/rfc7232
4802
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html
4803
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
4804
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
4805
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
4806
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html
4807
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
4808
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html
4809
+ # [10]: https://tools.ietf.org/html/rfc7232
4810
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html
4398
4811
  #
4399
4812
  # @option params [String, IO] :response_target
4400
4813
  # Where to write response data, file path, or IO object.
@@ -4477,7 +4890,7 @@ module Aws::S3
4477
4890
  # encrypting data. This value is used to store the object and then it is
4478
4891
  # discarded; Amazon S3 does not store the encryption key. The key must
4479
4892
  # be appropriate for use with the algorithm specified in the
4480
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
4893
+ # `x-amz-server-side-encryption-customer-algorithm` header.
4481
4894
  #
4482
4895
  # @option params [String] :sse_customer_key_md5
4483
4896
  # Specifies the 128-bit MD5 digest of the encryption key according to
@@ -4501,6 +4914,11 @@ module Aws::S3
4501
4914
  # for the part specified. Useful for downloading just a part of an
4502
4915
  # object.
4503
4916
  #
4917
+ # @option params [String] :expected_bucket_owner
4918
+ # The account id of the expected bucket owner. If the bucket is owned by
4919
+ # a different account, the request will fail with an HTTP `403 (Access
4920
+ # Denied)` error.
4921
+ #
4504
4922
  # @return [Types::GetObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4505
4923
  #
4506
4924
  # * {Types::GetObjectOutput#body #body} => IO
@@ -4537,49 +4955,49 @@ module Aws::S3
4537
4955
  # * {Types::GetObjectOutput#object_lock_legal_hold_status #object_lock_legal_hold_status} => String
4538
4956
  #
4539
4957
  #
4540
- # @example Example: To retrieve an object
4958
+ # @example Example: To retrieve a byte range of an object
4541
4959
  #
4542
- # # The following example retrieves an object for an S3 bucket.
4960
+ # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
4961
+ # # specific byte range.
4543
4962
  #
4544
4963
  # resp = client.get_object({
4545
4964
  # bucket: "examplebucket",
4546
- # key: "HappyFace.jpg",
4965
+ # key: "SampleFile.txt",
4966
+ # range: "bytes=0-9",
4547
4967
  # })
4548
4968
  #
4549
4969
  # resp.to_h outputs the following:
4550
4970
  # {
4551
4971
  # accept_ranges: "bytes",
4552
- # content_length: 3191,
4553
- # content_type: "image/jpeg",
4554
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
4555
- # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
4972
+ # content_length: 10,
4973
+ # content_range: "bytes 0-9/43",
4974
+ # content_type: "text/plain",
4975
+ # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
4976
+ # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
4556
4977
  # metadata: {
4557
4978
  # },
4558
- # tag_count: 2,
4559
4979
  # version_id: "null",
4560
4980
  # }
4561
4981
  #
4562
- # @example Example: To retrieve a byte range of an object
4982
+ # @example Example: To retrieve an object
4563
4983
  #
4564
- # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
4565
- # # specific byte range.
4984
+ # # The following example retrieves an object for an S3 bucket.
4566
4985
  #
4567
4986
  # resp = client.get_object({
4568
4987
  # bucket: "examplebucket",
4569
- # key: "SampleFile.txt",
4570
- # range: "bytes=0-9",
4988
+ # key: "HappyFace.jpg",
4571
4989
  # })
4572
4990
  #
4573
4991
  # resp.to_h outputs the following:
4574
4992
  # {
4575
4993
  # accept_ranges: "bytes",
4576
- # content_length: 10,
4577
- # content_range: "bytes 0-9/43",
4578
- # content_type: "text/plain",
4579
- # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
4580
- # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
4994
+ # content_length: 3191,
4995
+ # content_type: "image/jpeg",
4996
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
4997
+ # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
4581
4998
  # metadata: {
4582
4999
  # },
5000
+ # tag_count: 2,
4583
5001
  # version_id: "null",
4584
5002
  # }
4585
5003
  #
@@ -4634,6 +5052,7 @@ module Aws::S3
4634
5052
  # sse_customer_key_md5: "SSECustomerKeyMD5",
4635
5053
  # request_payer: "requester", # accepts requester
4636
5054
  # part_number: 1,
5055
+ # expected_bucket_owner: "AccountId",
4637
5056
  # })
4638
5057
  #
4639
5058
  # @example Response structure
@@ -4692,11 +5111,17 @@ module Aws::S3
4692
5111
  #
4693
5112
  # The following operations are related to `GetObjectAcl`\:
4694
5113
  #
4695
- # * GetObject
5114
+ # * [GetObject][1]
5115
+ #
5116
+ # * [DeleteObject][2]
5117
+ #
5118
+ # * [PutObject][3]
4696
5119
  #
4697
- # * DeleteObject
4698
5120
  #
4699
- # * PutObject
5121
+ #
5122
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
5123
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
5124
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
4700
5125
  #
4701
5126
  # @option params [required, String] :bucket
4702
5127
  # The bucket name that contains the object for which to get the ACL
@@ -4731,6 +5156,11 @@ module Aws::S3
4731
5156
  #
4732
5157
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
4733
5158
  #
5159
+ # @option params [String] :expected_bucket_owner
5160
+ # The account id of the expected bucket owner. If the bucket is owned by
5161
+ # a different account, the request will fail with an HTTP `403 (Access
5162
+ # Denied)` error.
5163
+ #
4734
5164
  # @return [Types::GetObjectAclOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4735
5165
  #
4736
5166
  # * {Types::GetObjectAclOutput#owner #owner} => Types::Owner
@@ -4796,6 +5226,7 @@ module Aws::S3
4796
5226
  # key: "ObjectKey", # required
4797
5227
  # version_id: "ObjectVersionId",
4798
5228
  # request_payer: "requester", # accepts requester
5229
+ # expected_bucket_owner: "AccountId",
4799
5230
  # })
4800
5231
  #
4801
5232
  # @example Response structure
@@ -4862,6 +5293,11 @@ module Aws::S3
4862
5293
  #
4863
5294
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
4864
5295
  #
5296
+ # @option params [String] :expected_bucket_owner
5297
+ # The account id of the expected bucket owner. If the bucket is owned by
5298
+ # a different account, the request will fail with an HTTP `403 (Access
5299
+ # Denied)` error.
5300
+ #
4865
5301
  # @return [Types::GetObjectLegalHoldOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4866
5302
  #
4867
5303
  # * {Types::GetObjectLegalHoldOutput#legal_hold #legal_hold} => Types::ObjectLockLegalHold
@@ -4873,6 +5309,7 @@ module Aws::S3
4873
5309
  # key: "ObjectKey", # required
4874
5310
  # version_id: "ObjectVersionId",
4875
5311
  # request_payer: "requester", # accepts requester
5312
+ # expected_bucket_owner: "AccountId",
4876
5313
  # })
4877
5314
  #
4878
5315
  # @example Response structure
@@ -4900,6 +5337,11 @@ module Aws::S3
4900
5337
  # @option params [required, String] :bucket
4901
5338
  # The bucket whose Object Lock configuration you want to retrieve.
4902
5339
  #
5340
+ # @option params [String] :expected_bucket_owner
5341
+ # The account id of the expected bucket owner. If the bucket is owned by
5342
+ # a different account, the request will fail with an HTTP `403 (Access
5343
+ # Denied)` error.
5344
+ #
4903
5345
  # @return [Types::GetObjectLockConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4904
5346
  #
4905
5347
  # * {Types::GetObjectLockConfigurationOutput#object_lock_configuration #object_lock_configuration} => Types::ObjectLockConfiguration
@@ -4908,6 +5350,7 @@ module Aws::S3
4908
5350
  #
4909
5351
  # resp = client.get_object_lock_configuration({
4910
5352
  # bucket: "BucketName", # required
5353
+ # expected_bucket_owner: "AccountId",
4911
5354
  # })
4912
5355
  #
4913
5356
  # @example Response structure
@@ -4968,6 +5411,11 @@ module Aws::S3
4968
5411
  #
4969
5412
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
4970
5413
  #
5414
+ # @option params [String] :expected_bucket_owner
5415
+ # The account id of the expected bucket owner. If the bucket is owned by
5416
+ # a different account, the request will fail with an HTTP `403 (Access
5417
+ # Denied)` error.
5418
+ #
4971
5419
  # @return [Types::GetObjectRetentionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4972
5420
  #
4973
5421
  # * {Types::GetObjectRetentionOutput#retention #retention} => Types::ObjectLockRetention
@@ -4979,6 +5427,7 @@ module Aws::S3
4979
5427
  # key: "ObjectKey", # required
4980
5428
  # version_id: "ObjectVersionId",
4981
5429
  # request_payer: "requester", # accepts requester
5430
+ # expected_bucket_owner: "AccountId",
4982
5431
  # })
4983
5432
  #
4984
5433
  # @example Response structure
@@ -5013,13 +5462,14 @@ module Aws::S3
5013
5462
  #
5014
5463
  # The following operation is related to `GetObjectTagging`\:
5015
5464
  #
5016
- # * PutObjectTagging
5465
+ # * [PutObjectTagging][2]
5017
5466
  #
5018
5467
  # ^
5019
5468
  #
5020
5469
  #
5021
5470
  #
5022
5471
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html
5472
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html
5023
5473
  #
5024
5474
  # @option params [required, String] :bucket
5025
5475
  # The bucket name containing the object for which to get the tagging
@@ -5043,55 +5493,60 @@ module Aws::S3
5043
5493
  # @option params [String] :version_id
5044
5494
  # The versionId of the object for which to get the tagging information.
5045
5495
  #
5496
+ # @option params [String] :expected_bucket_owner
5497
+ # The account id of the expected bucket owner. If the bucket is owned by
5498
+ # a different account, the request will fail with an HTTP `403 (Access
5499
+ # Denied)` error.
5500
+ #
5046
5501
  # @return [Types::GetObjectTaggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5047
5502
  #
5048
5503
  # * {Types::GetObjectTaggingOutput#version_id #version_id} => String
5049
5504
  # * {Types::GetObjectTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
5050
5505
  #
5051
5506
  #
5052
- # @example Example: To retrieve tag set of a specific object version
5507
+ # @example Example: To retrieve tag set of an object
5053
5508
  #
5054
- # # The following example retrieves tag set of an object. The request specifies object version.
5509
+ # # The following example retrieves tag set of an object.
5055
5510
  #
5056
5511
  # resp = client.get_object_tagging({
5057
5512
  # bucket: "examplebucket",
5058
- # key: "exampleobject",
5059
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
5513
+ # key: "HappyFace.jpg",
5060
5514
  # })
5061
5515
  #
5062
5516
  # resp.to_h outputs the following:
5063
5517
  # {
5064
5518
  # tag_set: [
5065
5519
  # {
5066
- # key: "Key1",
5067
- # value: "Value1",
5520
+ # key: "Key4",
5521
+ # value: "Value4",
5522
+ # },
5523
+ # {
5524
+ # key: "Key3",
5525
+ # value: "Value3",
5068
5526
  # },
5069
5527
  # ],
5070
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
5528
+ # version_id: "null",
5071
5529
  # }
5072
5530
  #
5073
- # @example Example: To retrieve tag set of an object
5531
+ # @example Example: To retrieve tag set of a specific object version
5074
5532
  #
5075
- # # The following example retrieves tag set of an object.
5533
+ # # The following example retrieves tag set of an object. The request specifies object version.
5076
5534
  #
5077
5535
  # resp = client.get_object_tagging({
5078
5536
  # bucket: "examplebucket",
5079
- # key: "HappyFace.jpg",
5537
+ # key: "exampleobject",
5538
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
5080
5539
  # })
5081
5540
  #
5082
5541
  # resp.to_h outputs the following:
5083
5542
  # {
5084
5543
  # tag_set: [
5085
5544
  # {
5086
- # key: "Key4",
5087
- # value: "Value4",
5088
- # },
5089
- # {
5090
- # key: "Key3",
5091
- # value: "Value3",
5545
+ # key: "Key1",
5546
+ # value: "Value1",
5092
5547
  # },
5093
5548
  # ],
5094
- # version_id: "null",
5549
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
5095
5550
  # }
5096
5551
  #
5097
5552
  # @example Request syntax with placeholder values
@@ -5100,6 +5555,7 @@ module Aws::S3
5100
5555
  # bucket: "BucketName", # required
5101
5556
  # key: "ObjectKey", # required
5102
5557
  # version_id: "ObjectVersionId",
5558
+ # expected_bucket_owner: "AccountId",
5103
5559
  # })
5104
5560
  #
5105
5561
  # @example Response structure
@@ -5132,13 +5588,14 @@ module Aws::S3
5132
5588
  #
5133
5589
  # The following operation is related to `GetObjectTorrent`\:
5134
5590
  #
5135
- # * GetObject
5591
+ # * [GetObject][2]
5136
5592
  #
5137
5593
  # ^
5138
5594
  #
5139
5595
  #
5140
5596
  #
5141
5597
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html
5598
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
5142
5599
  #
5143
5600
  # @option params [String, IO] :response_target
5144
5601
  # Where to write response data, file path, or IO object.
@@ -5161,6 +5618,11 @@ module Aws::S3
5161
5618
  #
5162
5619
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
5163
5620
  #
5621
+ # @option params [String] :expected_bucket_owner
5622
+ # The account id of the expected bucket owner. If the bucket is owned by
5623
+ # a different account, the request will fail with an HTTP `403 (Access
5624
+ # Denied)` error.
5625
+ #
5164
5626
  # @return [Types::GetObjectTorrentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5165
5627
  #
5166
5628
  # * {Types::GetObjectTorrentOutput#body #body} => IO
@@ -5186,6 +5648,7 @@ module Aws::S3
5186
5648
  # bucket: "BucketName", # required
5187
5649
  # key: "ObjectKey", # required
5188
5650
  # request_payer: "requester", # accepts requester
5651
+ # expected_bucket_owner: "AccountId",
5189
5652
  # })
5190
5653
  #
5191
5654
  # @example Response structure
@@ -5222,22 +5685,30 @@ module Aws::S3
5222
5685
  #
5223
5686
  # * [Using Amazon S3 Block Public Access][3]
5224
5687
  #
5225
- # * PutPublicAccessBlock
5688
+ # * [PutPublicAccessBlock][4]
5226
5689
  #
5227
- # * GetPublicAccessBlock
5690
+ # * [GetPublicAccessBlock][5]
5228
5691
  #
5229
- # * DeletePublicAccessBlock
5692
+ # * [DeletePublicAccessBlock][6]
5230
5693
  #
5231
5694
  #
5232
5695
  #
5233
5696
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
5234
5697
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status
5235
5698
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html
5699
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html
5700
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html
5701
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html
5236
5702
  #
5237
5703
  # @option params [required, String] :bucket
5238
5704
  # The name of the Amazon S3 bucket whose `PublicAccessBlock`
5239
5705
  # configuration you want to retrieve.
5240
5706
  #
5707
+ # @option params [String] :expected_bucket_owner
5708
+ # The account id of the expected bucket owner. If the bucket is owned by
5709
+ # a different account, the request will fail with an HTTP `403 (Access
5710
+ # Denied)` error.
5711
+ #
5241
5712
  # @return [Types::GetPublicAccessBlockOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5242
5713
  #
5243
5714
  # * {Types::GetPublicAccessBlockOutput#public_access_block_configuration #public_access_block_configuration} => Types::PublicAccessBlockConfiguration
@@ -5246,6 +5717,7 @@ module Aws::S3
5246
5717
  #
5247
5718
  # resp = client.get_public_access_block({
5248
5719
  # bucket: "BucketName", # required
5720
+ # expected_bucket_owner: "AccountId",
5249
5721
  # })
5250
5722
  #
5251
5723
  # @example Response structure
@@ -5285,6 +5757,11 @@ module Aws::S3
5285
5757
  # @option params [required, String] :bucket
5286
5758
  # The bucket name.
5287
5759
  #
5760
+ # @option params [String] :expected_bucket_owner
5761
+ # The account id of the expected bucket owner. If the bucket is owned by
5762
+ # a different account, the request will fail with an HTTP `403 (Access
5763
+ # Denied)` error.
5764
+ #
5288
5765
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5289
5766
  #
5290
5767
  #
@@ -5300,6 +5777,7 @@ module Aws::S3
5300
5777
  #
5301
5778
  # resp = client.head_bucket({
5302
5779
  # bucket: "BucketName", # required
5780
+ # expected_bucket_owner: "AccountId",
5303
5781
  # })
5304
5782
  #
5305
5783
  #
@@ -5331,11 +5809,11 @@ module Aws::S3
5331
5809
  # Amazon S3, then when you retrieve the metadata from the object, you
5332
5810
  # must use the following headers:
5333
5811
  #
5334
- # * x-amz-server-side​-encryption​-customer-algorithm
5812
+ # * x-amz-server-side-encryption-customer-algorithm
5335
5813
  #
5336
- # * x-amz-server-side​-encryption​-customer-key
5814
+ # * x-amz-server-side-encryption-customer-key
5337
5815
  #
5338
- # * x-amz-server-side​-encryption​-customer-key-MD5
5816
+ # * x-amz-server-side-encryption-customer-key-MD5
5339
5817
  #
5340
5818
  # For more information about SSE-C, see [Server-Side Encryption (Using
5341
5819
  # Customer-Provided Encryption Keys)][1].
@@ -5389,7 +5867,7 @@ module Aws::S3
5389
5867
  #
5390
5868
  # The following operation is related to `HeadObject`\:
5391
5869
  #
5392
- # * GetObject
5870
+ # * [GetObject][5]
5393
5871
  #
5394
5872
  # ^
5395
5873
  #
@@ -5399,6 +5877,7 @@ module Aws::S3
5399
5877
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html
5400
5878
  # [3]: https://tools.ietf.org/html/rfc7232
5401
5879
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
5880
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
5402
5881
  #
5403
5882
  # @option params [required, String] :bucket
5404
5883
  # The name of the bucket containing the object.
@@ -5444,7 +5923,7 @@ module Aws::S3
5444
5923
  # encrypting data. This value is used to store the object and then it is
5445
5924
  # discarded; Amazon S3 does not store the encryption key. The key must
5446
5925
  # be appropriate for use with the algorithm specified in the
5447
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
5926
+ # `x-amz-server-side-encryption-customer-algorithm` header.
5448
5927
  #
5449
5928
  # @option params [String] :sse_customer_key_md5
5450
5929
  # Specifies the 128-bit MD5 digest of the encryption key according to
@@ -5468,6 +5947,11 @@ module Aws::S3
5468
5947
  # for the part specified. Useful querying about the size of the part and
5469
5948
  # the number of parts in this object.
5470
5949
  #
5950
+ # @option params [String] :expected_bucket_owner
5951
+ # The account id of the expected bucket owner. If the bucket is owned by
5952
+ # a different account, the request will fail with an HTTP `403 (Access
5953
+ # Denied)` error.
5954
+ #
5471
5955
  # @return [Types::HeadObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5472
5956
  #
5473
5957
  # * {Types::HeadObjectOutput#delete_marker #delete_marker} => Boolean
@@ -5538,6 +6022,7 @@ module Aws::S3
5538
6022
  # sse_customer_key_md5: "SSECustomerKeyMD5",
5539
6023
  # request_payer: "requester", # accepts requester
5540
6024
  # part_number: 1,
6025
+ # expected_bucket_owner: "AccountId",
5541
6026
  # })
5542
6027
  #
5543
6028
  # @example Response structure
@@ -5614,17 +6099,20 @@ module Aws::S3
5614
6099
  # The following operations are related to
5615
6100
  # `ListBucketAnalyticsConfigurations`\:
5616
6101
  #
5617
- # * GetBucketAnalyticsConfiguration
6102
+ # * [GetBucketAnalyticsConfiguration][4]
5618
6103
  #
5619
- # * DeleteBucketAnalyticsConfiguration
6104
+ # * [DeleteBucketAnalyticsConfiguration][5]
5620
6105
  #
5621
- # * PutBucketAnalyticsConfiguration
6106
+ # * [PutBucketAnalyticsConfiguration][6]
5622
6107
  #
5623
6108
  #
5624
6109
  #
5625
6110
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
5626
6111
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
5627
6112
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html
6113
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html
6114
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html
6115
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html
5628
6116
  #
5629
6117
  # @option params [required, String] :bucket
5630
6118
  # The name of the bucket from which analytics configurations are
@@ -5634,6 +6122,11 @@ module Aws::S3
5634
6122
  # The ContinuationToken that represents a placeholder from where this
5635
6123
  # request should begin.
5636
6124
  #
6125
+ # @option params [String] :expected_bucket_owner
6126
+ # The account id of the expected bucket owner. If the bucket is owned by
6127
+ # a different account, the request will fail with an HTTP `403 (Access
6128
+ # Denied)` error.
6129
+ #
5637
6130
  # @return [Types::ListBucketAnalyticsConfigurationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5638
6131
  #
5639
6132
  # * {Types::ListBucketAnalyticsConfigurationsOutput#is_truncated #is_truncated} => Boolean
@@ -5646,6 +6139,7 @@ module Aws::S3
5646
6139
  # resp = client.list_bucket_analytics_configurations({
5647
6140
  # bucket: "BucketName", # required
5648
6141
  # continuation_token: "Token",
6142
+ # expected_bucket_owner: "AccountId",
5649
6143
  # })
5650
6144
  #
5651
6145
  # @example Response structure
@@ -5702,17 +6196,20 @@ module Aws::S3
5702
6196
  # The following operations are related to
5703
6197
  # `ListBucketInventoryConfigurations`\:
5704
6198
  #
5705
- # * GetBucketInventoryConfiguration
6199
+ # * [GetBucketInventoryConfiguration][4]
5706
6200
  #
5707
- # * DeleteBucketInventoryConfiguration
6201
+ # * [DeleteBucketInventoryConfiguration][5]
5708
6202
  #
5709
- # * PutBucketInventoryConfiguration
6203
+ # * [PutBucketInventoryConfiguration][6]
5710
6204
  #
5711
6205
  #
5712
6206
  #
5713
6207
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
5714
6208
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
5715
6209
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html
6210
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html
6211
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html
6212
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html
5716
6213
  #
5717
6214
  # @option params [required, String] :bucket
5718
6215
  # The name of the bucket containing the inventory configurations to
@@ -5724,6 +6221,11 @@ module Aws::S3
5724
6221
  # truncated list response to continue the listing. The continuation
5725
6222
  # token is an opaque value that Amazon S3 understands.
5726
6223
  #
6224
+ # @option params [String] :expected_bucket_owner
6225
+ # The account id of the expected bucket owner. If the bucket is owned by
6226
+ # a different account, the request will fail with an HTTP `403 (Access
6227
+ # Denied)` error.
6228
+ #
5727
6229
  # @return [Types::ListBucketInventoryConfigurationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5728
6230
  #
5729
6231
  # * {Types::ListBucketInventoryConfigurationsOutput#continuation_token #continuation_token} => String
@@ -5736,6 +6238,7 @@ module Aws::S3
5736
6238
  # resp = client.list_bucket_inventory_configurations({
5737
6239
  # bucket: "BucketName", # required
5738
6240
  # continuation_token: "Token",
6241
+ # expected_bucket_owner: "AccountId",
5739
6242
  # })
5740
6243
  #
5741
6244
  # @example Response structure
@@ -5793,17 +6296,20 @@ module Aws::S3
5793
6296
  # The following operations are related to
5794
6297
  # `ListBucketMetricsConfigurations`\:
5795
6298
  #
5796
- # * PutBucketMetricsConfiguration
6299
+ # * [PutBucketMetricsConfiguration][4]
5797
6300
  #
5798
- # * GetBucketMetricsConfiguration
6301
+ # * [GetBucketMetricsConfiguration][5]
5799
6302
  #
5800
- # * DeleteBucketMetricsConfiguration
6303
+ # * [DeleteBucketMetricsConfiguration][6]
5801
6304
  #
5802
6305
  #
5803
6306
  #
5804
6307
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
5805
6308
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
5806
6309
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html
6310
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html
6311
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html
6312
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html
5807
6313
  #
5808
6314
  # @option params [required, String] :bucket
5809
6315
  # The name of the bucket containing the metrics configurations to
@@ -5815,6 +6321,11 @@ module Aws::S3
5815
6321
  # previously truncated list response to continue the listing. The
5816
6322
  # continuation token is an opaque value that Amazon S3 understands.
5817
6323
  #
6324
+ # @option params [String] :expected_bucket_owner
6325
+ # The account id of the expected bucket owner. If the bucket is owned by
6326
+ # a different account, the request will fail with an HTTP `403 (Access
6327
+ # Denied)` error.
6328
+ #
5818
6329
  # @return [Types::ListBucketMetricsConfigurationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5819
6330
  #
5820
6331
  # * {Types::ListBucketMetricsConfigurationsOutput#is_truncated #is_truncated} => Boolean
@@ -5827,6 +6338,7 @@ module Aws::S3
5827
6338
  # resp = client.list_bucket_metrics_configurations({
5828
6339
  # bucket: "BucketName", # required
5829
6340
  # continuation_token: "Token",
6341
+ # expected_bucket_owner: "AccountId",
5830
6342
  # })
5831
6343
  #
5832
6344
  # @example Response structure
@@ -5939,20 +6451,25 @@ module Aws::S3
5939
6451
  #
5940
6452
  # The following operations are related to `ListMultipartUploads`\:
5941
6453
  #
5942
- # * CreateMultipartUpload
6454
+ # * [CreateMultipartUpload][3]
5943
6455
  #
5944
- # * UploadPart
6456
+ # * [UploadPart][4]
5945
6457
  #
5946
- # * CompleteMultipartUpload
6458
+ # * [CompleteMultipartUpload][5]
5947
6459
  #
5948
- # * ListParts
6460
+ # * [ListParts][6]
5949
6461
  #
5950
- # * AbortMultipartUpload
6462
+ # * [AbortMultipartUpload][7]
5951
6463
  #
5952
6464
  #
5953
6465
  #
5954
6466
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
5955
6467
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
6468
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
6469
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
6470
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
6471
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
6472
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
5956
6473
  #
5957
6474
  # @option params [required, String] :bucket
5958
6475
  # Name of the bucket to which the multipart upload was initiated.
@@ -6019,6 +6536,11 @@ module Aws::S3
6019
6536
  # list only if they have an upload ID lexicographically greater than the
6020
6537
  # specified `upload-id-marker`.
6021
6538
  #
6539
+ # @option params [String] :expected_bucket_owner
6540
+ # The account id of the expected bucket owner. If the bucket is owned by
6541
+ # a different account, the request will fail with an HTTP `403 (Access
6542
+ # Denied)` error.
6543
+ #
6022
6544
  # @return [Types::ListMultipartUploadsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6023
6545
  #
6024
6546
  # * {Types::ListMultipartUploadsOutput#bucket #bucket} => String
@@ -6142,6 +6664,7 @@ module Aws::S3
6142
6664
  # max_uploads: 1,
6143
6665
  # prefix: "Prefix",
6144
6666
  # upload_id_marker: "UploadIdMarker",
6667
+ # expected_bucket_owner: "AccountId",
6145
6668
  # })
6146
6669
  #
6147
6670
  # @example Response structure
@@ -6191,13 +6714,20 @@ module Aws::S3
6191
6714
  #
6192
6715
  # The following operations are related to `ListObjectVersions`\:
6193
6716
  #
6194
- # * ListObjectsV2
6717
+ # * [ListObjectsV2][1]
6195
6718
  #
6196
- # * GetObject
6719
+ # * [GetObject][2]
6197
6720
  #
6198
- # * PutObject
6721
+ # * [PutObject][3]
6199
6722
  #
6200
- # * DeleteObject
6723
+ # * [DeleteObject][4]
6724
+ #
6725
+ #
6726
+ #
6727
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html
6728
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
6729
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
6730
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
6201
6731
  #
6202
6732
  # @option params [required, String] :bucket
6203
6733
  # The bucket name that contains the objects.
@@ -6252,6 +6782,11 @@ module Aws::S3
6252
6782
  # @option params [String] :version_id_marker
6253
6783
  # Specifies the object version you want to start listing from.
6254
6784
  #
6785
+ # @option params [String] :expected_bucket_owner
6786
+ # The account id of the expected bucket owner. If the bucket is owned by
6787
+ # a different account, the request will fail with an HTTP `403 (Access
6788
+ # Denied)` error.
6789
+ #
6255
6790
  # @return [Types::ListObjectVersionsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6256
6791
  #
6257
6792
  # * {Types::ListObjectVersionsOutput#is_truncated #is_truncated} => Boolean
@@ -6324,6 +6859,7 @@ module Aws::S3
6324
6859
  # max_keys: 1,
6325
6860
  # prefix: "Prefix",
6326
6861
  # version_id_marker: "VersionIdMarker",
6862
+ # expected_bucket_owner: "AccountId",
6327
6863
  # })
6328
6864
  #
6329
6865
  # @example Response structure
@@ -6374,20 +6910,28 @@ module Aws::S3
6374
6910
  # of the response and handle it appropriately.
6375
6911
  #
6376
6912
  # This API has been revised. We recommend that you use the newer
6377
- # version, ListObjectsV2, when developing applications. For backward
6378
- # compatibility, Amazon S3 continues to support `ListObjects`.
6913
+ # version, [ListObjectsV2][1], when developing applications. For
6914
+ # backward compatibility, Amazon S3 continues to support `ListObjects`.
6379
6915
  #
6380
6916
  # The following operations are related to `ListObjects`\:
6381
6917
  #
6382
- # * ListObjectsV2
6918
+ # * [ListObjectsV2][1]
6919
+ #
6920
+ # * [GetObject][2]
6921
+ #
6922
+ # * [PutObject][3]
6923
+ #
6924
+ # * [CreateBucket][4]
6383
6925
  #
6384
- # * GetObject
6926
+ # * [ListBuckets][5]
6385
6927
  #
6386
- # * PutObject
6387
6928
  #
6388
- # * CreateBucket
6389
6929
  #
6390
- # * ListBuckets
6930
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html
6931
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
6932
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
6933
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
6934
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html
6391
6935
  #
6392
6936
  # @option params [required, String] :bucket
6393
6937
  # The name of the bucket containing the objects.
@@ -6419,6 +6963,11 @@ module Aws::S3
6419
6963
  # the list objects request. Bucket owners need not specify this
6420
6964
  # parameter in their requests.
6421
6965
  #
6966
+ # @option params [String] :expected_bucket_owner
6967
+ # The account id of the expected bucket owner. If the bucket is owned by
6968
+ # a different account, the request will fail with an HTTP `403 (Access
6969
+ # Denied)` error.
6970
+ #
6422
6971
  # @return [Types::ListObjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6423
6972
  #
6424
6973
  # * {Types::ListObjectsOutput#is_truncated #is_truncated} => Boolean
@@ -6483,6 +7032,7 @@ module Aws::S3
6483
7032
  # max_keys: 1,
6484
7033
  # prefix: "Prefix",
6485
7034
  # request_payer: "requester", # accepts requester
7035
+ # expected_bucket_owner: "AccountId",
6486
7036
  # })
6487
7037
  #
6488
7038
  # @example Response structure
@@ -6533,22 +7083,27 @@ module Aws::S3
6533
7083
  # This section describes the latest revision of the API. We recommend
6534
7084
  # that you use this revised API for application development. For
6535
7085
  # backward compatibility, Amazon S3 continues to support the prior
6536
- # version of this API, ListObjects.
7086
+ # version of this API, [ListObjects][3].
6537
7087
  #
6538
- # To get a list of your buckets, see ListBuckets.
7088
+ # To get a list of your buckets, see [ListBuckets][4].
6539
7089
  #
6540
7090
  # The following operations are related to `ListObjectsV2`\:
6541
7091
  #
6542
- # * GetObject
7092
+ # * [GetObject][5]
6543
7093
  #
6544
- # * PutObject
7094
+ # * [PutObject][6]
6545
7095
  #
6546
- # * CreateBucket
7096
+ # * [CreateBucket][7]
6547
7097
  #
6548
7098
  #
6549
7099
  #
6550
7100
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
6551
7101
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
7102
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html
7103
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html
7104
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
7105
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
7106
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
6552
7107
  #
6553
7108
  # @option params [required, String] :bucket
6554
7109
  # Bucket name to list.
@@ -6599,6 +7154,11 @@ module Aws::S3
6599
7154
  # the list objects request in V2 style. Bucket owners need not specify
6600
7155
  # this parameter in their requests.
6601
7156
  #
7157
+ # @option params [String] :expected_bucket_owner
7158
+ # The account id of the expected bucket owner. If the bucket is owned by
7159
+ # a different account, the request will fail with an HTTP `403 (Access
7160
+ # Denied)` error.
7161
+ #
6602
7162
  # @return [Types::ListObjectsV2Output] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6603
7163
  #
6604
7164
  # * {Types::ListObjectsV2Output#is_truncated #is_truncated} => Boolean
@@ -6665,6 +7225,7 @@ module Aws::S3
6665
7225
  # fetch_owner: false,
6666
7226
  # start_after: "StartAfter",
6667
7227
  # request_payer: "requester", # accepts requester
7228
+ # expected_bucket_owner: "AccountId",
6668
7229
  # })
6669
7230
  #
6670
7231
  # @example Response structure
@@ -6702,7 +7263,7 @@ module Aws::S3
6702
7263
  # Lists the parts that have been uploaded for a specific multipart
6703
7264
  # upload. This operation must include the upload ID, which you obtain by
6704
7265
  # sending the initiate multipart upload request (see
6705
- # CreateMultipartUpload). This request returns a maximum of 1,000
7266
+ # [CreateMultipartUpload][1]). This request returns a maximum of 1,000
6706
7267
  # uploaded parts. The default number of parts returned is 1,000 parts.
6707
7268
  # You can restrict the number of parts returned by specifying the
6708
7269
  # `max-parts` request parameter. If your multipart upload consists of
@@ -6713,27 +7274,32 @@ module Aws::S3
6713
7274
  # field value from the previous response.
6714
7275
  #
6715
7276
  # For more information on multipart uploads, see [Uploading Objects
6716
- # Using Multipart Upload][1].
7277
+ # Using Multipart Upload][2].
6717
7278
  #
6718
7279
  # For information on permissions required to use the multipart upload
6719
- # API, see [Multipart Upload API and Permissions][2].
7280
+ # API, see [Multipart Upload API and Permissions][3].
6720
7281
  #
6721
7282
  # The following operations are related to `ListParts`\:
6722
7283
  #
6723
- # * CreateMultipartUpload
7284
+ # * [CreateMultipartUpload][1]
6724
7285
  #
6725
- # * UploadPart
7286
+ # * [UploadPart][4]
6726
7287
  #
6727
- # * CompleteMultipartUpload
7288
+ # * [CompleteMultipartUpload][5]
6728
7289
  #
6729
- # * AbortMultipartUpload
7290
+ # * [AbortMultipartUpload][6]
6730
7291
  #
6731
- # * ListMultipartUploads
7292
+ # * [ListMultipartUploads][7]
6732
7293
  #
6733
7294
  #
6734
7295
  #
6735
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
6736
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
7296
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
7297
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
7298
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
7299
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
7300
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
7301
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
7302
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
6737
7303
  #
6738
7304
  # @option params [required, String] :bucket
6739
7305
  # Name of the bucket to which the parts are being uploaded.
@@ -6775,6 +7341,11 @@ module Aws::S3
6775
7341
  #
6776
7342
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
6777
7343
  #
7344
+ # @option params [String] :expected_bucket_owner
7345
+ # The account id of the expected bucket owner. If the bucket is owned by
7346
+ # a different account, the request will fail with an HTTP `403 (Access
7347
+ # Denied)` error.
7348
+ #
6778
7349
  # @return [Types::ListPartsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6779
7350
  #
6780
7351
  # * {Types::ListPartsOutput#abort_date #abort_date} => Time
@@ -6841,6 +7412,7 @@ module Aws::S3
6841
7412
  # part_number_marker: 1,
6842
7413
  # upload_id: "MultipartUploadId", # required
6843
7414
  # request_payer: "requester", # accepts requester
7415
+ # expected_bucket_owner: "AccountId",
6844
7416
  # })
6845
7417
  #
6846
7418
  # @example Response structure
@@ -6893,8 +7465,8 @@ module Aws::S3
6893
7465
  #
6894
7466
  # * Suspended – Disables accelerated data transfers to the bucket.
6895
7467
  #
6896
- # The GetBucketAccelerateConfiguration operation returns the transfer
6897
- # acceleration state of a bucket.
7468
+ # The [GetBucketAccelerateConfiguration][3] operation returns the
7469
+ # transfer acceleration state of a bucket.
6898
7470
  #
6899
7471
  # After setting the Transfer Acceleration state of a bucket to Enabled,
6900
7472
  # it might take up to thirty minutes before the data transfer rates to
@@ -6904,20 +7476,22 @@ module Aws::S3
6904
7476
  # DNS-compliant and must not contain periods (".").
6905
7477
  #
6906
7478
  # For more information about transfer acceleration, see [Transfer
6907
- # Acceleration][3].
7479
+ # Acceleration][4].
6908
7480
  #
6909
7481
  # The following operations are related to
6910
7482
  # `PutBucketAccelerateConfiguration`\:
6911
7483
  #
6912
- # * GetBucketAccelerateConfiguration
7484
+ # * [GetBucketAccelerateConfiguration][3]
6913
7485
  #
6914
- # * CreateBucket
7486
+ # * [CreateBucket][5]
6915
7487
  #
6916
7488
  #
6917
7489
  #
6918
7490
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
6919
7491
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
6920
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html
7492
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html
7493
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html
7494
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
6921
7495
  #
6922
7496
  # @option params [required, String] :bucket
6923
7497
  # Name of the bucket for which the accelerate configuration is set.
@@ -6925,6 +7499,11 @@ module Aws::S3
6925
7499
  # @option params [required, Types::AccelerateConfiguration] :accelerate_configuration
6926
7500
  # Container for setting the transfer acceleration state.
6927
7501
  #
7502
+ # @option params [String] :expected_bucket_owner
7503
+ # The account id of the expected bucket owner. If the bucket is owned by
7504
+ # a different account, the request will fail with an HTTP `403 (Access
7505
+ # Denied)` error.
7506
+ #
6928
7507
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6929
7508
  #
6930
7509
  # @example Request syntax with placeholder values
@@ -6934,6 +7513,7 @@ module Aws::S3
6934
7513
  # accelerate_configuration: { # required
6935
7514
  # status: "Enabled", # accepts Enabled, Suspended
6936
7515
  # },
7516
+ # expected_bucket_owner: "AccountId",
6937
7517
  # })
6938
7518
  #
6939
7519
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAccelerateConfiguration AWS API Documentation
@@ -7086,11 +7666,11 @@ module Aws::S3
7086
7666
  #
7087
7667
  # **Related Resources**
7088
7668
  #
7089
- # * CreateBucket
7669
+ # * [CreateBucket][5]
7090
7670
  #
7091
- # * DeleteBucket
7671
+ # * [DeleteBucket][6]
7092
7672
  #
7093
- # * GetObjectAcl
7673
+ # * [GetObjectAcl][7]
7094
7674
  #
7095
7675
  #
7096
7676
  #
@@ -7098,6 +7678,9 @@ module Aws::S3
7098
7678
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
7099
7679
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
7100
7680
  # [4]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
7681
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
7682
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
7683
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html
7101
7684
  #
7102
7685
  # @option params [String] :acl
7103
7686
  # The canned ACL to apply to the bucket.
@@ -7135,6 +7718,11 @@ module Aws::S3
7135
7718
  # @option params [String] :grant_write_acp
7136
7719
  # Allows grantee to write the ACL for the applicable bucket.
7137
7720
  #
7721
+ # @option params [String] :expected_bucket_owner
7722
+ # The account id of the expected bucket owner. If the bucket is owned by
7723
+ # a different account, the request will fail with an HTTP `403 (Access
7724
+ # Denied)` error.
7725
+ #
7138
7726
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7139
7727
  #
7140
7728
  #
@@ -7179,6 +7767,7 @@ module Aws::S3
7179
7767
  # grant_read_acp: "GrantReadACP",
7180
7768
  # grant_write: "GrantWrite",
7181
7769
  # grant_write_acp: "GrantWriteACP",
7770
+ # expected_bucket_owner: "AccountId",
7182
7771
  # })
7183
7772
  #
7184
7773
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAcl AWS API Documentation
@@ -7242,9 +7831,11 @@ module Aws::S3
7242
7831
  #
7243
7832
  # **Related Resources**
7244
7833
  #
7245
- # *
7246
- # *
7247
- # *
7834
+ # * [GetBucketAnalyticsConfiguration][5]
7835
+ #
7836
+ # * [DeleteBucketAnalyticsConfiguration][6]
7837
+ #
7838
+ # * [ListBucketAnalyticsConfigurations][7]
7248
7839
  #
7249
7840
  #
7250
7841
  #
@@ -7252,6 +7843,9 @@ module Aws::S3
7252
7843
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9
7253
7844
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
7254
7845
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
7846
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html
7847
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html
7848
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html
7255
7849
  #
7256
7850
  # @option params [required, String] :bucket
7257
7851
  # The name of the bucket to which an analytics configuration is stored.
@@ -7262,6 +7856,11 @@ module Aws::S3
7262
7856
  # @option params [required, Types::AnalyticsConfiguration] :analytics_configuration
7263
7857
  # The configuration and any analyses for the analytics filter.
7264
7858
  #
7859
+ # @option params [String] :expected_bucket_owner
7860
+ # The account id of the expected bucket owner. If the bucket is owned by
7861
+ # a different account, the request will fail with an HTTP `403 (Access
7862
+ # Denied)` error.
7863
+ #
7265
7864
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7266
7865
  #
7267
7866
  # @example Request syntax with placeholder values
@@ -7301,6 +7900,7 @@ module Aws::S3
7301
7900
  # },
7302
7901
  # },
7303
7902
  # },
7903
+ # expected_bucket_owner: "AccountId",
7304
7904
  # })
7305
7905
  #
7306
7906
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAnalyticsConfiguration AWS API Documentation
@@ -7352,15 +7952,18 @@ module Aws::S3
7352
7952
  #
7353
7953
  # **Related Resources**
7354
7954
  #
7355
- # * GetBucketCors
7955
+ # * [GetBucketCors][2]
7356
7956
  #
7357
- # * DeleteBucketCors
7957
+ # * [DeleteBucketCors][3]
7358
7958
  #
7359
- # * RESTOPTIONSobject
7959
+ # * [RESTOPTIONSobject][4]
7360
7960
  #
7361
7961
  #
7362
7962
  #
7363
7963
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
7964
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html
7965
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html
7966
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html
7364
7967
  #
7365
7968
  # @option params [required, String] :bucket
7366
7969
  # Specifies the bucket impacted by the `cors`configuration.
@@ -7384,6 +7987,11 @@ module Aws::S3
7384
7987
  #
7385
7988
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
7386
7989
  #
7990
+ # @option params [String] :expected_bucket_owner
7991
+ # The account id of the expected bucket owner. If the bucket is owned by
7992
+ # a different account, the request will fail with an HTTP `403 (Access
7993
+ # Denied)` error.
7994
+ #
7387
7995
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7388
7996
  #
7389
7997
  #
@@ -7446,6 +8054,7 @@ module Aws::S3
7446
8054
  # ],
7447
8055
  # },
7448
8056
  # content_md5: "ContentMD5",
8057
+ # expected_bucket_owner: "AccountId",
7449
8058
  # })
7450
8059
  #
7451
8060
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketCors AWS API Documentation
@@ -7480,15 +8089,17 @@ module Aws::S3
7480
8089
  #
7481
8090
  # **Related Resources**
7482
8091
  #
7483
- # * GetBucketEncryption
8092
+ # * [GetBucketEncryption][4]
7484
8093
  #
7485
- # * DeleteBucketEncryption
8094
+ # * [DeleteBucketEncryption][5]
7486
8095
  #
7487
8096
  #
7488
8097
  #
7489
8098
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html
7490
8099
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
7491
8100
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
8101
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html
8102
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html
7492
8103
  #
7493
8104
  # @option params [required, String] :bucket
7494
8105
  # Specifies default encryption for a bucket using server-side encryption
@@ -7509,6 +8120,11 @@ module Aws::S3
7509
8120
  # @option params [required, Types::ServerSideEncryptionConfiguration] :server_side_encryption_configuration
7510
8121
  # Specifies the default server-side-encryption configuration.
7511
8122
  #
8123
+ # @option params [String] :expected_bucket_owner
8124
+ # The account id of the expected bucket owner. If the bucket is owned by
8125
+ # a different account, the request will fail with an HTTP `403 (Access
8126
+ # Denied)` error.
8127
+ #
7512
8128
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7513
8129
  #
7514
8130
  # @example Request syntax with placeholder values
@@ -7526,6 +8142,7 @@ module Aws::S3
7526
8142
  # },
7527
8143
  # ],
7528
8144
  # },
8145
+ # expected_bucket_owner: "AccountId",
7529
8146
  # })
7530
8147
  #
7531
8148
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketEncryption AWS API Documentation
@@ -7594,11 +8211,11 @@ module Aws::S3
7594
8211
  #
7595
8212
  # **Related Resources**
7596
8213
  #
7597
- # * GetBucketInventoryConfiguration
8214
+ # * [GetBucketInventoryConfiguration][5]
7598
8215
  #
7599
- # * DeleteBucketInventoryConfiguration
8216
+ # * [DeleteBucketInventoryConfiguration][6]
7600
8217
  #
7601
- # * ListBucketInventoryConfigurations
8218
+ # * [ListBucketInventoryConfigurations][7]
7602
8219
  #
7603
8220
  #
7604
8221
  #
@@ -7606,6 +8223,9 @@ module Aws::S3
7606
8223
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9
7607
8224
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
7608
8225
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
8226
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html
8227
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html
8228
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html
7609
8229
  #
7610
8230
  # @option params [required, String] :bucket
7611
8231
  # The name of the bucket where the inventory configuration will be
@@ -7617,6 +8237,11 @@ module Aws::S3
7617
8237
  # @option params [required, Types::InventoryConfiguration] :inventory_configuration
7618
8238
  # Specifies the inventory configuration.
7619
8239
  #
8240
+ # @option params [String] :expected_bucket_owner
8241
+ # The account id of the expected bucket owner. If the bucket is owned by
8242
+ # a different account, the request will fail with an HTTP `403 (Access
8243
+ # Denied)` error.
8244
+ #
7620
8245
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7621
8246
  #
7622
8247
  # @example Request syntax with placeholder values
@@ -7651,6 +8276,7 @@ module Aws::S3
7651
8276
  # frequency: "Daily", # required, accepts Daily, Weekly
7652
8277
  # },
7653
8278
  # },
8279
+ # expected_bucket_owner: "AccountId",
7654
8280
  # })
7655
8281
  #
7656
8282
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketInventoryConfiguration AWS API Documentation
@@ -7663,13 +8289,13 @@ module Aws::S3
7663
8289
  end
7664
8290
 
7665
8291
  # For an updated version of this API, see
7666
- # PutBucketLifecycleConfiguration. This version has been deprecated.
7667
- # Existing lifecycle configurations will work. For new lifecycle
7668
- # configurations, use the updated API.
8292
+ # [PutBucketLifecycleConfiguration][1]. This version has been
8293
+ # deprecated. Existing lifecycle configurations will work. For new
8294
+ # lifecycle configurations, use the updated API.
7669
8295
  #
7670
8296
  # Creates a new lifecycle configuration for the bucket or replaces an
7671
8297
  # existing lifecycle configuration. For information about lifecycle
7672
- # configuration, see [Object Lifecycle Management][1] in the *Amazon
8298
+ # configuration, see [Object Lifecycle Management][2] in the *Amazon
7673
8299
  # Simple Storage Service Developer Guide*.
7674
8300
  #
7675
8301
  # By default, all Amazon S3 resources, including buckets, objects, and
@@ -7692,36 +8318,41 @@ module Aws::S3
7692
8318
  # * `s3:PutLifecycleConfiguration`
7693
8319
  #
7694
8320
  # For more information about permissions, see [Managing Access
7695
- # Permissions to your Amazon S3 Resources][2] in the *Amazon Simple
8321
+ # Permissions to your Amazon S3 Resources][3] in the *Amazon Simple
7696
8322
  # Storage Service Developer Guide*.
7697
8323
  #
7698
8324
  # For more examples of transitioning objects to storage classes such as
7699
8325
  # STANDARD\_IA or ONEZONE\_IA, see [Examples of Lifecycle
7700
- # Configuration][3].
8326
+ # Configuration][4].
7701
8327
  #
7702
8328
  # **Related Resources**
7703
8329
  #
7704
- # * GetBucketLifecycle(Deprecated)
8330
+ # * [GetBucketLifecycle][5](Deprecated)
8331
+ #
8332
+ # * [GetBucketLifecycleConfiguration][6]
7705
8333
  #
7706
- # * GetBucketLifecycleConfiguration
8334
+ # * [RestoreObject][7]
7707
8335
  #
7708
- # *
7709
8336
  # * By default, a resource owner—in this case, a bucket owner, which is
7710
8337
  # the AWS account that created the bucket—can perform any of the
7711
8338
  # operations. A resource owner can also grant others permission to
7712
8339
  # perform the operation. For more information, see the following
7713
8340
  # topics in the Amazon Simple Storage Service Developer Guide:
7714
8341
  #
7715
- # * [Specifying Permissions in a Policy][4]
8342
+ # * [Specifying Permissions in a Policy][8]
7716
8343
  #
7717
- # * [Managing Access Permissions to your Amazon S3 Resources][2]
8344
+ # * [Managing Access Permissions to your Amazon S3 Resources][3]
7718
8345
  #
7719
8346
  #
7720
8347
  #
7721
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
7722
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
7723
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#lifecycle-configuration-examples
7724
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
8348
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
8349
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
8350
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
8351
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#lifecycle-configuration-examples
8352
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html
8353
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
8354
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
8355
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
7725
8356
  #
7726
8357
  # @option params [required, String] :bucket
7727
8358
  #
@@ -7729,6 +8360,11 @@ module Aws::S3
7729
8360
  #
7730
8361
  # @option params [Types::LifecycleConfiguration] :lifecycle_configuration
7731
8362
  #
8363
+ # @option params [String] :expected_bucket_owner
8364
+ # The account id of the expected bucket owner. If the bucket is owned by
8365
+ # a different account, the request will fail with an HTTP `403 (Access
8366
+ # Denied)` error.
8367
+ #
7732
8368
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7733
8369
  #
7734
8370
  # @example Request syntax with placeholder values
@@ -7765,6 +8401,7 @@ module Aws::S3
7765
8401
  # },
7766
8402
  # ],
7767
8403
  # },
8404
+ # expected_bucket_owner: "AccountId",
7768
8405
  # })
7769
8406
  #
7770
8407
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycle AWS API Documentation
@@ -7787,7 +8424,7 @@ module Aws::S3
7787
8424
  # API. The previous version of the API supported filtering based only on
7788
8425
  # an object key name prefix, which is supported for backward
7789
8426
  # compatibility. For the related API description, see
7790
- # PutBucketLifecycle.
8427
+ # [PutBucketLifecycle][2].
7791
8428
  #
7792
8429
  # </note>
7793
8430
  #
@@ -7811,8 +8448,8 @@ module Aws::S3
7811
8448
  # S3 provides predefined actions that you can specify for current and
7812
8449
  # noncurrent object versions.
7813
8450
  #
7814
- # For more information, see [Object Lifecycle Management][2] and
7815
- # [Lifecycle Configuration Elements][3].
8451
+ # For more information, see [Object Lifecycle Management][3] and
8452
+ # [Lifecycle Configuration Elements][4].
7816
8453
  #
7817
8454
  # **Permissions**
7818
8455
  #
@@ -7840,18 +8477,21 @@ module Aws::S3
7840
8477
  #
7841
8478
  # The following are related to `PutBucketLifecycleConfiguration`\:
7842
8479
  #
7843
- # * [Examples of Lifecycle Configuration][4]
8480
+ # * [Examples of Lifecycle Configuration][5]
7844
8481
  #
7845
- # * GetBucketLifecycleConfiguration
8482
+ # * [GetBucketLifecycleConfiguration][6]
7846
8483
  #
7847
- # * DeleteBucketLifecycle
8484
+ # * [DeleteBucketLifecycle][7]
7848
8485
  #
7849
8486
  #
7850
8487
  #
7851
8488
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
7852
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
7853
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html
7854
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-configuration-examples.html
8489
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
8490
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
8491
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html
8492
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-configuration-examples.html
8493
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
8494
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html
7855
8495
  #
7856
8496
  # @option params [required, String] :bucket
7857
8497
  # The name of the bucket for which to set the configuration.
@@ -7859,6 +8499,11 @@ module Aws::S3
7859
8499
  # @option params [Types::BucketLifecycleConfiguration] :lifecycle_configuration
7860
8500
  # Container for lifecycle rules. You can add as many as 1,000 rules.
7861
8501
  #
8502
+ # @option params [String] :expected_bucket_owner
8503
+ # The account id of the expected bucket owner. If the bucket is owned by
8504
+ # a different account, the request will fail with an HTTP `403 (Access
8505
+ # Denied)` error.
8506
+ #
7862
8507
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7863
8508
  #
7864
8509
  #
@@ -7943,6 +8588,7 @@ module Aws::S3
7943
8588
  # },
7944
8589
  # ],
7945
8590
  # },
8591
+ # expected_bucket_owner: "AccountId",
7946
8592
  # })
7947
8593
  #
7948
8594
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycleConfiguration AWS API Documentation
@@ -8000,23 +8646,27 @@ module Aws::S3
8000
8646
  # For more information about server access logging, see [Server Access
8001
8647
  # Logging][1].
8002
8648
  #
8003
- # For more information about creating a bucket, see CreateBucket. For
8004
- # more information about returning the logging status of a bucket, see
8005
- # GetBucketLogging.
8649
+ # For more information about creating a bucket, see [CreateBucket][2].
8650
+ # For more information about returning the logging status of a bucket,
8651
+ # see [GetBucketLogging][3].
8006
8652
  #
8007
8653
  # The following operations are related to `PutBucketLogging`\:
8008
8654
  #
8009
- # * PutObject
8655
+ # * [PutObject][4]
8010
8656
  #
8011
- # * DeleteBucket
8657
+ # * [DeleteBucket][5]
8012
8658
  #
8013
- # * CreateBucket
8659
+ # * [CreateBucket][2]
8014
8660
  #
8015
- # * GetBucketLogging
8661
+ # * [GetBucketLogging][3]
8016
8662
  #
8017
8663
  #
8018
8664
  #
8019
8665
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html
8666
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
8667
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html
8668
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
8669
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
8020
8670
  #
8021
8671
  # @option params [required, String] :bucket
8022
8672
  # The name of the bucket for which to set the logging parameters.
@@ -8027,6 +8677,11 @@ module Aws::S3
8027
8677
  # @option params [String] :content_md5
8028
8678
  # The MD5 hash of the `PutBucketLogging` request body.
8029
8679
  #
8680
+ # @option params [String] :expected_bucket_owner
8681
+ # The account id of the expected bucket owner. If the bucket is owned by
8682
+ # a different account, the request will fail with an HTTP `403 (Access
8683
+ # Denied)` error.
8684
+ #
8030
8685
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8031
8686
  #
8032
8687
  #
@@ -8077,6 +8732,7 @@ module Aws::S3
8077
8732
  # },
8078
8733
  # },
8079
8734
  # content_md5: "ContentMD5",
8735
+ # expected_bucket_owner: "AccountId",
8080
8736
  # })
8081
8737
  #
8082
8738
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLogging AWS API Documentation
@@ -8108,11 +8764,11 @@ module Aws::S3
8108
8764
  # The following operations are related to
8109
8765
  # `PutBucketMetricsConfiguration`\:
8110
8766
  #
8111
- # * DeleteBucketMetricsConfiguration
8767
+ # * [DeleteBucketMetricsConfiguration][4]
8112
8768
  #
8113
- # * PutBucketMetricsConfiguration
8769
+ # * [PutBucketMetricsConfiguration][5]
8114
8770
  #
8115
- # * ListBucketMetricsConfigurations
8771
+ # * [ListBucketMetricsConfigurations][6]
8116
8772
  #
8117
8773
  # `GetBucketLifecycle` has the following special error:
8118
8774
  #
@@ -8128,6 +8784,9 @@ module Aws::S3
8128
8784
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
8129
8785
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
8130
8786
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html
8787
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html
8788
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html
8789
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html
8131
8790
  #
8132
8791
  # @option params [required, String] :bucket
8133
8792
  # The name of the bucket for which the metrics configuration is set.
@@ -8138,6 +8797,11 @@ module Aws::S3
8138
8797
  # @option params [required, Types::MetricsConfiguration] :metrics_configuration
8139
8798
  # Specifies the metrics configuration.
8140
8799
  #
8800
+ # @option params [String] :expected_bucket_owner
8801
+ # The account id of the expected bucket owner. If the bucket is owned by
8802
+ # a different account, the request will fail with an HTTP `403 (Access
8803
+ # Denied)` error.
8804
+ #
8141
8805
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8142
8806
  #
8143
8807
  # @example Request syntax with placeholder values
@@ -8164,6 +8828,7 @@ module Aws::S3
8164
8828
  # },
8165
8829
  # },
8166
8830
  # },
8831
+ # expected_bucket_owner: "AccountId",
8167
8832
  # })
8168
8833
  #
8169
8834
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketMetricsConfiguration AWS API Documentation
@@ -8175,7 +8840,12 @@ module Aws::S3
8175
8840
  req.send_request(options)
8176
8841
  end
8177
8842
 
8178
- # No longer used, see the PutBucketNotificationConfiguration operation.
8843
+ # No longer used, see the [PutBucketNotificationConfiguration][1]
8844
+ # operation.
8845
+ #
8846
+ #
8847
+ #
8848
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotificationConfiguration.html
8179
8849
  #
8180
8850
  # @option params [required, String] :bucket
8181
8851
  # The name of the bucket.
@@ -8186,6 +8856,11 @@ module Aws::S3
8186
8856
  # @option params [required, Types::NotificationConfigurationDeprecated] :notification_configuration
8187
8857
  # The container for the configuration.
8188
8858
  #
8859
+ # @option params [String] :expected_bucket_owner
8860
+ # The account id of the expected bucket owner. If the bucket is owned by
8861
+ # a different account, the request will fail with an HTTP `403 (Access
8862
+ # Denied)` error.
8863
+ #
8189
8864
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8190
8865
  #
8191
8866
  # @example Request syntax with placeholder values
@@ -8214,6 +8889,7 @@ module Aws::S3
8214
8889
  # invocation_role: "CloudFunctionInvocationRole",
8215
8890
  # },
8216
8891
  # },
8892
+ # expected_bucket_owner: "AccountId",
8217
8893
  # })
8218
8894
  #
8219
8895
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotification AWS API Documentation
@@ -8283,13 +8959,14 @@ module Aws::S3
8283
8959
  # The following operation is related to
8284
8960
  # `PutBucketNotificationConfiguration`\:
8285
8961
  #
8286
- # * GetBucketNotificationConfiguration
8962
+ # * [GetBucketNotificationConfiguration][2]
8287
8963
  #
8288
8964
  # ^
8289
8965
  #
8290
8966
  #
8291
8967
  #
8292
8968
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
8969
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html
8293
8970
  #
8294
8971
  # @option params [required, String] :bucket
8295
8972
  # The name of the bucket.
@@ -8299,6 +8976,11 @@ module Aws::S3
8299
8976
  # bucket. If this element is empty, notifications are turned off for the
8300
8977
  # bucket.
8301
8978
  #
8979
+ # @option params [String] :expected_bucket_owner
8980
+ # The account id of the expected bucket owner. If the bucket is owned by
8981
+ # a different account, the request will fail with an HTTP `403 (Access
8982
+ # Denied)` error.
8983
+ #
8302
8984
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8303
8985
  #
8304
8986
  #
@@ -8377,6 +9059,7 @@ module Aws::S3
8377
9059
  # },
8378
9060
  # ],
8379
9061
  # },
9062
+ # expected_bucket_owner: "AccountId",
8380
9063
  # })
8381
9064
  #
8382
9065
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationConfiguration AWS API Documentation
@@ -8408,13 +9091,15 @@ module Aws::S3
8408
9091
  #
8409
9092
  # The following operations are related to `PutBucketPolicy`\:
8410
9093
  #
8411
- # * CreateBucket
9094
+ # * [CreateBucket][2]
8412
9095
  #
8413
- # * DeleteBucket
9096
+ # * [DeleteBucket][3]
8414
9097
  #
8415
9098
  #
8416
9099
  #
8417
9100
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
9101
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
9102
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
8418
9103
  #
8419
9104
  # @option params [required, String] :bucket
8420
9105
  # The name of the bucket.
@@ -8429,6 +9114,11 @@ module Aws::S3
8429
9114
  # @option params [required, String] :policy
8430
9115
  # The bucket policy as a JSON document.
8431
9116
  #
9117
+ # @option params [String] :expected_bucket_owner
9118
+ # The account id of the expected bucket owner. If the bucket is owned by
9119
+ # a different account, the request will fail with an HTTP `403 (Access
9120
+ # Denied)` error.
9121
+ #
8432
9122
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8433
9123
  #
8434
9124
  #
@@ -8448,6 +9138,7 @@ module Aws::S3
8448
9138
  # content_md5: "ContentMD5",
8449
9139
  # confirm_remove_self_bucket_access: false,
8450
9140
  # policy: "Policy", # required
9141
+ # expected_bucket_owner: "AccountId",
8451
9142
  # })
8452
9143
  #
8453
9144
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketPolicy AWS API Documentation
@@ -8518,14 +9209,14 @@ module Aws::S3
8518
9209
  # about replication configuration, see [Replicating Objects Created with
8519
9210
  # SSE Using CMKs stored in AWS KMS][6].
8520
9211
  #
8521
- # For information on `PutBucketReplication` errors, see
8522
- # ReplicationErrorCodeList
9212
+ # For information on `PutBucketReplication` errors, see [List of
9213
+ # replication-related error codes][7]
8523
9214
  #
8524
9215
  # The following operations are related to `PutBucketReplication`\:
8525
9216
  #
8526
- # * GetBucketReplication
9217
+ # * [GetBucketReplication][8]
8527
9218
  #
8528
- # * DeleteBucketReplication
9219
+ # * [DeleteBucketReplication][9]
8529
9220
  #
8530
9221
  #
8531
9222
  #
@@ -8535,6 +9226,9 @@ module Aws::S3
8535
9226
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
8536
9227
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
8537
9228
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-config-for-kms-objects.html
9229
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList
9230
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html
9231
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html
8538
9232
  #
8539
9233
  # @option params [required, String] :bucket
8540
9234
  # The name of the bucket
@@ -8554,6 +9248,11 @@ module Aws::S3
8554
9248
  #
8555
9249
  # @option params [String] :token
8556
9250
  #
9251
+ # @option params [String] :expected_bucket_owner
9252
+ # The account id of the expected bucket owner. If the bucket is owned by
9253
+ # a different account, the request will fail with an HTTP `403 (Access
9254
+ # Denied)` error.
9255
+ #
8557
9256
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8558
9257
  #
8559
9258
  #
@@ -8645,6 +9344,7 @@ module Aws::S3
8645
9344
  # ],
8646
9345
  # },
8647
9346
  # token: "ObjectLockToken",
9347
+ # expected_bucket_owner: "AccountId",
8648
9348
  # })
8649
9349
  #
8650
9350
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketReplication AWS API Documentation
@@ -8664,13 +9364,15 @@ module Aws::S3
8664
9364
  #
8665
9365
  # The following operations are related to `PutBucketRequestPayment`\:
8666
9366
  #
8667
- # * CreateBucket
9367
+ # * [CreateBucket][2]
8668
9368
  #
8669
- # * GetBucketRequestPayment
9369
+ # * [GetBucketRequestPayment][3]
8670
9370
  #
8671
9371
  #
8672
9372
  #
8673
9373
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html
9374
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
9375
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketRequestPayment.html
8674
9376
  #
8675
9377
  # @option params [required, String] :bucket
8676
9378
  # The bucket name.
@@ -8688,6 +9390,11 @@ module Aws::S3
8688
9390
  # @option params [required, Types::RequestPaymentConfiguration] :request_payment_configuration
8689
9391
  # Container for Payer.
8690
9392
  #
9393
+ # @option params [String] :expected_bucket_owner
9394
+ # The account id of the expected bucket owner. If the bucket is owned by
9395
+ # a different account, the request will fail with an HTTP `403 (Access
9396
+ # Denied)` error.
9397
+ #
8691
9398
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8692
9399
  #
8693
9400
  #
@@ -8710,6 +9417,7 @@ module Aws::S3
8710
9417
  # request_payment_configuration: { # required
8711
9418
  # payer: "Requester", # required, accepts Requester, BucketOwner
8712
9419
  # },
9420
+ # expected_bucket_owner: "AccountId",
8713
9421
  # })
8714
9422
  #
8715
9423
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketRequestPayment AWS API Documentation
@@ -8778,9 +9486,9 @@ module Aws::S3
8778
9486
  #
8779
9487
  # The following operations are related to `PutBucketTagging`\:
8780
9488
  #
8781
- # * GetBucketTagging
9489
+ # * [GetBucketTagging][7]
8782
9490
  #
8783
- # * DeleteBucketTagging
9491
+ # * [DeleteBucketTagging][8]
8784
9492
  #
8785
9493
  #
8786
9494
  #
@@ -8790,6 +9498,8 @@ module Aws::S3
8790
9498
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
8791
9499
  # [5]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html
8792
9500
  # [6]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/aws-tag-restrictions.html
9501
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html
9502
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html
8793
9503
  #
8794
9504
  # @option params [required, String] :bucket
8795
9505
  # The bucket name.
@@ -8806,6 +9516,11 @@ module Aws::S3
8806
9516
  # @option params [required, Types::Tagging] :tagging
8807
9517
  # Container for the `TagSet` and `Tag` elements.
8808
9518
  #
9519
+ # @option params [String] :expected_bucket_owner
9520
+ # The account id of the expected bucket owner. If the bucket is owned by
9521
+ # a different account, the request will fail with an HTTP `403 (Access
9522
+ # Denied)` error.
9523
+ #
8809
9524
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8810
9525
  #
8811
9526
  #
@@ -8842,6 +9557,7 @@ module Aws::S3
8842
9557
  # },
8843
9558
  # ],
8844
9559
  # },
9560
+ # expected_bucket_owner: "AccountId",
8845
9561
  # })
8846
9562
  #
8847
9563
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketTagging AWS API Documentation
@@ -8865,7 +9581,7 @@ module Aws::S3
8865
9581
  # objects added to the bucket receive the version ID null.
8866
9582
  #
8867
9583
  # If the versioning state has never been set on a bucket, it has no
8868
- # versioning state; a GetBucketVersioning request does not return a
9584
+ # versioning state; a [GetBucketVersioning][1] request does not return a
8869
9585
  # versioning state value.
8870
9586
  #
8871
9587
  # If the bucket owner enables MFA Delete in the bucket versioning
@@ -8880,19 +9596,22 @@ module Aws::S3
8880
9596
  # manage the deletes of the noncurrent object versions in the
8881
9597
  # version-enabled bucket. (A version-enabled bucket maintains one
8882
9598
  # current and zero or more noncurrent object versions.) For more
8883
- # information, see [Lifecycle and Versioning][1].
9599
+ # information, see [Lifecycle and Versioning][2].
8884
9600
  #
8885
9601
  # **Related Resources**
8886
9602
  #
8887
- # * CreateBucket
9603
+ # * [CreateBucket][3]
8888
9604
  #
8889
- # * DeleteBucket
9605
+ # * [DeleteBucket][4]
8890
9606
  #
8891
- # * GetBucketVersioning
9607
+ # * [GetBucketVersioning][1]
8892
9608
  #
8893
9609
  #
8894
9610
  #
8895
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-and-other-bucket-config
9611
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html
9612
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-and-other-bucket-config
9613
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
9614
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
8896
9615
  #
8897
9616
  # @option params [required, String] :bucket
8898
9617
  # The bucket name.
@@ -8914,6 +9633,11 @@ module Aws::S3
8914
9633
  # @option params [required, Types::VersioningConfiguration] :versioning_configuration
8915
9634
  # Container for setting the versioning state.
8916
9635
  #
9636
+ # @option params [String] :expected_bucket_owner
9637
+ # The account id of the expected bucket owner. If the bucket is owned by
9638
+ # a different account, the request will fail with an HTTP `403 (Access
9639
+ # Denied)` error.
9640
+ #
8917
9641
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
8918
9642
  #
8919
9643
  #
@@ -8939,6 +9663,7 @@ module Aws::S3
8939
9663
  # mfa_delete: "Enabled", # accepts Enabled, Disabled
8940
9664
  # status: "Enabled", # accepts Enabled, Suspended
8941
9665
  # },
9666
+ # expected_bucket_owner: "AccountId",
8942
9667
  # })
8943
9668
  #
8944
9669
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketVersioning AWS API Documentation
@@ -9038,6 +9763,11 @@ module Aws::S3
9038
9763
  # @option params [required, Types::WebsiteConfiguration] :website_configuration
9039
9764
  # Container for the request.
9040
9765
  #
9766
+ # @option params [String] :expected_bucket_owner
9767
+ # The account id of the expected bucket owner. If the bucket is owned by
9768
+ # a different account, the request will fail with an HTTP `403 (Access
9769
+ # Denied)` error.
9770
+ #
9041
9771
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9042
9772
  #
9043
9773
  #
@@ -9090,6 +9820,7 @@ module Aws::S3
9090
9820
  # },
9091
9821
  # ],
9092
9822
  # },
9823
+ # expected_bucket_owner: "AccountId",
9093
9824
  # })
9094
9825
  #
9095
9826
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsite AWS API Documentation
@@ -9165,13 +9896,13 @@ module Aws::S3
9165
9896
  #
9166
9897
  # For more information about versioning, see [Adding Objects to
9167
9898
  # Versioning Enabled Buckets][6]. For information about returning the
9168
- # versioning state of a bucket, see GetBucketVersioning.
9899
+ # versioning state of a bucket, see [GetBucketVersioning][7].
9169
9900
  #
9170
9901
  # **Related Resources**
9171
9902
  #
9172
- # * CopyObject
9903
+ # * [CopyObject][8]
9173
9904
  #
9174
- # * DeleteObject
9905
+ # * [DeleteObject][9]
9175
9906
  #
9176
9907
  #
9177
9908
  #
@@ -9181,6 +9912,9 @@ module Aws::S3
9181
9912
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html
9182
9913
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
9183
9914
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html
9915
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html
9916
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
9917
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
9184
9918
  #
9185
9919
  # @option params [String] :acl
9186
9920
  # The canned ACL to apply to the object. For more information, see
@@ -9341,7 +10075,7 @@ module Aws::S3
9341
10075
  # encrypting data. This value is used to store the object and then it is
9342
10076
  # discarded; Amazon S3 does not store the encryption key. The key must
9343
10077
  # be appropriate for use with the algorithm specified in the
9344
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
10078
+ # `x-amz-server-side-encryption-customer-algorithm` header.
9345
10079
  #
9346
10080
  # @option params [String] :sse_customer_key_md5
9347
10081
  # Specifies the 128-bit MD5 digest of the encryption key according to
@@ -9395,6 +10129,11 @@ module Aws::S3
9395
10129
  #
9396
10130
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
9397
10131
  #
10132
+ # @option params [String] :expected_bucket_owner
10133
+ # The account id of the expected bucket owner. If the bucket is owned by
10134
+ # a different account, the request will fail with an HTTP `403 (Access
10135
+ # Denied)` error.
10136
+ #
9398
10137
  # @return [Types::PutObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9399
10138
  #
9400
10139
  # * {Types::PutObjectOutput#expiration #expiration} => String
@@ -9408,39 +10147,24 @@ module Aws::S3
9408
10147
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
9409
10148
  #
9410
10149
  #
9411
- # @example Example: To upload an object and specify canned ACL.
10150
+ # @example Example: To upload an object and specify server-side encryption and object tags
9412
10151
  #
9413
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
9414
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
10152
+ # # The following example uploads and object. The request specifies the optional server-side encryption option. The request
10153
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
9415
10154
  #
9416
10155
  # resp = client.put_object({
9417
- # acl: "authenticated-read",
9418
10156
  # body: "filetoupload",
9419
10157
  # bucket: "examplebucket",
9420
10158
  # key: "exampleobject",
10159
+ # server_side_encryption: "AES256",
10160
+ # tagging: "key1=value1&key2=value2",
9421
10161
  # })
9422
10162
  #
9423
10163
  # resp.to_h outputs the following:
9424
10164
  # {
9425
10165
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
9426
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
9427
- # }
9428
- #
9429
- # @example Example: To upload an object
9430
- #
9431
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
9432
- # # syntax. S3 returns VersionId of the newly created object.
9433
- #
9434
- # resp = client.put_object({
9435
- # body: "HappyFace.jpg",
9436
- # bucket: "examplebucket",
9437
- # key: "HappyFace.jpg",
9438
- # })
9439
- #
9440
- # resp.to_h outputs the following:
9441
- # {
9442
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
9443
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
10166
+ # server_side_encryption: "AES256",
10167
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
9444
10168
  # }
9445
10169
  #
9446
10170
  # @example Example: To create an object.
@@ -9518,24 +10242,39 @@ module Aws::S3
9518
10242
  # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
9519
10243
  # }
9520
10244
  #
9521
- # @example Example: To upload an object and specify server-side encryption and object tags
10245
+ # @example Example: To upload an object and specify canned ACL.
9522
10246
  #
9523
- # # The following example uploads and object. The request specifies the optional server-side encryption option. The request
9524
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
10247
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
10248
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
9525
10249
  #
9526
10250
  # resp = client.put_object({
10251
+ # acl: "authenticated-read",
9527
10252
  # body: "filetoupload",
9528
10253
  # bucket: "examplebucket",
9529
10254
  # key: "exampleobject",
9530
- # server_side_encryption: "AES256",
9531
- # tagging: "key1=value1&key2=value2",
9532
10255
  # })
9533
10256
  #
9534
10257
  # resp.to_h outputs the following:
9535
10258
  # {
9536
10259
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
9537
- # server_side_encryption: "AES256",
9538
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
10260
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
10261
+ # }
10262
+ #
10263
+ # @example Example: To upload an object
10264
+ #
10265
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
10266
+ # # syntax. S3 returns VersionId of the newly created object.
10267
+ #
10268
+ # resp = client.put_object({
10269
+ # body: "HappyFace.jpg",
10270
+ # bucket: "examplebucket",
10271
+ # key: "HappyFace.jpg",
10272
+ # })
10273
+ #
10274
+ # resp.to_h outputs the following:
10275
+ # {
10276
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
10277
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
9539
10278
  # }
9540
10279
  #
9541
10280
  # @example Streaming a file from disk
@@ -9579,6 +10318,7 @@ module Aws::S3
9579
10318
  # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
9580
10319
  # object_lock_retain_until_date: Time.now,
9581
10320
  # object_lock_legal_hold_status: "ON", # accepts ON, OFF
10321
+ # expected_bucket_owner: "AccountId",
9582
10322
  # })
9583
10323
  #
9584
10324
  # @example Response structure
@@ -9603,14 +10343,16 @@ module Aws::S3
9603
10343
  end
9604
10344
 
9605
10345
  # Uses the `acl` subresource to set the access control list (ACL)
9606
- # permissions for an object that already exists in a bucket. You must
9607
- # have `WRITE_ACP` permission to set the ACL of an object.
10346
+ # permissions for an object that already exists in an S3 bucket. You
10347
+ # must have `WRITE_ACP` permission to set the ACL of an object. For more
10348
+ # information, see [What permissions can I grant?][1] in the *Amazon
10349
+ # Simple Storage Service Developer Guide*.
9608
10350
  #
9609
10351
  # Depending on your application needs, you can choose to set the ACL on
9610
10352
  # an object using either the request body or the headers. For example,
9611
10353
  # if you have an existing application that updates a bucket ACL using
9612
10354
  # the request body, you can continue to use that approach. For more
9613
- # information, see [Access Control List (ACL) Overview][1] in the
10355
+ # information, see [Access Control List (ACL) Overview][2] in the
9614
10356
  # *Amazon S3 Developer Guide*.
9615
10357
  #
9616
10358
  # **Access Permissions**
@@ -9622,7 +10364,7 @@ module Aws::S3
9622
10364
  # ACL has a predefined set of grantees and permissions. Specify the
9623
10365
  # canned ACL name as the value of `x-amz-ac`l. If you use this header,
9624
10366
  # you cannot use other access control-specific headers in your
9625
- # request. For more information, see [Canned ACL][2].
10367
+ # request. For more information, see [Canned ACL][3].
9626
10368
  #
9627
10369
  # * Specify access permissions explicitly with the `x-amz-grant-read`,
9628
10370
  # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
@@ -9632,7 +10374,7 @@ module Aws::S3
9632
10374
  # ACL-specific headers, you cannot use `x-amz-acl` header to set a
9633
10375
  # canned ACL. These parameters map to the set of permissions that
9634
10376
  # Amazon S3 supports in an ACL. For more information, see [Access
9635
- # Control List (ACL) Overview][1].
10377
+ # Control List (ACL) Overview][2].
9636
10378
  #
9637
10379
  # You specify each grantee as a type=value pair, where the type is one
9638
10380
  # of the following:
@@ -9665,7 +10407,7 @@ module Aws::S3
9665
10407
  # * South America (São Paulo)
9666
10408
  #
9667
10409
  # For a list of all the Amazon S3 supported Regions and endpoints,
9668
- # see [Regions and Endpoints][3] in the AWS General Reference.
10410
+ # see [Regions and Endpoints][4] in the AWS General Reference.
9669
10411
  #
9670
10412
  # </note>
9671
10413
  #
@@ -9725,7 +10467,7 @@ module Aws::S3
9725
10467
  # * South America (São Paulo)
9726
10468
  #
9727
10469
  # For a list of all the Amazon S3 supported Regions and endpoints, see
9728
- # [Regions and Endpoints][3] in the AWS General Reference.
10470
+ # [Regions and Endpoints][4] in the AWS General Reference.
9729
10471
  #
9730
10472
  # </note>
9731
10473
  #
@@ -9737,15 +10479,18 @@ module Aws::S3
9737
10479
  #
9738
10480
  # **Related Resources**
9739
10481
  #
9740
- # * CopyObject
10482
+ # * [CopyObject][5]
9741
10483
  #
9742
- # * GetObject
10484
+ # * [GetObject][6]
9743
10485
  #
9744
10486
  #
9745
10487
  #
9746
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
9747
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
9748
- # [3]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
10488
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions
10489
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
10490
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
10491
+ # [4]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
10492
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
10493
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
9749
10494
  #
9750
10495
  # @option params [String] :acl
9751
10496
  # The canned ACL to apply to the object. For more information, see
@@ -9819,6 +10564,11 @@ module Aws::S3
9819
10564
  # @option params [String] :version_id
9820
10565
  # VersionId used to reference a specific version of the object.
9821
10566
  #
10567
+ # @option params [String] :expected_bucket_owner
10568
+ # The account id of the expected bucket owner. If the bucket is owned by
10569
+ # a different account, the request will fail with an HTTP `403 (Access
10570
+ # Denied)` error.
10571
+ #
9822
10572
  # @return [Types::PutObjectAclOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9823
10573
  #
9824
10574
  # * {Types::PutObjectAclOutput#request_charged #request_charged} => String
@@ -9874,6 +10624,7 @@ module Aws::S3
9874
10624
  # key: "ObjectKey", # required
9875
10625
  # request_payer: "requester", # accepts requester
9876
10626
  # version_id: "ObjectVersionId",
10627
+ # expected_bucket_owner: "AccountId",
9877
10628
  # })
9878
10629
  #
9879
10630
  # @example Response structure
@@ -9941,6 +10692,11 @@ module Aws::S3
9941
10692
  # @option params [String] :content_md5
9942
10693
  # The MD5 hash for the request body.
9943
10694
  #
10695
+ # @option params [String] :expected_bucket_owner
10696
+ # The account id of the expected bucket owner. If the bucket is owned by
10697
+ # a different account, the request will fail with an HTTP `403 (Access
10698
+ # Denied)` error.
10699
+ #
9944
10700
  # @return [Types::PutObjectLegalHoldOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9945
10701
  #
9946
10702
  # * {Types::PutObjectLegalHoldOutput#request_charged #request_charged} => String
@@ -9956,6 +10712,7 @@ module Aws::S3
9956
10712
  # request_payer: "requester", # accepts requester
9957
10713
  # version_id: "ObjectVersionId",
9958
10714
  # content_md5: "ContentMD5",
10715
+ # expected_bucket_owner: "AccountId",
9959
10716
  # })
9960
10717
  #
9961
10718
  # @example Response structure
@@ -10015,6 +10772,11 @@ module Aws::S3
10015
10772
  # @option params [String] :content_md5
10016
10773
  # The MD5 hash for the request body.
10017
10774
  #
10775
+ # @option params [String] :expected_bucket_owner
10776
+ # The account id of the expected bucket owner. If the bucket is owned by
10777
+ # a different account, the request will fail with an HTTP `403 (Access
10778
+ # Denied)` error.
10779
+ #
10018
10780
  # @return [Types::PutObjectLockConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10019
10781
  #
10020
10782
  # * {Types::PutObjectLockConfigurationOutput#request_charged #request_charged} => String
@@ -10036,6 +10798,7 @@ module Aws::S3
10036
10798
  # request_payer: "requester", # accepts requester
10037
10799
  # token: "ObjectLockToken",
10038
10800
  # content_md5: "ContentMD5",
10801
+ # expected_bucket_owner: "AccountId",
10039
10802
  # })
10040
10803
  #
10041
10804
  # @example Response structure
@@ -10108,6 +10871,11 @@ module Aws::S3
10108
10871
  # @option params [String] :content_md5
10109
10872
  # The MD5 hash for the request body.
10110
10873
  #
10874
+ # @option params [String] :expected_bucket_owner
10875
+ # The account id of the expected bucket owner. If the bucket is owned by
10876
+ # a different account, the request will fail with an HTTP `403 (Access
10877
+ # Denied)` error.
10878
+ #
10111
10879
  # @return [Types::PutObjectRetentionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10112
10880
  #
10113
10881
  # * {Types::PutObjectRetentionOutput#request_charged #request_charged} => String
@@ -10125,6 +10893,7 @@ module Aws::S3
10125
10893
  # version_id: "ObjectVersionId",
10126
10894
  # bypass_governance_retention: false,
10127
10895
  # content_md5: "ContentMD5",
10896
+ # expected_bucket_owner: "AccountId",
10128
10897
  # })
10129
10898
  #
10130
10899
  # @example Response structure
@@ -10146,10 +10915,10 @@ module Aws::S3
10146
10915
  # A tag is a key-value pair. You can associate tags with an object by
10147
10916
  # sending a PUT request against the tagging subresource that is
10148
10917
  # associated with the object. You can retrieve tags by sending a GET
10149
- # request. For more information, see GetObjectTagging.
10918
+ # request. For more information, see [GetObjectTagging][1].
10150
10919
  #
10151
10920
  # For tagging-related restrictions related to characters and encodings,
10152
- # see [Tag Restrictions][1]. Note that Amazon S3 limits the maximum
10921
+ # see [Tag Restrictions][2]. Note that Amazon S3 limits the maximum
10153
10922
  # number of tags to 10 tags per object.
10154
10923
  #
10155
10924
  # To use this operation, you must have permission to perform the
@@ -10160,7 +10929,7 @@ module Aws::S3
10160
10929
  # You also need permission for the `s3:PutObjectVersionTagging` action.
10161
10930
  #
10162
10931
  # For information about the Amazon S3 object tagging feature, see
10163
- # [Object Tagging][2].
10932
+ # [Object Tagging][3].
10164
10933
  #
10165
10934
  # **Special Errors**
10166
10935
  #
@@ -10170,7 +10939,7 @@ module Aws::S3
10170
10939
  #
10171
10940
  # * *Cause: The tag provided was not a valid tag. This error can occur
10172
10941
  # if the tag did not pass input validation. For more information,
10173
- # see [Object Tagging][2].*
10942
+ # see [Object Tagging][3].*
10174
10943
  #
10175
10944
  # * ****
10176
10945
  #
@@ -10190,14 +10959,15 @@ module Aws::S3
10190
10959
  #
10191
10960
  # **Related Resources**
10192
10961
  #
10193
- # * GetObjectTagging
10962
+ # * [GetObjectTagging][1]
10194
10963
  #
10195
10964
  # ^
10196
10965
  #
10197
10966
  #
10198
10967
  #
10199
- # [1]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html
10200
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html
10968
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html
10969
+ # [2]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html
10970
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html
10201
10971
  #
10202
10972
  # @option params [required, String] :bucket
10203
10973
  # The bucket name containing the object.
@@ -10226,6 +10996,11 @@ module Aws::S3
10226
10996
  # @option params [required, Types::Tagging] :tagging
10227
10997
  # Container for the `TagSet` and `Tag` elements
10228
10998
  #
10999
+ # @option params [String] :expected_bucket_owner
11000
+ # The account id of the expected bucket owner. If the bucket is owned by
11001
+ # a different account, the request will fail with an HTTP `403 (Access
11002
+ # Denied)` error.
11003
+ #
10229
11004
  # @return [Types::PutObjectTaggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10230
11005
  #
10231
11006
  # * {Types::PutObjectTaggingOutput#version_id #version_id} => String
@@ -10272,6 +11047,7 @@ module Aws::S3
10272
11047
  # },
10273
11048
  # ],
10274
11049
  # },
11050
+ # expected_bucket_owner: "AccountId",
10275
11051
  # })
10276
11052
  #
10277
11053
  # @example Response structure
@@ -10305,19 +11081,22 @@ module Aws::S3
10305
11081
  #
10306
11082
  # **Related Resources**
10307
11083
  #
10308
- # * GetPublicAccessBlock
11084
+ # * [GetPublicAccessBlock][3]
10309
11085
  #
10310
- # * DeletePublicAccessBlock
11086
+ # * [DeletePublicAccessBlock][4]
10311
11087
  #
10312
- # * GetBucketPolicyStatus
11088
+ # * [GetBucketPolicyStatus][5]
10313
11089
  #
10314
- # * [Using Amazon S3 Block Public Access][3]
11090
+ # * [Using Amazon S3 Block Public Access][6]
10315
11091
  #
10316
11092
  #
10317
11093
  #
10318
11094
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
10319
11095
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status
10320
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html
11096
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html
11097
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html
11098
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html
11099
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html
10321
11100
  #
10322
11101
  # @option params [required, String] :bucket
10323
11102
  # The name of the Amazon S3 bucket whose `PublicAccessBlock`
@@ -10337,6 +11116,11 @@ module Aws::S3
10337
11116
  #
10338
11117
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status
10339
11118
  #
11119
+ # @option params [String] :expected_bucket_owner
11120
+ # The account id of the expected bucket owner. If the bucket is owned by
11121
+ # a different account, the request will fail with an HTTP `403 (Access
11122
+ # Denied)` error.
11123
+ #
10340
11124
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10341
11125
  #
10342
11126
  # @example Request syntax with placeholder values
@@ -10350,6 +11134,7 @@ module Aws::S3
10350
11134
  # block_public_policy: false,
10351
11135
  # restrict_public_buckets: false,
10352
11136
  # },
11137
+ # expected_bucket_owner: "AccountId",
10353
11138
  # })
10354
11139
  #
10355
11140
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutPublicAccessBlock AWS API Documentation
@@ -10400,12 +11185,12 @@ module Aws::S3
10400
11185
  # For more information about the `S3` structure in the request body,
10401
11186
  # see the following:
10402
11187
  #
10403
- # * PutObject
11188
+ # * [PutObject][4]
10404
11189
  #
10405
- # * [Managing Access with ACLs][4] in the *Amazon Simple Storage
11190
+ # * [Managing Access with ACLs][5] in the *Amazon Simple Storage
10406
11191
  # Service Developer Guide*
10407
11192
  #
10408
- # * [Protecting Data Using Server-Side Encryption][5] in the *Amazon
11193
+ # * [Protecting Data Using Server-Side Encryption][6] in the *Amazon
10409
11194
  # Simple Storage Service Developer Guide*
10410
11195
  #
10411
11196
  # * Define the SQL expression for the `SELECT` type of restoration for
@@ -10431,7 +11216,7 @@ module Aws::S3
10431
11216
  # `SELECT s.Id, s.FirstName, s.SSN FROM S3Object s`
10432
11217
  #
10433
11218
  # For more information about using SQL with S3 Glacier Select restore,
10434
- # see [SQL Reference for Amazon S3 Select and S3 Glacier Select][6] in
11219
+ # see [SQL Reference for Amazon S3 Select and S3 Glacier Select][7] in
10435
11220
  # the *Amazon Simple Storage Service Developer Guide*.
10436
11221
  #
10437
11222
  # When making a select request, you can also do the following:
@@ -10506,7 +11291,7 @@ module Aws::S3
10506
11291
  #
10507
11292
  # For more information about archive retrieval options and provisioned
10508
11293
  # capacity for `Expedited` data access, see [Restoring Archived
10509
- # Objects][7] in the *Amazon Simple Storage Service Developer Guide*.
11294
+ # Objects][8] in the *Amazon Simple Storage Service Developer Guide*.
10510
11295
  #
10511
11296
  # You can use Amazon S3 restore speed upgrade to change the restore
10512
11297
  # speed to a faster speed while it is in progress. You upgrade the speed
@@ -10516,14 +11301,14 @@ module Aws::S3
10516
11301
  # faster than the tier that the in-progress restore is using. You must
10517
11302
  # not change any other parameters, such as the `Days` request element.
10518
11303
  # For more information, see [ Upgrading the Speed of an In-Progress
10519
- # Restore][8] in the *Amazon Simple Storage Service Developer Guide*.
11304
+ # Restore][9] in the *Amazon Simple Storage Service Developer Guide*.
10520
11305
  #
10521
11306
  # To get the status of object restoration, you can send a `HEAD`
10522
11307
  # request. Operations return the `x-amz-restore` header, which provides
10523
11308
  # information about the restoration status, in the response. You can use
10524
11309
  # Amazon S3 event notifications to notify you when a restore is
10525
11310
  # initiated or completed. For more information, see [Configuring Amazon
10526
- # S3 Event Notifications][9] in the *Amazon Simple Storage Service
11311
+ # S3 Event Notifications][10] in the *Amazon Simple Storage Service
10527
11312
  # Developer Guide*.
10528
11313
  #
10529
11314
  # After restoring an archived object, you can update the restoration
@@ -10538,9 +11323,9 @@ module Aws::S3
10538
11323
  # that you specify in a restore request. For example, if you restore an
10539
11324
  # object copy for 10 days, but the object is scheduled to expire in 3
10540
11325
  # days, Amazon S3 deletes the object in 3 days. For more information
10541
- # about lifecycle configuration, see PutBucketLifecycleConfiguration and
10542
- # [Object Lifecycle Management][10] in *Amazon Simple Storage Service
10543
- # Developer Guide*.
11326
+ # about lifecycle configuration, see
11327
+ # [PutBucketLifecycleConfiguration][11] and [Object Lifecycle
11328
+ # Management][12] in *Amazon Simple Storage Service Developer Guide*.
10544
11329
  #
10545
11330
  # **Responses**
10546
11331
  #
@@ -10582,11 +11367,11 @@ module Aws::S3
10582
11367
  #
10583
11368
  # **Related Resources**
10584
11369
  #
10585
- # * PutBucketLifecycleConfiguration
11370
+ # * [PutBucketLifecycleConfiguration][11]
10586
11371
  #
10587
- # * GetBucketNotificationConfiguration
11372
+ # * [GetBucketNotificationConfiguration][13]
10588
11373
  #
10589
- # * [SQL Reference for Amazon S3 Select and S3 Glacier Select ][6] in
11374
+ # * [SQL Reference for Amazon S3 Select and S3 Glacier Select ][7] in
10590
11375
  # the *Amazon Simple Storage Service Developer Guide*
10591
11376
  #
10592
11377
  #
@@ -10594,13 +11379,16 @@ module Aws::S3
10594
11379
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
10595
11380
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
10596
11381
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html
10597
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
10598
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
10599
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html
10600
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
10601
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html
10602
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
10603
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
11382
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
11383
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
11384
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
11385
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html
11386
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
11387
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html
11388
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
11389
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
11390
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
11391
+ # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html
10604
11392
  #
10605
11393
  # @option params [required, String] :bucket
10606
11394
  # The bucket name or containing the object to restore.
@@ -10637,6 +11425,11 @@ module Aws::S3
10637
11425
  #
10638
11426
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
10639
11427
  #
11428
+ # @option params [String] :expected_bucket_owner
11429
+ # The account id of the expected bucket owner. If the bucket is owned by
11430
+ # a different account, the request will fail with an HTTP `403 (Access
11431
+ # Denied)` error.
11432
+ #
10640
11433
  # @return [Types::RestoreObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10641
11434
  #
10642
11435
  # * {Types::RestoreObjectOutput#request_charged #request_charged} => String
@@ -10750,6 +11543,7 @@ module Aws::S3
10750
11543
  # },
10751
11544
  # },
10752
11545
  # request_payer: "requester", # accepts requester
11546
+ # expected_bucket_owner: "AccountId",
10753
11547
  # })
10754
11548
  #
10755
11549
  # @example Response structure
@@ -10815,16 +11609,17 @@ module Aws::S3
10815
11609
  #
10816
11610
  # For objects that are encrypted with customer-provided encryption
10817
11611
  # keys (SSE-C), you must use HTTPS, and you must use the headers that
10818
- # are documented in the GetObject. For more information about SSE-C,
10819
- # see [Server-Side Encryption (Using Customer-Provided Encryption
10820
- # Keys)][4] in the *Amazon Simple Storage Service Developer Guide*.
11612
+ # are documented in the [GetObject][4]. For more information about
11613
+ # SSE-C, see [Server-Side Encryption (Using Customer-Provided
11614
+ # Encryption Keys)][5] in the *Amazon Simple Storage Service Developer
11615
+ # Guide*.
10821
11616
  #
10822
11617
  # For objects that are encrypted with Amazon S3 managed encryption
10823
11618
  # keys (SSE-S3) and customer master keys (CMKs) stored in AWS Key
10824
11619
  # Management Service (SSE-KMS), server-side encryption is handled
10825
11620
  # transparently, so you don't need to specify anything. For more
10826
11621
  # information about server-side encryption, including SSE-S3 and
10827
- # SSE-KMS, see [Protecting Data Using Server-Side Encryption][5] in
11622
+ # SSE-KMS, see [Protecting Data Using Server-Side Encryption][6] in
10828
11623
  # the *Amazon Simple Storage Service Developer Guide*.
10829
11624
  #
10830
11625
  # **Working with the Response Body**
@@ -10832,49 +11627,55 @@ module Aws::S3
10832
11627
  # Given the response size is unknown, Amazon S3 Select streams the
10833
11628
  # response as a series of messages and includes a `Transfer-Encoding`
10834
11629
  # header with `chunked` as its value in the response. For more
10835
- # information, see RESTSelectObjectAppendix .
11630
+ # information, see [Appendix: SelectObjectContent Response][7] .
10836
11631
  #
10837
11632
  #
10838
11633
  #
10839
11634
  # **GetObject Support**
10840
11635
  #
10841
11636
  # The `SelectObjectContent` operation does not support the following
10842
- # `GetObject` functionality. For more information, see GetObject.
11637
+ # `GetObject` functionality. For more information, see [GetObject][4].
10843
11638
  #
10844
11639
  # * `Range`\: Although you can specify a scan range for an Amazon S3
10845
- # Select request (see SelectObjectContentRequest$ScanRange in the
10846
- # request parameters), you cannot specify the range of bytes of an
11640
+ # Select request (see [SelectObjectContentRequest - ScanRange][8] in
11641
+ # the request parameters), you cannot specify the range of bytes of an
10847
11642
  # object to return.
10848
11643
  #
10849
11644
  # * GLACIER, DEEP\_ARCHIVE and REDUCED\_REDUNDANCY storage classes: You
10850
11645
  # cannot specify the GLACIER, DEEP\_ARCHIVE, or `REDUCED_REDUNDANCY`
10851
11646
  # storage classes. For more information, about storage classes see
10852
- # [Storage Classes][6] in the *Amazon Simple Storage Service Developer
11647
+ # [Storage Classes][9] in the *Amazon Simple Storage Service Developer
10853
11648
  # Guide*.
10854
11649
  #
10855
11650
  #
10856
11651
  #
10857
11652
  # **Special Errors**
10858
11653
  #
10859
- # For a list of special errors for this operation, see
10860
- # SelectObjectContentErrorCodeList
11654
+ # For a list of special errors for this operation, see [List of SELECT
11655
+ # Object Content Error Codes][10]
10861
11656
  #
10862
11657
  # **Related Resources**
10863
11658
  #
10864
- # * GetObject
11659
+ # * [GetObject][4]
10865
11660
  #
10866
- # * GetBucketLifecycleConfiguration
11661
+ # * [GetBucketLifecycleConfiguration][11]
10867
11662
  #
10868
- # * PutBucketLifecycleConfiguration
11663
+ # * [PutBucketLifecycleConfiguration][12]
10869
11664
  #
10870
11665
  #
10871
11666
  #
10872
11667
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html
10873
11668
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html
10874
11669
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
10875
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
10876
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
10877
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro
11670
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
11671
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
11672
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
11673
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
11674
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
11675
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro
11676
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
11677
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
11678
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
10878
11679
  #
10879
11680
  # @option params [required, String] :bucket
10880
11681
  # The S3 bucket.
@@ -10942,6 +11743,11 @@ module Aws::S3
10942
11743
  # * `<scanrange><end>50</end></scanrange>` - process only the records
10943
11744
  # within the last 50 bytes of the file.
10944
11745
  #
11746
+ # @option params [String] :expected_bucket_owner
11747
+ # The account id of the expected bucket owner. If the bucket is owned by
11748
+ # a different account, the request will fail with an HTTP `403 (Access
11749
+ # Denied)` error.
11750
+ #
10945
11751
  # @return [Types::SelectObjectContentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10946
11752
  #
10947
11753
  # * {Types::SelectObjectContentOutput#payload #payload} => Types::SelectObjectContentEventStream
@@ -11112,6 +11918,7 @@ module Aws::S3
11112
11918
  # start: 1,
11113
11919
  # end: 1,
11114
11920
  # },
11921
+ # expected_bucket_owner: "AccountId",
11115
11922
  # })
11116
11923
  #
11117
11924
  # @example Response structure
@@ -11170,11 +11977,11 @@ module Aws::S3
11170
11977
  # <note markdown="1"> In this operation, you provide part data in your request. However, you
11171
11978
  # have an option to specify your existing Amazon S3 object as a data
11172
11979
  # source for the part you are uploading. To upload a part from an
11173
- # existing object, you use the UploadPartCopy operation.
11980
+ # existing object, you use the [UploadPartCopy][1] operation.
11174
11981
  #
11175
11982
  # </note>
11176
11983
  #
11177
- # You must initiate a multipart upload (see CreateMultipartUpload)
11984
+ # You must initiate a multipart upload (see [CreateMultipartUpload][2])
11178
11985
  # before you can upload any part. In response to your initiate request,
11179
11986
  # Amazon S3 returns an upload ID, a unique identifier, that you must
11180
11987
  # include in your upload part request.
@@ -11199,11 +12006,11 @@ module Aws::S3
11199
12006
  # parts storage and stops charging you for the parts storage.
11200
12007
  #
11201
12008
  # For more information on multipart uploads, go to [Multipart Upload
11202
- # Overview][1] in the <i>Amazon Simple Storage Service Developer Guide
12009
+ # Overview][3] in the <i>Amazon Simple Storage Service Developer Guide
11203
12010
  # </i>.
11204
12011
  #
11205
12012
  # For information on the permissions required to use the multipart
11206
- # upload API, go to [Multipart Upload API and Permissions][2] in the
12013
+ # upload API, go to [Multipart Upload API and Permissions][4] in the
11207
12014
  # *Amazon Simple Storage Service Developer Guide*.
11208
12015
  #
11209
12016
  # You can optionally request server-side encryption where Amazon S3
@@ -11213,26 +12020,27 @@ module Aws::S3
11213
12020
  # encryption keys. If you choose to provide your own encryption key, the
11214
12021
  # request headers you provide in the request must match the headers you
11215
12022
  # used in the request to initiate the upload by using
11216
- # CreateMultipartUpload. For more information, go to [Using Server-Side
11217
- # Encryption][3] in the *Amazon Simple Storage Service Developer Guide*.
12023
+ # [CreateMultipartUpload][2]. For more information, go to [Using
12024
+ # Server-Side Encryption][5] in the *Amazon Simple Storage Service
12025
+ # Developer Guide*.
11218
12026
  #
11219
12027
  # Server-side encryption is supported by the S3 Multipart Upload
11220
12028
  # actions. Unless you are using a customer-provided encryption key, you
11221
12029
  # don't need to specify the encryption parameters in each UploadPart
11222
12030
  # request. Instead, you only need to specify the server-side encryption
11223
12031
  # parameters in the initial Initiate Multipart request. For more
11224
- # information, see CreateMultipartUpload.
12032
+ # information, see [CreateMultipartUpload][2].
11225
12033
  #
11226
12034
  # If you requested server-side encryption using a customer-provided
11227
12035
  # encryption key in your initiate multipart upload request, you must
11228
12036
  # provide identical encryption information in each part upload using the
11229
12037
  # following headers.
11230
12038
  #
11231
- # * x-amz-server-side​-encryption​-customer-algorithm
12039
+ # * x-amz-server-side-encryption-customer-algorithm
11232
12040
  #
11233
- # * x-amz-server-side​-encryption​-customer-key
12041
+ # * x-amz-server-side-encryption-customer-key
11234
12042
  #
11235
- # * x-amz-server-side​-encryption​-customer-key-MD5
12043
+ # * x-amz-server-side-encryption-customer-key-MD5
11236
12044
  #
11237
12045
  # **Special Errors**
11238
12046
  #
@@ -11250,21 +12058,27 @@ module Aws::S3
11250
12058
  #
11251
12059
  # **Related Resources**
11252
12060
  #
11253
- # * CreateMultipartUpload
12061
+ # * [CreateMultipartUpload][2]
11254
12062
  #
11255
- # * CompleteMultipartUpload
12063
+ # * [CompleteMultipartUpload][6]
11256
12064
  #
11257
- # * AbortMultipartUpload
12065
+ # * [AbortMultipartUpload][7]
11258
12066
  #
11259
- # * ListParts
12067
+ # * [ListParts][8]
11260
12068
  #
11261
- # * ListMultipartUploads
12069
+ # * [ListMultipartUploads][9]
11262
12070
  #
11263
12071
  #
11264
12072
  #
11265
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html
11266
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
11267
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
12073
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
12074
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
12075
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html
12076
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
12077
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
12078
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
12079
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
12080
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
12081
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
11268
12082
  #
11269
12083
  # @option params [String, StringIO, File] :body
11270
12084
  # Object data.
@@ -11301,8 +12115,8 @@ module Aws::S3
11301
12115
  # encrypting data. This value is used to store the object and then it is
11302
12116
  # discarded; Amazon S3 does not store the encryption key. The key must
11303
12117
  # be appropriate for use with the algorithm specified in the
11304
- # `x-amz-server-side​-encryption​-customer-algorithm header`. This must
11305
- # be the same encryption key specified in the initiate multipart upload
12118
+ # `x-amz-server-side-encryption-customer-algorithm header`. This must be
12119
+ # the same encryption key specified in the initiate multipart upload
11306
12120
  # request.
11307
12121
  #
11308
12122
  # @option params [String] :sse_customer_key_md5
@@ -11321,6 +12135,11 @@ module Aws::S3
11321
12135
  #
11322
12136
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
11323
12137
  #
12138
+ # @option params [String] :expected_bucket_owner
12139
+ # The account id of the expected bucket owner. If the bucket is owned by
12140
+ # a different account, the request will fail with an HTTP `403 (Access
12141
+ # Denied)` error.
12142
+ #
11324
12143
  # @return [Types::UploadPartOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11325
12144
  #
11326
12145
  # * {Types::UploadPartOutput#server_side_encryption #server_side_encryption} => String
@@ -11363,6 +12182,7 @@ module Aws::S3
11363
12182
  # sse_customer_key: "SSECustomerKey",
11364
12183
  # sse_customer_key_md5: "SSECustomerKeyMD5",
11365
12184
  # request_payer: "requester", # accepts requester
12185
+ # expected_bucket_owner: "AccountId",
11366
12186
  # })
11367
12187
  #
11368
12188
  # @example Response structure
@@ -11393,7 +12213,7 @@ module Aws::S3
11393
12213
  # in the *Amazon Simple Storage Service Developer Guide*.
11394
12214
  #
11395
12215
  # <note markdown="1"> Instead of using an existing object as part data, you might use the
11396
- # UploadPart operation and provide data in your request.
12216
+ # [UploadPart][2] operation and provide data in your request.
11397
12217
  #
11398
12218
  # </note>
11399
12219
  #
@@ -11406,20 +12226,20 @@ module Aws::S3
11406
12226
  # the following:
11407
12227
  #
11408
12228
  # * For conceptual information about multipart uploads, see [Uploading
11409
- # Objects Using Multipart Upload][2] in the *Amazon Simple Storage
12229
+ # Objects Using Multipart Upload][3] in the *Amazon Simple Storage
11410
12230
  # Service Developer Guide*.
11411
12231
  #
11412
12232
  # * For information about permissions required to use the multipart
11413
- # upload API, see [Multipart Upload API and Permissions][3] in the
12233
+ # upload API, see [Multipart Upload API and Permissions][4] in the
11414
12234
  # *Amazon Simple Storage Service Developer Guide*.
11415
12235
  #
11416
12236
  # * For information about copying objects using a single atomic
11417
- # operation vs. the multipart upload, see [Operations on Objects][4]
12237
+ # operation vs. the multipart upload, see [Operations on Objects][5]
11418
12238
  # in the *Amazon Simple Storage Service Developer Guide*.
11419
12239
  #
11420
12240
  # * For information about using server-side encryption with
11421
12241
  # customer-provided encryption keys with the UploadPartCopy operation,
11422
- # see CopyObject and UploadPart.
12242
+ # see [CopyObject][6] and [UploadPart][2].
11423
12243
  #
11424
12244
  # Note the following additional considerations about the request headers
11425
12245
  # `x-amz-copy-source-if-match`, `x-amz-copy-source-if-none-match`,
@@ -11492,31 +12312,71 @@ module Aws::S3
11492
12312
  #
11493
12313
  # **Related Resources**
11494
12314
  #
11495
- # * CreateMultipartUpload
12315
+ # * [CreateMultipartUpload][7]
11496
12316
  #
11497
- # * UploadPart
12317
+ # * [UploadPart][2]
11498
12318
  #
11499
- # * CompleteMultipartUpload
12319
+ # * [CompleteMultipartUpload][8]
11500
12320
  #
11501
- # * AbortMultipartUpload
12321
+ # * [AbortMultipartUpload][9]
11502
12322
  #
11503
- # * ListParts
12323
+ # * [ListParts][10]
11504
12324
  #
11505
- # * ListMultipartUploads
12325
+ # * [ListMultipartUploads][11]
11506
12326
  #
11507
12327
  #
11508
12328
  #
11509
12329
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/qfacts.html
11510
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
11511
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
11512
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html
12330
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
12331
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
12332
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
12333
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html
12334
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
12335
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
12336
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
12337
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
12338
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
12339
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
11513
12340
  #
11514
12341
  # @option params [required, String] :bucket
11515
12342
  # The bucket name.
11516
12343
  #
11517
12344
  # @option params [required, String] :copy_source
11518
- # The name of the source bucket and key name of the source object,
11519
- # separated by a slash (/). Must be URL-encoded.
12345
+ # Specifies the source object for the copy operation. You specify the
12346
+ # value in one of two formats, depending on whether you want to access
12347
+ # the source object through an [access point][1]\:
12348
+ #
12349
+ # * For objects not accessed through an access point, specify the name
12350
+ # of the source bucket and key of the source object, separated by a
12351
+ # slash (/). For example, to copy the object `reports/january.pdf`
12352
+ # from the bucket `awsexamplebucket`, use
12353
+ # `awsexamplebucket/reports/january.pdf`. The value must be URL
12354
+ # encoded.
12355
+ #
12356
+ # * For objects accessed through access points, specify the Amazon
12357
+ # Resource Name (ARN) of the object as accessed through the access
12358
+ # point, in the format
12359
+ # `arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>`.
12360
+ # For example, to copy the object `reports/january.pdf` through the
12361
+ # access point `my-access-point` owned by account `123456789012` in
12362
+ # Region `us-west-2`, use the URL encoding of
12363
+ # `arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf`.
12364
+ # The value must be URL encoded.
12365
+ #
12366
+ # <note markdown="1"> Amazon S3 supports copy operations using access points only when the
12367
+ # source and destination buckets are in the same AWS Region.
12368
+ #
12369
+ # </note>
12370
+ #
12371
+ # To copy a specific version of an object, append
12372
+ # `?versionId=<version-id>` to the value (for example,
12373
+ # `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
12374
+ # If you don't specify a version ID, Amazon S3 copies the latest
12375
+ # version of the source object.
12376
+ #
12377
+ #
12378
+ #
12379
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html
11520
12380
  #
11521
12381
  # @option params [String] :copy_source_if_match
11522
12382
  # Copies the object if its entity tag (ETag) matches the specified tag.
@@ -11558,8 +12418,8 @@ module Aws::S3
11558
12418
  # encrypting data. This value is used to store the object and then it is
11559
12419
  # discarded; Amazon S3 does not store the encryption key. The key must
11560
12420
  # be appropriate for use with the algorithm specified in the
11561
- # `x-amz-server-side​-encryption​-customer-algorithm` header. This must
11562
- # be the same encryption key specified in the initiate multipart upload
12421
+ # `x-amz-server-side-encryption-customer-algorithm` header. This must be
12422
+ # the same encryption key specified in the initiate multipart upload
11563
12423
  # request.
11564
12424
  #
11565
12425
  # @option params [String] :sse_customer_key_md5
@@ -11592,6 +12452,16 @@ module Aws::S3
11592
12452
  #
11593
12453
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
11594
12454
  #
12455
+ # @option params [String] :expected_bucket_owner
12456
+ # The account id of the expected destination bucket owner. If the
12457
+ # destination bucket is owned by a different account, the request will
12458
+ # fail with an HTTP `403 (Access Denied)` error.
12459
+ #
12460
+ # @option params [String] :expected_source_bucket_owner
12461
+ # The account id of the expected source bucket owner. If the source
12462
+ # bucket is owned by a different account, the request will fail with an
12463
+ # HTTP `403 (Access Denied)` error.
12464
+ #
11595
12465
  # @return [Types::UploadPartCopyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11596
12466
  #
11597
12467
  # * {Types::UploadPartCopyOutput#copy_source_version_id #copy_source_version_id} => String
@@ -11665,6 +12535,8 @@ module Aws::S3
11665
12535
  # copy_source_sse_customer_key: "CopySourceSSECustomerKey",
11666
12536
  # copy_source_sse_customer_key_md5: "CopySourceSSECustomerKeyMD5",
11667
12537
  # request_payer: "requester", # accepts requester
12538
+ # expected_bucket_owner: "AccountId",
12539
+ # expected_source_bucket_owner: "AccountId",
11668
12540
  # })
11669
12541
  #
11670
12542
  # @example Response structure
@@ -11700,7 +12572,7 @@ module Aws::S3
11700
12572
  params: params,
11701
12573
  config: config)
11702
12574
  context[:gem_name] = 'aws-sdk-s3'
11703
- context[:gem_version] = '1.79.1'
12575
+ context[:gem_version] = '1.80.0'
11704
12576
  Seahorse::Client::Request.new(handlers, context)
11705
12577
  end
11706
12578