aws-sdk-s3 1.166.0 → 1.169.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -949,9 +949,9 @@ module Aws::S3
949
949
  # @option params [String] :checksum_crc32
950
950
  # This header can be used as a data integrity check to verify that the
951
951
  # data received is the same data that was originally sent. This header
952
- # specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
953
- # more information, see [Checking object integrity][1] in the *Amazon S3
954
- # User Guide*.
952
+ # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
953
+ # For more information, see [Checking object integrity][1] in the
954
+ # *Amazon S3 User Guide*.
955
955
  #
956
956
  #
957
957
  #
@@ -960,7 +960,7 @@ module Aws::S3
960
960
  # @option params [String] :checksum_crc32c
961
961
  # This header can be used as a data integrity check to verify that the
962
962
  # data received is the same data that was originally sent. This header
963
- # specifies the base64-encoded, 32-bit CRC32C checksum of the object.
963
+ # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
964
964
  # For more information, see [Checking object integrity][1] in the
965
965
  # *Amazon S3 User Guide*.
966
966
  #
@@ -1779,17 +1779,17 @@ module Aws::S3
1779
1779
  # * To encrypt new object copies to a directory bucket with SSE-KMS, we
1780
1780
  # recommend you specify SSE-KMS as the directory bucket's default
1781
1781
  # encryption configuration with a KMS key (specifically, a [customer
1782
- # managed key][4]). [Amazon Web Services managed key][5] (`aws/s3`)
1783
- # isn't supported. Your SSE-KMS configuration can only support 1
1784
- # [customer managed key][4] per directory bucket for the lifetime of
1785
- # the bucket. After you specify a customer managed key for SSE-KMS,
1786
- # you can't override the customer managed key for the bucket's
1787
- # SSE-KMS configuration. Then, when you perform a `CopyObject`
1788
- # operation and want to specify server-side encryption settings for
1789
- # new object copies with SSE-KMS in the encryption-related request
1790
- # headers, you must ensure the encryption key is the same customer
1791
- # managed key that you specified for the directory bucket's default
1792
- # encryption configuration.
1782
+ # managed key][4]). The [Amazon Web Services managed key][5]
1783
+ # (`aws/s3`) isn't supported. Your SSE-KMS configuration can only
1784
+ # support 1 [customer managed key][4] per directory bucket for the
1785
+ # lifetime of the bucket. After you specify a customer managed key for
1786
+ # SSE-KMS, you can't override the customer managed key for the
1787
+ # bucket's SSE-KMS configuration. Then, when you perform a
1788
+ # `CopyObject` operation and want to specify server-side encryption
1789
+ # settings for new object copies with SSE-KMS in the
1790
+ # encryption-related request headers, you must ensure the encryption
1791
+ # key is the same customer managed key that you specified for the
1792
+ # directory bucket's default encryption configuration.
1793
1793
  #
1794
1794
  #
1795
1795
  #
@@ -1903,14 +1903,19 @@ module Aws::S3
1903
1903
  # Guide*.
1904
1904
  #
1905
1905
  # **Directory buckets** - If you specify `x-amz-server-side-encryption`
1906
- # with `aws:kms`, you must specify the `
1907
- # x-amz-server-side-encryption-aws-kms-key-id` header with the ID (Key
1908
- # ID or Key ARN) of the KMS symmetric encryption customer managed key to
1909
- # use. Otherwise, you get an HTTP `400 Bad Request` error. Only use the
1910
- # key ID or key ARN. The key alias format of the KMS key isn't
1911
- # supported. Your SSE-KMS configuration can only support 1 [customer
1912
- # managed key][2] per directory bucket for the lifetime of the bucket.
1913
- # [Amazon Web Services managed key][3] (`aws/s3`) isn't supported.
1906
+ # with `aws:kms`, the ` x-amz-server-side-encryption-aws-kms-key-id`
1907
+ # header is implicitly assigned the ID of the KMS symmetric encryption
1908
+ # customer managed key that's configured for your directory bucket's
1909
+ # default encryption setting. If you want to specify the `
1910
+ # x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you
1911
+ # can only specify it with the ID (Key ID or Key ARN) of the KMS
1912
+ # customer managed key that's configured for your directory bucket's
1913
+ # default encryption setting. Otherwise, you get an HTTP `400 Bad
1914
+ # Request` error. Only use the key ID or key ARN. The key alias format
1915
+ # of the KMS key isn't supported. Your SSE-KMS configuration can only
1916
+ # support 1 [customer managed key][2] per directory bucket for the
1917
+ # lifetime of the bucket. The [Amazon Web Services managed key][3]
1918
+ # (`aws/s3`) isn't supported.
1914
1919
  #
1915
1920
  #
1916
1921
  #
@@ -3272,14 +3277,19 @@ module Aws::S3
3272
3277
  # Amazon Web Services managed key (`aws/s3`) to protect the data.
3273
3278
  #
3274
3279
  # **Directory buckets** - If you specify `x-amz-server-side-encryption`
3275
- # with `aws:kms`, you must specify the `
3276
- # x-amz-server-side-encryption-aws-kms-key-id` header with the ID (Key
3277
- # ID or Key ARN) of the KMS symmetric encryption customer managed key to
3278
- # use. Otherwise, you get an HTTP `400 Bad Request` error. Only use the
3279
- # key ID or key ARN. The key alias format of the KMS key isn't
3280
- # supported. Your SSE-KMS configuration can only support 1 [customer
3281
- # managed key][1] per directory bucket for the lifetime of the bucket.
3282
- # [Amazon Web Services managed key][2] (`aws/s3`) isn't supported.
3280
+ # with `aws:kms`, the ` x-amz-server-side-encryption-aws-kms-key-id`
3281
+ # header is implicitly assigned the ID of the KMS symmetric encryption
3282
+ # customer managed key that's configured for your directory bucket's
3283
+ # default encryption setting. If you want to specify the `
3284
+ # x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you
3285
+ # can only specify it with the ID (Key ID or Key ARN) of the KMS
3286
+ # customer managed key that's configured for your directory bucket's
3287
+ # default encryption setting. Otherwise, you get an HTTP `400 Bad
3288
+ # Request` error. Only use the key ID or key ARN. The key alias format
3289
+ # of the KMS key isn't supported. Your SSE-KMS configuration can only
3290
+ # support 1 [customer managed key][1] per directory bucket for the
3291
+ # lifetime of the bucket. The [Amazon Web Services managed key][2]
3292
+ # (`aws/s3`) isn't supported.
3283
3293
  #
3284
3294
  #
3285
3295
  #
@@ -3587,7 +3597,7 @@ module Aws::S3
3587
3597
  # with SSE-KMS and S3 Bucket Keys during the session.
3588
3598
  #
3589
3599
  # <note markdown="1"> Only 1 [customer managed key][14] is supported per directory bucket
3590
- # for the lifetime of the bucket. [Amazon Web Services managed
3600
+ # for the lifetime of the bucket. The [Amazon Web Services managed
3591
3601
  # key][15] (`aws/s3`) isn't supported. After you specify SSE-KMS as
