aws-sdk-s3 1.166.0 → 1.168.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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.168.0'
19816
19849
  Seahorse::Client::Request.new(handlers, context)
19817
19850
  end
19818
19851