3592
3602
  # your bucket's default encryption configuration with a customer
3593
3603
  # managed key, you can't change the customer managed key for the
@@ -3679,8 +3689,8 @@ module Aws::S3
3679
3689
  # the Key ID.
3680
3690
  #
3681
3691
  # Your SSE-KMS configuration can only support 1 [customer managed
3682
- # key][1] per directory bucket for the lifetime of the bucket. [Amazon
3683
- # Web Services managed key][2] (`aws/s3`) isn't supported.
3692
+ # key][1] per directory bucket for the lifetime of the bucket. The
3693
+ # [Amazon Web Services managed key][2] (`aws/s3`) isn't supported.
3684
3694
  #
3685
3695
  #
3686
3696
  #
@@ -4744,67 +4754,33 @@ module Aws::S3
4744
4754
  end
4745
4755
 
4746
4756
  # Removes an object from a bucket. The behavior depends on the bucket's
4747
- # versioning state:
4748
- #
4749
- # * If bucket versioning is not enabled, the operation permanently
4750
- # deletes the object.
4751
- #
4752
- # * If bucket versioning is enabled, the operation inserts a delete
4753
- # marker, which becomes the current version of the object. To
4754
- # permanently delete an object in a versioned bucket, you must include
4755
- # the object’s `versionId` in the request. For more information about
4756
- # versioning-enabled buckets, see [Deleting object versions from a
4757
- # versioning-enabled bucket][1].
4758
- #
4759
- # * If bucket versioning is suspended, the operation removes the object
4760
- # that has a null `versionId`, if there is one, and inserts a delete
4761
- # marker that becomes the current version of the object. If there
4762
- # isn't an object with a null `versionId`, and all versions of the
4763
- # object have a `versionId`, Amazon S3 does not remove the object and
4764
- # only inserts a delete marker. To permanently delete an object that
4765
- # has a `versionId`, you must include the object’s `versionId` in the
4766
- # request. For more information about versioning-suspended buckets,
4767
- # see [Deleting objects from versioning-suspended buckets][2].
4768
- #
4769
- # <note markdown="1"> * **Directory buckets** - S3 Versioning isn't enabled and supported
4770
- # for directory buckets. For this API operation, only the `null` value
4771
- # of the version ID is supported by directory buckets. You can only
4772
- # specify `null` to the `versionId` query parameter in the request.
4773
- #
4774
- # * **Directory buckets** - For directory buckets, you must make
4775
- # requests for this API operation to the Zonal endpoint. These
4776
- # endpoints support virtual-hosted-style requests in the format
4777
- # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name
4778
- # `. Path-style requests are not supported. For more information, see
4779
- # [Regional and Zonal endpoints][3] in the *Amazon S3 User Guide*.
4780
- #
4781
- # </note>
4757
+ # versioning state. For more information, see [Best practices to
4758
+ # consider before deleting an object][1].
4782
4759
  #
4783
4760
  # To remove a specific version, you must use the `versionId` query
4784
4761
  # parameter. Using this query parameter permanently deletes the version.
4785
4762
  # If the object deleted is a delete marker, Amazon S3 sets the response
4786
- # header `x-amz-delete-marker` to true.
4787
- #
4788
- # If the object you want to delete is in a bucket where the bucket
4789
- # versioning configuration is MFA Delete enabled, you must include the
4790
- # `x-amz-mfa` request header in the DELETE `versionId` request. Requests
4791
- # that include `x-amz-mfa` must use HTTPS. For more information about
4792
- # MFA Delete, see [Using MFA Delete][4] in the *Amazon S3 User Guide*.
4793
- # To see sample requests that use versioning, see [Sample Request][5].
4794
- #
4795
- # <note markdown="1"> **Directory buckets** - MFA delete is not supported by directory
4796
- # buckets.
4763
+ # header `x-amz-delete-marker` to true. If the object you want to delete
4764
+ # is in a bucket where the bucket versioning configuration is MFA delete
4765
+ # enabled, you must include the `x-amz-mfa` request header in the DELETE
4766
+ # `versionId` request. Requests that include `x-amz-mfa` must use HTTPS.
4767
+ # For more information about MFA delete and to see example requests, see
4768
+ # [Using MFA delete][2] and [Sample request][3] in the *Amazon S3 User
4769
+ # Guide*.
4797
4770
  #
4798
- # </note>
4771
+ # <note markdown="1"> * S3 Versioning isn't enabled and supported for directory buckets.
4772
+ # For this API operation, only the `null` value of the version ID is
4773
+ # supported by directory buckets. You can only specify `null` to the
4774
+ # `versionId` query parameter in the request.
4799
4775
  #
4800
- # You can delete objects by explicitly calling DELETE Object or calling
4801
- # ([PutBucketLifecycle][6]) to enable Amazon S3 to remove them for you.
4802
- # If you want to block users or accounts from removing or deleting
4803
- # objects from your bucket, you must deny them the `s3:DeleteObject`,
4804
- # `s3:DeleteObjectVersion`, and `s3:PutLifeCycleConfiguration` actions.
4776
+ # * For directory buckets, you must make requests for this API operation
4777
+ # to the Zonal endpoint. These endpoints support virtual-hosted-style
4778
+ # requests in the format
4779
+ # `https://bucket_name.s3express-az_id.region.amazonaws.com/key-name
4780
+ # `. Path-style requests are not supported. For more information, see
4781
+ # [Regional and Zonal endpoints][4] in the *Amazon S3 User Guide*.
4805
4782
  #
4806
- # <note markdown="1"> **Directory buckets** - S3 Lifecycle is not supported by directory
4807
- # buckets.
4783
+ # * MFA delete is not supported by directory buckets.
4808
4784
  #
4809
4785
  # </note>
4810
4786
  #
@@ -4816,24 +4792,23 @@ module Aws::S3
4816
4792
  # * <b> <code>s3:DeleteObject</code> </b> - To delete an object from
4817
4793
  # a bucket, you must always have the `s3:DeleteObject` permission.
4818
4794
  #
4795
+ # <note markdown="1"> You can also use PutBucketLifecycle to delete objects in Amazon
4796
+ # S3.
4797
+ #
4798
+ # </note>
4799
+ #
4819
4800
  # * <b> <code>s3:DeleteObjectVersion</code> </b> - To delete a
4820
4801
  # specific version of an object from a versioning-enabled bucket,
4821
4802
  # you must have the `s3:DeleteObjectVersion` permission.
4822
4803
  #
4823
- # * **Directory bucket permissions** - To grant access to this API
4824
- # operation on a directory bucket, we recommend that you use the [
4825
- # `CreateSession` ][7] API operation for session-based
4826
- # authorization. Specifically, you grant the
4827
- # `s3express:CreateSession` permission to the directory bucket in a
4828
- # bucket policy or an IAM identity-based policy. Then, you make the
4829
- # `CreateSession` API call on the bucket to obtain a session token.
4830
- # With the session token in your request header, you can make API
4831
- # requests to this operation. After the session token expires, you
4832
- # make another `CreateSession` API call to generate a new session
4833
- # token for use. Amazon Web Services CLI or SDKs create session and
4834
- # refresh the session token automatically to avoid service
4835
- # interruptions when a session expires. For more information about
4836
- # authorization, see [ `CreateSession` ][7].
4804
+ # * If you want to block users or accounts from removing or deleting
4805
+ # objects from your bucket, you must deny them the
4806
+ # `s3:DeleteObject`, `s3:DeleteObjectVersion`, and
4807
+ # `s3:PutLifeCycleConfiguration` permissions.
4808
+ #
4809
+ # * **Directory buckets permissions** - To grant access to this API
4810
+ # operation on a directory bucket, we recommend that you use the
4811
+ # CreateSession API operation for session-based authorization.
4837
4812
  #
4838
4813
  # HTTP Host header syntax
4839
4814
  #
@@ -4842,20 +4817,17 @@ module Aws::S3
4842
4817
  #
4843
4818
  # The following action is related to `DeleteObject`:
4844
4819
  #
4845
- # * [PutObject][8]
4820
+ # * [PutObject][5]
4846
4821
  #
4847
4822
  # ^
4848
4823
  #
4849
4824
  #
4850
4825
  #
4851
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectVersions.html
4852
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectsfromVersioningSuspendedBuckets.html
4853
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
4854
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html
4855
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete
4856
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
4857
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
4858
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
4826
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjects.html#DeletingObjects-best-practices
4827
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html
4828
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete
4829
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
4830
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
4859
4831
  #
4860
4832
  # @option params [required, String] :bucket
4861
4833
  # The bucket name of the bucket containing the object.
@@ -5360,13 +5332,13 @@ module Aws::S3
5360
5332
  # For the `x-amz-checksum-algorithm ` header, replace ` algorithm ` with
5361
5333
  # the supported algorithm from the following list:
5362
5334
  #
5363
- # * CRC32
5335
+ # * `CRC32`
5364
5336
  #
5365
- # * CRC32C
5337
+ # * `CRC32C`
5366
5338
  #
5367
- # * SHA1
5339
+ # * `SHA1`
5368
5340
  #
5369
- # * SHA256
5341
+ # * `SHA256`
5370
5342
  #
5371
5343
  # For more information, see [Checking object integrity][1] in the
5372
5344
  # *Amazon S3 User Guide*.
@@ -5391,22 +5363,20 @@ module Aws::S3
5391
5363
  # * {Types::DeleteObjectsOutput#errors #errors} => Array&lt;Types::Error&gt;
5392
5364
  #
5393
5365
  #
5394
- # @example Example: To delete multiple object versions from a versioned bucket
5366
+ # @example Example: To delete multiple objects from a versioned bucket
5395
5367
  #
5396
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
5397
- # # versions and returns the key and versions of deleted objects in the response.
5368
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
5369
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
5398
5370
  #
5399
5371
  # resp = client.delete_objects({
5400
5372
  # bucket: "examplebucket",
5401
5373
  # delete: {
5402
5374
  # objects: [
5403
5375
  # {
5404
- # key: "HappyFace.jpg",
5405
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5376
+ # key: "objectkey1",
5406
5377
  # },
5407
5378
  # {
5408
- # key: "HappyFace.jpg",
5409
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5379
+ # key: "objectkey2",
5410
5380
  # },
5411
5381
  # ],
5412
5382
  # quiet: false,
@@ -5417,30 +5387,34 @@ module Aws::S3
5417
5387
  # {
5418
5388
  # deleted: [
5419
5389
  # {
5420
- # key: "HappyFace.jpg",
5421
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5390
+ # delete_marker: true,
5391
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
5392
+ # key: "objectkey1",
5422
5393
  # },
5423
5394
  # {
5424
- # key: "HappyFace.jpg",
5425
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5395
+ # delete_marker: true,
5396
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
5397
+ # key: "objectkey2",
5426
5398
  # },
5427
5399
  # ],
5428
5400
  # }
5429
5401
  #
5430
- # @example Example: To delete multiple objects from a versioned bucket
5402
+ # @example Example: To delete multiple object versions from a versioned bucket
5431
5403
  #
5432
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
5433
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
5404
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
5405
+ # # versions and returns the key and versions of deleted objects in the response.
5434
5406
  #
5435
5407
  # resp = client.delete_objects({
5436
5408
  # bucket: "examplebucket",
5437
5409
  # delete: {
5438
5410
  # objects: [
5439
5411
  # {
5440
- # key: "objectkey1",
5412
+ # key: "HappyFace.jpg",
5413
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5441
5414
  # },
5442
5415
  # {
5443
- # key: "objectkey2",
5416
+ # key: "HappyFace.jpg",
5417
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5444
5418
  # },
5445
5419
  # ],
5446
5420
  # quiet: false,
@@ -5451,14 +5425,12 @@ module Aws::S3
5451
5425
  # {
5452
5426
  # deleted: [
5453
5427
  # {
5454
- # delete_marker: true,
5455
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
5456
- # key: "objectkey1",
5428
+ # key: "HappyFace.jpg",
5429
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
5457
5430
  # },
5458
5431
  # {
5459
- # delete_marker: true,
5460
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
5461
- # key: "objectkey2",
5432
+ # key: "HappyFace.jpg",
5433
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
5462
5434
  # },
5463
5435
  # ],
5464
5436
  # }
@@ -6427,6 +6399,7 @@ module Aws::S3
6427
6399
  # @return [Types::GetBucketLifecycleConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6428
6400
  #
6429
6401
  # * {Types::GetBucketLifecycleConfigurationOutput#rules #rules} => Array&lt;Types::LifecycleRule&gt;
6402
+ # * {Types::GetBucketLifecycleConfigurationOutput#transition_default_minimum_object_size #transition_default_minimum_object_size} => String
6430
6403
  #
6431
6404
  #
6432
6405
  # @example Example: To get lifecycle configuration on a bucket
@@ -6492,6 +6465,7 @@ module Aws::S3
6492
6465
  # resp.rules[0].noncurrent_version_expiration.noncurrent_days #=> Integer
6493
6466
  # resp.rules[0].noncurrent_version_expiration.newer_noncurrent_versions #=> Integer
6494
6467
  # resp.rules[0].abort_incomplete_multipart_upload.days_after_initiation #=> Integer
6468
+ # resp.transition_default_minimum_object_size #=> String, one of "varies_by_storage_class", "all_storage_classes_128K"
6495
6469
  #
6496
6470
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycleConfiguration AWS API Documentation
6497
6471
  #
@@ -8231,49 +8205,49 @@ module Aws::S3
8231
8205
  # * {Types::GetObjectOutput#object_lock_legal_hold_status #object_lock_legal_hold_status} => String
8232
8206
  #
8233
8207
  #
8234
- # @example Example: To retrieve an object
8208
+ # @example Example: To retrieve a byte range of an object
8235
8209
  #
8236
- # # The following example retrieves an object for an S3 bucket.
8210
+ # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
8211
+ # # specific byte range.
8237
8212
  #
8238
8213
  # resp = client.get_object({
8239
8214
  # bucket: "examplebucket",
8240
- # key: "HappyFace.jpg",
8215
+ # key: "SampleFile.txt",
8216
+ # range: "bytes=0-9",
8241
8217
  # })
8242
8218
  #
8243
8219
  # resp.to_h outputs the following:
8244
8220
  # {
8245
8221
  # accept_ranges: "bytes",
8246
- # content_length: 3191,
8247
- # content_type: "image/jpeg",
8248
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
8249
- # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
8222
+ # content_length: 10,
8223
+ # content_range: "bytes 0-9/43",
8224
+ # content_type: "text/plain",
8225
+ # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
8226
+ # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
8250
8227
  # metadata: {
8251
8228
  # },
8252
- # tag_count: 2,
8253
8229
  # version_id: "null",
8254
8230
  # }
8255
8231
  #
8256
- # @example Example: To retrieve a byte range of an object
8232
+ # @example Example: To retrieve an object
8257
8233
  #
8258
- # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
8259
- # # specific byte range.
8234
+ # # The following example retrieves an object for an S3 bucket.
8260
8235
  #
8261
8236
  # resp = client.get_object({
8262
8237
  # bucket: "examplebucket",
8263
- # key: "SampleFile.txt",
8264
- # range: "bytes=0-9",
8238
+ # key: "HappyFace.jpg",
8265
8239
  # })
8266
8240
  #
8267
8241
  # resp.to_h outputs the following:
8268
8242
  # {
8269
8243
  # accept_ranges: "bytes",
8270
- # content_length: 10,
8271
- # content_range: "bytes 0-9/43",
8272
- # content_type: "text/plain",
8273
- # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
8274
- # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
8244
+ # content_length: 3191,
8245
+ # content_type: "image/jpeg",
8246
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
8247
+ # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
8275
8248
  # metadata: {
8276
8249
  # },
8250
+ # tag_count: 2,
8277
8251
  # version_id: "null",
8278
8252
  # }
8279
8253
  #
@@ -9737,7 +9711,11 @@ module Aws::S3
9737
9711
  # have the `s3:GetObject` permission. You need the relevant read
9738
9712
  # object (or version) permission for this operation. For more
9739
9713
  # information, see [Actions, resources, and condition keys for
9740
- # Amazon S3][2] in the *Amazon S3 User Guide*.
9714
+ # Amazon S3][2] in the *Amazon S3 User Guide*. For more information
9715
+ # about the permissions to S3 API operations by S3 resource types,
9716
+ # see [Required permissions for Amazon S3 API
9717
+ # operations](/AmazonS3/latest/userguide/using-with-s3-policy-actions.html)
9718
+ # in the *Amazon S3 User Guide*.
9741
9719
  #
9742
9720
  # If the object you request doesn't exist, the error that Amazon S3
9743
9721
  # returns depends on whether you also have the `s3:ListBucket`
@@ -10658,11 +10636,35 @@ module Aws::S3
10658
10636
  #
10659
10637
  # Required: No.
10660
10638
  #
10639
+ # @option params [String] :prefix
10640
+ # Limits the response to bucket names that begin with the specified
10641
+ # bucket name prefix.
10642
+ #
10643
+ # @option params [String] :bucket_region
10644
+ # Limits the response to buckets that are located in the specified
10645
+ # Amazon Web Services Region. The Amazon Web Services Region must be
10646
+ # expressed according to the Amazon Web Services Region code, such as
10647
+ # `us-west-2` for the US West (Oregon) Region. For a list of the valid
10648
+ # values for all of the Amazon Web Services Regions, see [Regions and
10649
+ # Endpoints][1].
10650
+ #
10651
+ # <note markdown="1"> Requests made to a Regional endpoint that is different from the
10652
+ # `bucket-region` parameter are not supported. For example, if you want
10653
+ # to limit the response to your buckets in Region `us-west-2`, the
10654
+ # request must be made to an endpoint in Region `us-west-2`.
10655
+ #
10656
+ # </note>
10657
+ #
10658
+ #
10659
+ #
10660
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
10661
+ #
10661
10662
  # @return [Types::ListBucketsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10662
10663
  #
10663
10664
  # * {Types::ListBucketsOutput#buckets #buckets} => Array&lt;Types::Bucket&gt;
10664
10665
  # * {Types::ListBucketsOutput#owner #owner} => Types::Owner
10665
10666
  # * {Types::ListBucketsOutput#continuation_token #continuation_token} => String
10667
+ # * {Types::ListBucketsOutput#prefix #prefix} => String
10666
10668
  #
10667
10669
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
10668
10670
  #
@@ -10701,6 +10703,8 @@ module Aws::S3
10701
10703
  # resp = client.list_buckets({
10702
10704
  # max_buckets: 1,
10703
10705
  # continuation_token: "Token",
10706
+ # prefix: "Prefix",
10707
+ # bucket_region: "BucketRegion",
10704
10708
  # })
10705
10709
  #
10706
10710
  # @example Response structure
@@ -10708,9 +10712,11 @@ module Aws::S3
10708
10712
  # resp.buckets #=> Array
10709
10713
  # resp.buckets[0].name #=> String
10710
10714
  # resp.buckets[0].creation_date #=> Time
10715
+ # resp.buckets[0].bucket_region #=> String
10711
10716
  # resp.owner.display_name #=> String
10712
10717
  # resp.owner.id #=> String
10713
10718
  # resp.continuation_token #=> String
10719
+ # resp.prefix #=> String
10714
10720
  #
10715
10721
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBuckets AWS API Documentation
10716
10722
  #
@@ -10787,6 +10793,7 @@ module Aws::S3
10787
10793
  # resp.buckets #=> Array
10788
10794
  # resp.buckets[0].name #=> String
10789
10795
  # resp.buckets[0].creation_date #=> Time
10796
+ # resp.buckets[0].bucket_region #=> String
10790
10797
  # resp.continuation_token #=> String
10791
10798
  #
10792
10799
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListDirectoryBuckets AWS API Documentation
@@ -13126,7 +13133,7 @@ module Aws::S3
13126
13133
  # object uploads][4].
13127
13134
  #
13128
13135
  # * Your SSE-KMS configuration can only support 1 [customer managed
13129
- # key][5] per directory bucket for the lifetime of the bucket.
13136
+ # key][5] per directory bucket for the lifetime of the bucket. The
13130
13137
  # [Amazon Web Services managed key][6] (`aws/s3`) isn't supported.
13131
13138
  #
13132
13139
  # * S3 Bucket Keys are always enabled for `GET` and `PUT` operations
@@ -13749,23 +13756,22 @@ module Aws::S3
13749
13756
  # lifecycle configuration. For information about lifecycle
13750
13757
  # configuration, see [Managing your storage lifecycle][1].
13751
13758
  #
13752
- # <note markdown="1"> Bucket lifecycle configuration now supports specifying a lifecycle
13753
- # rule using an object key name prefix, one or more object tags, object
13754
- # size, or any combination of these. Accordingly, this section describes
13755
- # the latest API. The previous version of the API supported filtering
13756
- # based only on an object key name prefix, which is supported for
13757
- # backward compatibility. For the related API description, see
13758
- # [PutBucketLifecycle][2].
13759
- #
13760
- # </note>
13761
- #
13762
13759
  # Rules
13763
13760
  #
13764
13761
  # : You specify the lifecycle configuration in your request body. The
13765
13762
  # lifecycle configuration is specified as XML consisting of one or
13766
13763
  # more rules. An Amazon S3 Lifecycle configuration can have up to
13767
- # 1,000 rules. This limit is not adjustable. Each rule consists of the
13768
- # following:
13764
+ # 1,000 rules. This limit is not adjustable.
13765
+ #
13766
+ # Bucket lifecycle configuration supports specifying a lifecycle rule
13767
+ # using an object key name prefix, one or more object tags, object
13768
+ # size, or any combination of these. Accordingly, this section
13769
+ # describes the latest API. The previous version of the API supported
13770
+ # filtering based only on an object key name prefix, which is
13771
+ # supported for backward compatibility. For the related API
13772
+ # description, see [PutBucketLifecycle][2].
13773
+ #
13774
+ # A lifecycle rule consists of the following:
13769
13775
  #
13770
13776
  # * A filter identifying a subset of objects to which the rule
13771
13777
  # applies. The filter can be based on a key name prefix, object
@@ -13856,7 +13862,26 @@ module Aws::S3
13856
13862
  # you provide does not match the actual owner of the bucket, the request
13857
13863
  # fails with the HTTP status code `403 Forbidden` (access denied).
13858
13864
  #
13859
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
13865
+ # @option params [String] :transition_default_minimum_object_size
13866
+ # Indicates which default minimum object size behavior is applied to the
13867
+ # lifecycle configuration.
13868
+ #
13869
+ # * `all_storage_classes_128K` - Objects smaller than 128 KB will not
13870
+ # transition to any storage class by default.
13871
+ #
13872
+ # * `varies_by_storage_class` - Objects smaller than 128 KB will
13873
+ # transition to Glacier Flexible Retrieval or Glacier Deep Archive
13874
+ # storage classes. By default, all other storage classes will prevent
13875
+ # transitions smaller than 128 KB.
13876
+ #
13877
+ # To customize the minimum object size for any transition you can add a
13878
+ # filter that specifies a custom `ObjectSizeGreaterThan` or
13879
+ # `ObjectSizeLessThan` in the body of your transition rule. Custom
13880
+ # filters always take precedence over the default transition behavior.
13881
+ #
13882
+ # @return [Types::PutBucketLifecycleConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
13883
+ #
13884
+ # * {Types::PutBucketLifecycleConfigurationOutput#transition_default_minimum_object_size #transition_default_minimum_object_size} => String
13860
13885
  #
13861
13886
  #
13862
13887
  # @example Example: Put bucket lifecycle
@@ -13948,8 +13973,13 @@ module Aws::S3
13948
13973
  # ],
13949
13974
  # },
13950
13975
  # expected_bucket_owner: "AccountId",
13976
+ # transition_default_minimum_object_size: "varies_by_storage_class", # accepts varies_by_storage_class, all_storage_classes_128K
13951
13977
  # })
13952
13978
  #
13979
+ # @example Response structure
13980
+ #
13981
+ # resp.transition_default_minimum_object_size #=> String, one of "varies_by_storage_class", "all_storage_classes_128K"
13982
+ #
13953
13983
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycleConfiguration AWS API Documentation
13954
13984
  #
13955
13985
  # @overload put_bucket_lifecycle_configuration(params = {})
@@ -14702,13 +14732,13 @@ module Aws::S3
14702
14732
  # For the `x-amz-checksum-algorithm ` header, replace ` algorithm ` with
14703
14733
  # the supported algorithm from the following list:
14704
14734
  #
14705
- # * CRC32
14735
+ # * `CRC32`
14706
14736
  #
14707
- # * CRC32C
14737
+ # * `CRC32C`
14708
14738
  #
14709
- # * SHA1
14739
+ # * `SHA1`
14710
14740
  #
14711
- # * SHA256
14741
+ # * `SHA256`
14712
14742
  #
14713
14743
  # For more information, see [Checking object integrity][1] in the
14714
14744
  # *Amazon S3 User Guide*.
@@ -15847,10 +15877,11 @@ module Aws::S3
15847
15877
  # information about REST request authentication, see [REST
15848
15878
  # Authentication][1].
15849
15879
  #
15850
- # <note markdown="1"> The `Content-MD5` header is required for any request to upload an
15851
- # object with a retention period configured using Amazon S3 Object Lock.
15852
- # For more information about Amazon S3 Object Lock, see [Amazon S3
15853
- # Object Lock Overview][2] in the *Amazon S3 User Guide*.
15880
+ # <note markdown="1"> The `Content-MD5` or `x-amz-sdk-checksum-algorithm` header is required
15881
+ # for any request to upload an object with a retention period configured
15882
+ # using Amazon S3 Object Lock. For more information, see [Uploading
15883
+ # objects to an Object Lock enabled bucket ][2] in the *Amazon S3 User
15884
+ # Guide*.
15854
15885
  #
15855
15886
  # </note>
15856
15887
  #
@@ -15861,7 +15892,7 @@ module Aws::S3
15861
15892
  #
15862
15893
  #
15863
15894
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
15864
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html
15895
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-managing.html#object-lock-put-object
15865
15896
  #
15866
15897
  # @option params [String] :content_type
15867
15898
  # A standard MIME type describing the format of the contents. For more
@@ -15883,13 +15914,13 @@ module Aws::S3
15883
15914
  # For the `x-amz-checksum-algorithm ` header, replace ` algorithm ` with
15884
15915
  # the supported algorithm from the following list:
15885
15916
  #
15886
- # * CRC32
15917
+ # * `CRC32`
15887
15918
  #
15888
- # * CRC32C
15919
+ # * `CRC32C`
15889
15920
  #
15890
- # * SHA1
15921
+ # * `SHA1`
15891
15922
  #
15892
- # * SHA256
15923
+ # * `SHA256`
15893
15924
  #
15894
15925
  # For more information, see [Checking object integrity][1] in the
15895
15926
  # *Amazon S3 User Guide*.
@@ -15900,21 +15931,28 @@ module Aws::S3
15900
15931
  # provided `ChecksumAlgorithm` parameter and uses the checksum algorithm
15901
15932
  # that matches the provided value in `x-amz-checksum-algorithm `.
15902
15933
  #
15903
- # <note markdown="1"> For directory buckets, when you use Amazon Web Services SDKs, `CRC32`
15904
- # is the default checksum algorithm that's used for performance.
15934
+ # <note markdown="1"> The `Content-MD5` or `x-amz-sdk-checksum-algorithm` header is required
15935
+ # for any request to upload an object with a retention period configured
15936
+ # using Amazon S3 Object Lock. For more information, see [Uploading
15937
+ # objects to an Object Lock enabled bucket ][2] in the *Amazon S3 User
15938
+ # Guide*.
15905
15939
  #
15906
15940
  # </note>
15907
15941
  #
15942
+ # For directory buckets, when you use Amazon Web Services SDKs, `CRC32`
15943
+ # is the default checksum algorithm that's used for performance.
15944
+ #
15908
15945
  #
15909
15946
  #
15910
15947
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
15948
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-managing.html#object-lock-put-object
15911
15949
  #
15912
15950
  # @option params [String] :checksum_crc32
15913
15951
  # This header can be used as a data integrity check to verify that the
15914
15952
  # data received is the same data that was originally sent. This header
15915
- # specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
15916
- # more information, see [Checking object integrity][1] in the *Amazon S3
15917
- # User Guide*.
15953
+ # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
15954
+ # For more information, see [Checking object integrity][1] in the
15955
+ # *Amazon S3 User Guide*.
15918
15956
  #
15919
15957
  #
15920
15958
  #
@@ -15923,7 +15961,7 @@ module Aws::S3
15923
15961
  # @option params [String] :checksum_crc32c
15924
15962
  # This header can be used as a data integrity check to verify that the
15925
15963
  # data received is the same data that was originally sent. This header
15926
- # specifies the base64-encoded, 32-bit CRC32C checksum of the object.
15964
+ # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
15927
15965
  # For more information, see [Checking object integrity][1] in the
15928
15966
  # *Amazon S3 User Guide*.
15929
15967
  #
@@ -16181,14 +16219,19 @@ module Aws::S3
16181
16219
  # Amazon Web Services managed key (`aws/s3`) to protect the data.
16182
16220
  #
16183
16221
  # **Directory buckets** - If you specify `x-amz-server-side-encryption`
16184
- # with `aws:kms`, you must specify the `
16185
- # x-amz-server-side-encryption-aws-kms-key-id` header with the ID (Key
16186
- # ID or Key ARN) of the KMS symmetric encryption customer managed key to
16187
- # use. Otherwise, you get an HTTP `400 Bad Request` error. Only use the
16188
- # key ID or key ARN. The key alias format of the KMS key isn't
16189
- # supported. Your SSE-KMS configuration can only support 1 [customer
16190
- # managed key][1] per directory bucket for the lifetime of the bucket.
16191
- # [Amazon Web Services managed key][2] (`aws/s3`) isn't supported.
16222
+ # with `aws:kms`, the ` x-amz-server-side-encryption-aws-kms-key-id`
16223
+ # header is implicitly assigned the ID of the KMS symmetric encryption
16224
+ # customer managed key that's configured for your directory bucket's
16225
+ # default encryption setting. If you want to specify the `
16226
+ # x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you
16227
+ # can only specify it with the ID (Key ID or Key ARN) of the KMS
16228
+ # customer managed key that's configured for your directory bucket's
16229
+ # default encryption setting. Otherwise, you get an HTTP `400 Bad
16230
+ # Request` error. Only use the key ID or key ARN. The key alias format
16231
+ # of the KMS key isn't supported. Your SSE-KMS configuration can only
16232
+ # support 1 [customer managed key][1] per directory bucket for the
16233
+ # lifetime of the bucket. The [Amazon Web Services managed key][2]
16234
+ # (`aws/s3`) isn't supported.
16192
16235
  #
16193
16236
  #
16194
16237
  #
@@ -16321,24 +16364,6 @@ module Aws::S3
16321
16364
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
16322
16365
  #
16323
16366
  #
16324
- # @example Example: To upload an object and specify optional tags
16325
- #
16326
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
16327
- # # S3 returns version ID of the newly created object.
16328
- #
16329
- # resp = client.put_object({
16330
- # body: "c:\\HappyFace.jpg",
16331
- # bucket: "examplebucket",
16332
- # key: "HappyFace.jpg",
16333
- # tagging: "key1=value1&key2=value2",
16334
- # })
16335
- #
16336
- # resp.to_h outputs the following:
16337
- # {
16338
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16339
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
16340
- # }
16341
- #
16342
16367
  # @example Example: To create an object.
16343
16368
  #
16344
16369
  # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
@@ -16393,62 +16418,80 @@ module Aws::S3
16393
16418
  # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
16394
16419
  # }
16395
16420
  #
16396
- # @example Example: To upload an object and specify server-side encryption and object tags
16421
+ # @example Example: To upload an object and specify canned ACL.
16397
16422
  #
16398
- # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
16399
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
16423
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
16424
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
16400
16425
  #
16401
16426
  # resp = client.put_object({
16427
+ # acl: "authenticated-read",
16402
16428
  # body: "filetoupload",
16403
16429
  # bucket: "examplebucket",
16404
16430
  # key: "exampleobject",
16431
+ # })
16432
+ #
16433
+ # resp.to_h outputs the following:
16434
+ # {
16435
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16436
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
16437
+ # }
16438
+ #
16439
+ # @example Example: To upload an object (specify optional headers)
16440
+ #
16441
+ # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
16442
+ # # storage class and use server-side encryption.
16443
+ #
16444
+ # resp = client.put_object({
16445
+ # body: "HappyFace.jpg",
16446
+ # bucket: "examplebucket",
16447
+ # key: "HappyFace.jpg",
16405
16448
  # server_side_encryption: "AES256",
16406
- # tagging: "key1=value1&key2=value2",
16449
+ # storage_class: "STANDARD_IA",
16407
16450
  # })
16408
16451
  #
16409
16452
  # resp.to_h outputs the following:
16410
16453
  # {
16411
16454
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16412
16455
  # server_side_encryption: "AES256",
16413
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
16456
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
16414
16457
  # }
16415
16458
  #
16416
- # @example Example: To upload an object and specify canned ACL.
16459
+ # @example Example: To upload an object and specify optional tags
16417
16460
  #
16418
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
16419
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
16461
+ # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
16462
+ # # S3 returns version ID of the newly created object.
16420
16463
  #
16421
16464
  # resp = client.put_object({
16422
- # acl: "authenticated-read",
16423
- # body: "filetoupload",
16465
+ # body: "c:\\HappyFace.jpg",
16424
16466
  # bucket: "examplebucket",
16425
- # key: "exampleobject",
16467
+ # key: "HappyFace.jpg",
16468
+ # tagging: "key1=value1&key2=value2",
16426
16469
  # })
16427
16470
  #
16428
16471
  # resp.to_h outputs the following:
16429
16472
  # {
16430
16473
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16431
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
16474
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
16432
16475
  # }
16433
16476
  #
16434
- # @example Example: To upload an object (specify optional headers)
16477
+ # @example Example: To upload an object and specify server-side encryption and object tags
16435
16478
  #
16436
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
16437
- # # storage class and use server-side encryption.
16479
+ # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
16480
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
16438
16481
  #
16439
16482
  # resp = client.put_object({
16440
- # body: "HappyFace.jpg",
16483
+ # body: "filetoupload",
16441
16484
  # bucket: "examplebucket",
16442
- # key: "HappyFace.jpg",
16485
+ # key: "exampleobject",
16443
16486
  # server_side_encryption: "AES256",
16444
- # storage_class: "STANDARD_IA",
16487
+ # tagging: "key1=value1&key2=value2",
16445
16488
  # })
16446
16489
  #
16447
16490
  # resp.to_h outputs the following:
16448
16491
  # {
16449
16492
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16450
16493
  # server_side_encryption: "AES256",
16451
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
16494
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
16452
16495
  # }
16453
16496
  #
16454
16497
  # @example Streaming a file from disk
@@ -17576,10 +17619,6 @@ module Aws::S3
17576
17619
  #
17577
17620
  # </note>
17578
17621
  #
17579
- # The `SELECT` job type for the RestoreObject operation is no longer
17580
- # available to new customers. Existing customers of Amazon S3 Select can
17581
- # continue to use the feature as usual. [Learn more][1]
17582
- #
17583
17622
  # Restores an archived copy of an object back into Amazon S3
17584
17623
  #
17585
17624
  # This functionality is not supported for Amazon S3 on Outposts.
@@ -17593,11 +17632,11 @@ module Aws::S3
17593
17632
  # For more information about the `S3` structure in the request body, see
17594
17633
  # the following:
17595
17634
  #
17596
- # * [PutObject][2]
17635
+ # * [PutObject][1]
17597
17636
  #
17598
- # * [Managing Access with ACLs][3] in the *Amazon S3 User Guide*
17637
+ # * [Managing Access with ACLs][2] in the *Amazon S3 User Guide*
17599
17638
  #
17600
- # * [Protecting Data Using Server-Side Encryption][4] in the *Amazon S3
17639
+ # * [Protecting Data Using Server-Side Encryption][3] in the *Amazon S3
17601
17640
  # User Guide*
17602
17641
  #
17603
17642
  # Permissions
@@ -17606,8 +17645,8 @@ module Aws::S3
17606
17645
  # `s3:RestoreObject` action. The bucket owner has this permission by
17607
17646
  # default and can grant this permission to others. For more
17608
17647
  # information about permissions, see [Permissions Related to Bucket
17609
- # Subresource Operations][5] and [Managing Access Permissions to Your
17610
- # Amazon S3 Resources][6] in the *Amazon S3 User Guide*.
17648
+ # Subresource Operations][4] and [Managing Access Permissions to Your
17649
+ # Amazon S3 Resources][5] in the *Amazon S3 User Guide*.
17611
17650
  #
17612
17651
  # Restoring objects
17613
17652
  #
@@ -17670,11 +17709,11 @@ module Aws::S3
17670
17709
  #
17671
17710
  # For more information about archive retrieval options and provisioned
17672
17711
  # capacity for `Expedited` data access, see [Restoring Archived
17673
- # Objects][7] in the *Amazon S3 User Guide*.
17712
+ # Objects][6] in the *Amazon S3 User Guide*.
17674
17713
  #
17675
17714
  # You can use Amazon S3 restore speed upgrade to change the restore
17676
17715
  # speed to a faster speed while it is in progress. For more
17677
- # information, see [ Upgrading the speed of an in-progress restore][8]
17716
+ # information, see [ Upgrading the speed of an in-progress restore][7]
17678
17717
  # in the *Amazon S3 User Guide*.
17679
17718
  #
17680
17719
  # To get the status of object restoration, you can send a `HEAD`
@@ -17682,7 +17721,7 @@ module Aws::S3
17682
17721
  # provides information about the restoration status, in the response.
17683
17722
  # You can use Amazon S3 event notifications to notify you when a
17684
17723
  # restore is initiated or completed. For more information, see
17685
- # [Configuring Amazon S3 Event Notifications][9] in the *Amazon S3
17724
+ # [Configuring Amazon S3 Event Notifications][8] in the *Amazon S3
17686
17725
  # User Guide*.
17687
17726
  #
17688
17727
  # After restoring an archived object, you can update the restoration
@@ -17698,8 +17737,8 @@ module Aws::S3
17698
17737
  # restore an object copy for 10 days, but the object is scheduled to
17699
17738
  # expire in 3 days, Amazon S3 deletes the object in 3 days. For more
17700
17739
  # information about lifecycle configuration, see
17701
- # [PutBucketLifecycleConfiguration][10] and [Object Lifecycle
17702
- # Management][11] in *Amazon S3 User Guide*.
17740
+ # [PutBucketLifecycleConfiguration][9] and [Object Lifecycle
17741
+ # Management][10] in *Amazon S3 User Guide*.
17703
17742
  #
17704
17743
  # Responses
17705
17744
  #
@@ -17737,24 +17776,23 @@ module Aws::S3
17737
17776
  #
17738
17777
  # The following operations are related to `RestoreObject`:
17739
17778
  #
17740
- # * [PutBucketLifecycleConfiguration][10]
17779
+ # * [PutBucketLifecycleConfiguration][9]
17741
17780
  #
17742
- # * [GetBucketNotificationConfiguration][12]
17781
+ # * [GetBucketNotificationConfiguration][11]
17743
17782
  #
17744
17783
  #
17745
17784
  #
17746
- # [1]: http://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/
17747
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
17748
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
17749
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
17750
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
17751
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
17752
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
17753
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html
17754
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
17755
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
17756
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
17757
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html
17785
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
17786
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
17787
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
17788
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
17789
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
17790
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
17791
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html
17792
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
17793
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
17794
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
17795
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html
17758
17796
  #
17759
17797
  # @option params [required, String] :bucket
17760
17798
  # The bucket name containing the object to restore.
@@ -17966,10 +18004,6 @@ module Aws::S3
17966
18004
  #
17967
18005
  # </note>
17968
18006
  #
17969
- # The SelectObjectContent operation is no longer available to new
17970
- # customers. Existing customers of Amazon S3 Select can continue to use
17971
- # the operation as usual. [Learn more][1]
17972
- #
17973
18007
  # This action filters the contents of an Amazon S3 object based on a
17974
18008
  # simple structured query language (SQL) statement. In the request,
17975
18009
  # along with the SQL expression, you must also specify a data
@@ -17981,7 +18015,7 @@ module Aws::S3
17981
18015
  # This functionality is not supported for Amazon S3 on Outposts.
17982
18016
  #
17983
18017
  # For more information about Amazon S3 Select, see [Selecting Content
17984
- # from Objects][2] and [SELECT Command][3] in the *Amazon S3 User
18018
+ # from Objects][1] and [SELECT Command][2] in the *Amazon S3 User
17985
18019
  # Guide*.
17986
18020
  #
17987
18021
  #
@@ -17991,7 +18025,7 @@ module Aws::S3
17991
18025
  # : You must have the `s3:GetObject` permission for this
17992
18026
  # operation. Amazon S3 Select does not support anonymous access. For
17993
18027
  # more information about permissions, see [Specifying Permissions in a
17994
- # Policy][4] in the *Amazon S3 User Guide*.
18028
+ # Policy][3] in the *Amazon S3 User Guide*.
17995
18029
  #
17996
18030
  # Object Data Formats
17997
18031
  #
@@ -18016,31 +18050,31 @@ module Aws::S3
18016
18050
  #
18017
18051
  # For objects that are encrypted with customer-provided encryption
18018
18052
  # keys (SSE-C), you must use HTTPS, and you must use the headers
18019
- # that are documented in the [GetObject][5]. For more information
18053
+ # that are documented in the [GetObject][4]. For more information
18020
18054
  # about SSE-C, see [Server-Side Encryption (Using Customer-Provided
18021
- # Encryption Keys)][6] in the *Amazon S3 User Guide*.
18055
+ # Encryption Keys)][5] in the *Amazon S3 User Guide*.
18022
18056
  #
18023
18057
  # For objects that are encrypted with Amazon S3 managed keys
18024
18058
  # (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS), server-side
18025
18059
  # encryption is handled transparently, so you don't need to specify
18026
18060
  # anything. For more information about server-side encryption,
18027
18061
  # including SSE-S3 and SSE-KMS, see [Protecting Data Using
18028
- # Server-Side Encryption][7] in the *Amazon S3 User Guide*.
18062
+ # Server-Side Encryption][6] in the *Amazon S3 User Guide*.
18029
18063
  #
18030
18064
  # Working with the Response Body
18031
18065
  #
18032
18066
  # : Given the response size is unknown, Amazon S3 Select streams the
18033
18067
  # response as a series of messages and includes a `Transfer-Encoding`
18034
18068
  # header with `chunked` as its value in the response. For more
18035
- # information, see [Appendix: SelectObjectContent Response][8].
18069
+ # information, see [Appendix: SelectObjectContent Response][7].
18036
18070
  #
18037
18071
  # GetObject Support
18038
18072
  #
18039
18073
  # : The `SelectObjectContent` action does not support the following
18040
- # `GetObject` functionality. For more information, see [GetObject][5].
18074
+ # `GetObject` functionality. For more information, see [GetObject][4].
18041
18075
  #
18042
18076
  # * `Range`: Although you can specify a scan range for an Amazon S3
18043
- # Select request (see [SelectObjectContentRequest - ScanRange][9] in
18077
+ # Select request (see [SelectObjectContentRequest - ScanRange][8] in
18044
18078
  # the request parameters), you cannot specify the range of bytes of
18045
18079
  # an object to return.
18046
18080
  #
@@ -18051,37 +18085,36 @@ module Aws::S3
18051
18085
  # storage classes, nor objects in the `ARCHIVE_ACCESS` or
18052
18086
  # `DEEP_ARCHIVE_ACCESS` access tiers of the `INTELLIGENT_TIERING`
18053
18087
  # storage class. For more information about storage classes, see
18054
- # [Using Amazon S3 storage classes][10] in the *Amazon S3 User
18088
+ # [Using Amazon S3 storage classes][9] in the *Amazon S3 User
18055
18089
  # Guide*.
18056
18090
  #
18057
18091
  # Special Errors
18058
18092
  #
18059
18093
  # : For a list of special errors for this operation, see [List of SELECT
18060
- # Object Content Error Codes][11]
18094
+ # Object Content Error Codes][10]
18061
18095
  #
18062
18096
  # The following operations are related to `SelectObjectContent`:
18063
18097
  #
18064
- # * [GetObject][5]
18098
+ # * [GetObject][4]
18065
18099
  #
18066
- # * [GetBucketLifecycleConfiguration][12]
18100
+ # * [GetBucketLifecycleConfiguration][11]
18067
18101
  #
18068
- # * [PutBucketLifecycleConfiguration][13]
18102
+ # * [PutBucketLifecycleConfiguration][12]
18069
18103
  #
18070
18104
  #
18071
18105
  #
18072
- # [1]: http://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/
18073
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html
18074
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-glacier-select-sql-reference-select.html
18075
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
18076
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
18077
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
18078
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
18079
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
18080
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
18081
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html
18082
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
18083
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
18084
- # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
18106
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html
18107
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-glacier-select-sql-reference-select.html
18108
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
18109
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
18110
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
18111
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
18112
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
18113
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
18114
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html
18115
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
18116
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
18117
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
18085
18118
  #
18086
18119
  # @option params [required, String] :bucket
18087
18120
  # The S3 bucket.
@@ -18652,9 +18685,9 @@ module Aws::S3
18652
18685
  # @option params [String] :checksum_crc32
18653
18686
  # This header can be used as a data integrity check to verify that the
18654
18687
  # data received is the same data that was originally sent. This header
18655
- # specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
18656
- # more information, see [Checking object integrity][1] in the *Amazon S3
18657
- # User Guide*.
18688
+ # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
18689
+ # For more information, see [Checking object integrity][1] in the
18690
+ # *Amazon S3 User Guide*.
18658
18691
  #
18659
18692
  #
18660
18693
  #
@@ -18663,7 +18696,7 @@ module Aws::S3
18663
18696
  # @option params [String] :checksum_crc32c
18664
18697
  # This header can be used as a data integrity check to verify that the
18665
18698
  # data received is the same data that was originally sent. This header
18666
- # specifies the base64-encoded, 32-bit CRC32C checksum of the object.
18699
+ # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
18667
18700
  # For more information, see [Checking object integrity][1] in the
18668
18701
  # *Amazon S3 User Guide*.
18669
18702
  #
@@ -19549,7 +19582,7 @@ module Aws::S3
19549
19582
  # @option params [String] :checksum_crc32
19550
19583
  # This header can be used as a data integrity check to verify that the
19551
19584
  # data received is the same data that was originally sent. This
19552
- # specifies the base64-encoded, 32-bit CRC32 checksum of the object
19585
+ # specifies the base64-encoded, 32-bit CRC-32 checksum of the object
19553
19586
  # returned by the Object Lambda function. This may not match the
19554
19587
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
19555
19588
  # validation of the checksum values only when the original `GetObject`
@@ -19569,7 +19602,7 @@ module Aws::S3
19569
19602
  # @option params [String] :checksum_crc32c
19570
19603
  # This header can be used as a data integrity check to verify that the
19571
19604
  # data received is the same data that was originally sent. This
19572
- # specifies the base64-encoded, 32-bit CRC32C checksum of the object
19605
+ # specifies the base64-encoded, 32-bit CRC-32C checksum of the object
19573
19606
  # returned by the Object Lambda function. This may not match the
19574
19607
  # checksum for the object stored in Amazon S3. Amazon S3 will perform
19575
19608
  # validation of the checksum values only when the original `GetObject`
@@ -19812,7 +19845,7 @@ module Aws::S3
19812
19845
  tracer: tracer
19813
19846
  )
19814
19847
  context[:gem_name] = 'aws-sdk-s3'
19815
- context[:gem_version] = '1.166.0'
19848
+ context[:gem_version] = '1.169.0'
19816
19849
  Seahorse::Client::Request.new(handlers, context)
19817
19850
  end
19818
19851