aws-sdk-s3 1.167.0 → 1.170.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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.
@@ -4960,6 +4932,15 @@ module Aws::S3
4960
4932
  # * {Types::DeleteObjectOutput#request_charged #request_charged} => String
4961
4933
  #
4962
4934
  #
4935
+ # @example Example: To delete an object (from a non-versioned bucket)
4936
+ #
4937
+ # # The following example deletes an object from a non-versioned bucket.
4938
+ #
4939
+ # resp = client.delete_object({
4940
+ # bucket: "ExampleBucket",
4941
+ # key: "HappyFace.jpg",
4942
+ # })
4943
+ #
4963
4944
  # @example Example: To delete an object
4964
4945
  #
4965
4946
  # # The following example deletes an object from an S3 bucket.
@@ -4973,15 +4954,6 @@ module Aws::S3
4973
4954
  # {
4974
4955
  # }
4975
4956
  #
4976
- # @example Example: To delete an object (from a non-versioned bucket)
4977
- #
4978
- # # The following example deletes an object from a non-versioned bucket.
4979
- #
4980
- # resp = client.delete_object({
4981
- # bucket: "ExampleBucket",
4982
- # key: "HappyFace.jpg",
4983
- # })
4984
- #
4985
4957
  # @example Request syntax with placeholder values
4986
4958
  #
4987
4959
  # resp = client.delete_object({
@@ -9291,49 +9263,49 @@ module Aws::S3
9291
9263
  # * {Types::GetObjectTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
9292
9264
  #
9293
9265
  #
9294
- # @example Example: To retrieve tag set of an object
9266
+ # @example Example: To retrieve tag set of a specific object version
9295
9267
  #
9296
- # # The following example retrieves tag set of an object.
9268
+ # # The following example retrieves tag set of an object. The request specifies object version.
9297
9269
  #
9298
9270
  # resp = client.get_object_tagging({
9299
9271
  # bucket: "examplebucket",
9300
- # key: "HappyFace.jpg",
9272
+ # key: "exampleobject",
9273
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
9301
9274
  # })
9302
9275
  #
9303
9276
  # resp.to_h outputs the following:
9304
9277
  # {
9305
9278
  # tag_set: [
9306
9279
  # {
9307
- # key: "Key4",
9308
- # value: "Value4",
9309
- # },
9310
- # {
9311
- # key: "Key3",
9312
- # value: "Value3",
9280
+ # key: "Key1",
9281
+ # value: "Value1",
9313
9282
  # },
9314
9283
  # ],
9315
- # version_id: "null",
9284
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
9316
9285
  # }
9317
9286
  #
9318
- # @example Example: To retrieve tag set of a specific object version
9287
+ # @example Example: To retrieve tag set of an object
9319
9288
  #
9320
- # # The following example retrieves tag set of an object. The request specifies object version.
9289
+ # # The following example retrieves tag set of an object.
9321
9290
  #
9322
9291
  # resp = client.get_object_tagging({
9323
9292
  # bucket: "examplebucket",
9324
- # key: "exampleobject",
9325
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
9293
+ # key: "HappyFace.jpg",
9326
9294
  # })
9327
9295
  #
9328
9296
  # resp.to_h outputs the following:
9329
9297
  # {
9330
9298
  # tag_set: [
9331
9299
  # {
9332
- # key: "Key1",
9333
- # value: "Value1",
9300
+ # key: "Key4",
9301
+ # value: "Value4",
9302
+ # },
9303
+ # {
9304
+ # key: "Key3",
9305
+ # value: "Value3",
9334
9306
  # },
9335
9307
  # ],
9336
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
9308
+ # version_id: "null",
9337
9309
  # }
9338
9310
  #
9339
9311
  # @example Request syntax with placeholder values
@@ -10664,11 +10636,35 @@ module Aws::S3
10664
10636
  #
10665
10637
  # Required: No.
10666
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
+ #
10667
10662
  # @return [Types::ListBucketsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10668
10663
  #
10669
10664
  # * {Types::ListBucketsOutput#buckets #buckets} => Array&lt;Types::Bucket&gt;
10670
10665
  # * {Types::ListBucketsOutput#owner #owner} => Types::Owner
10671
10666
  # * {Types::ListBucketsOutput#continuation_token #continuation_token} => String
10667
+ # * {Types::ListBucketsOutput#prefix #prefix} => String
10672
10668
  #
10673
10669
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
10674
10670
  #
@@ -10707,6 +10703,8 @@ module Aws::S3
10707
10703
  # resp = client.list_buckets({
10708
10704
  # max_buckets: 1,
10709
10705
  # continuation_token: "Token",
10706
+ # prefix: "Prefix",
10707
+ # bucket_region: "BucketRegion",
10710
10708
  # })
10711
10709
  #
10712
10710
  # @example Response structure
@@ -10714,9 +10712,11 @@ module Aws::S3
10714
10712
  # resp.buckets #=> Array
10715
10713
  # resp.buckets[0].name #=> String
10716
10714
  # resp.buckets[0].creation_date #=> Time
10715
+ # resp.buckets[0].bucket_region #=> String
10717
10716
  # resp.owner.display_name #=> String
10718
10717
  # resp.owner.id #=> String
10719
10718
  # resp.continuation_token #=> String
10719
+ # resp.prefix #=> String
10720
10720
  #
10721
10721
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBuckets AWS API Documentation
10722
10722
  #
@@ -10793,6 +10793,7 @@ module Aws::S3
10793
10793
  # resp.buckets #=> Array
10794
10794
  # resp.buckets[0].name #=> String
10795
10795
  # resp.buckets[0].creation_date #=> Time
10796
+ # resp.buckets[0].bucket_region #=> String
10796
10797
  # resp.continuation_token #=> String
10797
10798
  #
10798
10799
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListDirectoryBuckets AWS API Documentation
@@ -13132,7 +13133,7 @@ module Aws::S3
13132
13133
  # object uploads][4].
13133
13134
  #
13134
13135
  # * Your SSE-KMS configuration can only support 1 [customer managed
13135
- # key][5] per directory bucket for the lifetime of the bucket.
13136
+ # key][5] per directory bucket for the lifetime of the bucket. The
13136
13137
  # [Amazon Web Services managed key][6] (`aws/s3`) isn't supported.
13137
13138
  #
13138
13139
  # * S3 Bucket Keys are always enabled for `GET` and `PUT` operations
@@ -15876,10 +15877,11 @@ module Aws::S3
15876
15877
  # information about REST request authentication, see [REST
15877
15878
  # Authentication][1].
15878
15879
  #
15879
- # <note markdown="1"> The `Content-MD5` header is required for any request to upload an
15880
- # object with a retention period configured using Amazon S3 Object Lock.
15881
- # For more information about Amazon S3 Object Lock, see [Amazon S3
15882
- # 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*.
15883
15885
  #
15884
15886
  # </note>
15885
15887
  #
@@ -15890,7 +15892,7 @@ module Aws::S3
15890
15892
  #
15891
15893
  #
15892
15894
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
15893
- # [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
15894
15896
  #
15895
15897
  # @option params [String] :content_type
15896
15898
  # A standard MIME type describing the format of the contents. For more
@@ -15929,14 +15931,21 @@ module Aws::S3
15929
15931
  # provided `ChecksumAlgorithm` parameter and uses the checksum algorithm
15930
15932
  # that matches the provided value in `x-amz-checksum-algorithm `.
15931
15933
  #
15932
- # <note markdown="1"> For directory buckets, when you use Amazon Web Services SDKs, `CRC32`
15933
- # 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*.
15934
15939
  #
15935
15940
  # </note>
15936
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
+ #
15937
15945
  #
15938
15946
  #
15939
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
15940
15949
  #
15941
15950
  # @option params [String] :checksum_crc32
15942
15951
  # This header can be used as a data integrity check to verify that the
@@ -16210,14 +16219,19 @@ module Aws::S3
16210
16219
  # Amazon Web Services managed key (`aws/s3`) to protect the data.
16211
16220
  #
16212
16221
  # **Directory buckets** - If you specify `x-amz-server-side-encryption`
16213
- # with `aws:kms`, you must specify the `
16214
- # x-amz-server-side-encryption-aws-kms-key-id` header with the ID (Key
16215
- # ID or Key ARN) of the KMS symmetric encryption customer managed key to
16216
- # use. Otherwise, you get an HTTP `400 Bad Request` error. Only use the
16217
- # key ID or key ARN. The key alias format of the KMS key isn't
16218
- # supported. Your SSE-KMS configuration can only support 1 [customer
16219
- # managed key][1] per directory bucket for the lifetime of the bucket.
16220
- # [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.
16221
16235
  #
16222
16236
  #
16223
16237
  #
@@ -16350,38 +16364,41 @@ module Aws::S3
16350
16364
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
16351
16365
  #
16352
16366
  #
16353
- # @example Example: To upload an object and specify canned ACL.
16367
+ # @example Example: To create an object.
16354
16368
  #
16355
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
16356
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
16369
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
16357
16370
  #
16358
16371
  # resp = client.put_object({
16359
- # acl: "authenticated-read",
16360
16372
  # body: "filetoupload",
16361
16373
  # bucket: "examplebucket",
16362
- # key: "exampleobject",
16374
+ # key: "objectkey",
16363
16375
  # })
16364
16376
  #
16365
16377
  # resp.to_h outputs the following:
16366
16378
  # {
16367
16379
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16368
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
16380
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
16369
16381
  # }
16370
16382
  #
16371
- # @example Example: To create an object.
16383
+ # @example Example: To upload object and specify user-defined metadata
16372
16384
  #
16373
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
16385
+ # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
16386
+ # # enabled, S3 returns version ID in response.
16374
16387
  #
16375
16388
  # resp = client.put_object({
16376
16389
  # body: "filetoupload",
16377
16390
  # bucket: "examplebucket",
16378
- # key: "objectkey",
16391
+ # key: "exampleobject",
16392
+ # metadata: {
16393
+ # "metadata1" => "value1",
16394
+ # "metadata2" => "value2",
16395
+ # },
16379
16396
  # })
16380
16397
  #
16381
16398
  # resp.to_h outputs the following:
16382
16399
  # {
16383
16400
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16384
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
16401
+ # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
16385
16402
  # }
16386
16403
  #
16387
16404
  # @example Example: To upload an object
@@ -16401,83 +16418,80 @@ module Aws::S3
16401
16418
  # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
16402
16419
  # }
16403
16420
  #
16404
- # @example Example: To upload an object and specify optional tags
16421
+ # @example Example: To upload an object and specify canned ACL.
16405
16422
  #
16406
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
16407
- # # S3 returns version ID of the newly created object.
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.
16408
16425
  #
16409
16426
  # resp = client.put_object({
16410
- # body: "c:\\HappyFace.jpg",
16427
+ # acl: "authenticated-read",
16428
+ # body: "filetoupload",
16411
16429
  # bucket: "examplebucket",
16412
- # key: "HappyFace.jpg",
16413
- # tagging: "key1=value1&key2=value2",
16430
+ # key: "exampleobject",
16414
16431
  # })
16415
16432
  #
16416
16433
  # resp.to_h outputs the following:
16417
16434
  # {
16418
16435
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16419
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
16436
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
16420
16437
  # }
16421
16438
  #
16422
- # @example Example: To upload an object and specify server-side encryption and object tags
16439
+ # @example Example: To upload an object (specify optional headers)
16423
16440
  #
16424
- # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
16425
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
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.
16426
16443
  #
16427
16444
  # resp = client.put_object({
16428
- # body: "filetoupload",
16445
+ # body: "HappyFace.jpg",
16429
16446
  # bucket: "examplebucket",
16430
- # key: "exampleobject",
16447
+ # key: "HappyFace.jpg",
16431
16448
  # server_side_encryption: "AES256",
16432
- # tagging: "key1=value1&key2=value2",
16449
+ # storage_class: "STANDARD_IA",
16433
16450
  # })
16434
16451
  #
16435
16452
  # resp.to_h outputs the following:
16436
16453
  # {
16437
16454
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16438
16455
  # server_side_encryption: "AES256",
16439
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
16456
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
16440
16457
  # }
16441
16458
  #
16442
- # @example Example: To upload an object (specify optional headers)
16459
+ # @example Example: To upload an object and specify optional tags
16443
16460
  #
16444
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
16445
- # # storage class and use server-side encryption.
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.
16446
16463
  #
16447
16464
  # resp = client.put_object({
16448
- # body: "HappyFace.jpg",
16465
+ # body: "c:\\HappyFace.jpg",
16449
16466
  # bucket: "examplebucket",
16450
16467
  # key: "HappyFace.jpg",
16451
- # server_side_encryption: "AES256",
16452
- # storage_class: "STANDARD_IA",
16468
+ # tagging: "key1=value1&key2=value2",
16453
16469
  # })
16454
16470
  #
16455
16471
  # resp.to_h outputs the following:
16456
16472
  # {
16457
16473
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16458
- # server_side_encryption: "AES256",
16459
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
16474
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
16460
16475
  # }
16461
16476
  #
16462
- # @example Example: To upload object and specify user-defined metadata
16477
+ # @example Example: To upload an object and specify server-side encryption and object tags
16463
16478
  #
16464
- # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
16465
- # # enabled, S3 returns version ID in response.
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.
16466
16481
  #
16467
16482
  # resp = client.put_object({
16468
16483
  # body: "filetoupload",
16469
16484
  # bucket: "examplebucket",
16470
16485
  # key: "exampleobject",
16471
- # metadata: {
16472
- # "metadata1" => "value1",
16473
- # "metadata2" => "value2",
16474
- # },
16486
+ # server_side_encryption: "AES256",
16487
+ # tagging: "key1=value1&key2=value2",
16475
16488
  # })
16476
16489
  #
16477
16490
  # resp.to_h outputs the following:
16478
16491
  # {
16479
16492
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
16480
- # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
16493
+ # server_side_encryption: "AES256",
16494
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
16481
16495
  # }
16482
16496
  #
16483
16497
  # @example Streaming a file from disk
@@ -17605,10 +17619,6 @@ module Aws::S3
17605
17619
  #
17606
17620
  # </note>
17607
17621
  #
17608
- # The `SELECT` job type for the RestoreObject operation is no longer
17609
- # available to new customers. Existing customers of Amazon S3 Select can
17610
- # continue to use the feature as usual. [Learn more][1]
17611
- #
17612
17622
  # Restores an archived copy of an object back into Amazon S3
17613
17623
  #
17614
17624
  # This functionality is not supported for Amazon S3 on Outposts.
@@ -17622,11 +17632,11 @@ module Aws::S3
17622
17632
  # For more information about the `S3` structure in the request body, see
17623
17633
  # the following:
17624
17634
  #
17625
- # * [PutObject][2]
17635
+ # * [PutObject][1]
17626
17636
  #
17627
- # * [Managing Access with ACLs][3] in the *Amazon S3 User Guide*
17637
+ # * [Managing Access with ACLs][2] in the *Amazon S3 User Guide*
17628
17638
  #
17629
- # * [Protecting Data Using Server-Side Encryption][4] in the *Amazon S3
17639
+ # * [Protecting Data Using Server-Side Encryption][3] in the *Amazon S3
17630
17640
  # User Guide*
17631
17641
  #
17632
17642
  # Permissions
@@ -17635,8 +17645,8 @@ module Aws::S3
17635
17645
  # `s3:RestoreObject` action. The bucket owner has this permission by
17636
17646
  # default and can grant this permission to others. For more
17637
17647
  # information about permissions, see [Permissions Related to Bucket
17638
- # Subresource Operations][5] and [Managing Access Permissions to Your
17639
- # 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*.
17640
17650
  #
17641
17651
  # Restoring objects
17642
17652
  #
@@ -17699,11 +17709,11 @@ module Aws::S3
17699
17709
  #
17700
17710
  # For more information about archive retrieval options and provisioned
17701
17711
  # capacity for `Expedited` data access, see [Restoring Archived
17702
- # Objects][7] in the *Amazon S3 User Guide*.
17712
+ # Objects][6] in the *Amazon S3 User Guide*.
17703
17713
  #
17704
17714
  # You can use Amazon S3 restore speed upgrade to change the restore
17705
17715
  # speed to a faster speed while it is in progress. For more
17706
- # information, see [ Upgrading the speed of an in-progress restore][8]
17716
+ # information, see [ Upgrading the speed of an in-progress restore][7]
17707
17717
  # in the *Amazon S3 User Guide*.
17708
17718
  #
17709
17719
  # To get the status of object restoration, you can send a `HEAD`
@@ -17711,7 +17721,7 @@ module Aws::S3
17711
17721
  # provides information about the restoration status, in the response.
17712
17722
  # You can use Amazon S3 event notifications to notify you when a
17713
17723
  # restore is initiated or completed. For more information, see
17714
- # [Configuring Amazon S3 Event Notifications][9] in the *Amazon S3
17724
+ # [Configuring Amazon S3 Event Notifications][8] in the *Amazon S3
17715
17725
  # User Guide*.
17716
17726
  #
17717
17727
  # After restoring an archived object, you can update the restoration
@@ -17727,8 +17737,8 @@ module Aws::S3
17727
17737
  # restore an object copy for 10 days, but the object is scheduled to
17728
17738
  # expire in 3 days, Amazon S3 deletes the object in 3 days. For more
17729
17739
  # information about lifecycle configuration, see
17730
- # [PutBucketLifecycleConfiguration][10] and [Object Lifecycle
17731
- # Management][11] in *Amazon S3 User Guide*.
17740
+ # [PutBucketLifecycleConfiguration][9] and [Object Lifecycle
17741
+ # Management][10] in *Amazon S3 User Guide*.
17732
17742
  #
17733
17743
  # Responses
17734
17744
  #
@@ -17766,24 +17776,23 @@ module Aws::S3
17766
17776
  #
17767
17777
  # The following operations are related to `RestoreObject`:
17768
17778
  #
17769
- # * [PutBucketLifecycleConfiguration][10]
17779
+ # * [PutBucketLifecycleConfiguration][9]
17770
17780
  #
17771
- # * [GetBucketNotificationConfiguration][12]
17781
+ # * [GetBucketNotificationConfiguration][11]
17772
17782
  #
17773
17783
  #
17774
17784
  #
17775
- # [1]: http://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/
17776
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
17777
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html
17778
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
17779
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
17780
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
17781
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
17782
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html
17783
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
17784
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
17785
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
17786
- # [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
17787
17796
  #
17788
17797
  # @option params [required, String] :bucket
17789
17798
  # The bucket name containing the object to restore.
@@ -17995,10 +18004,6 @@ module Aws::S3
17995
18004
  #
17996
18005
  # </note>
17997
18006
  #
17998
- # The SelectObjectContent operation is no longer available to new
17999
- # customers. Existing customers of Amazon S3 Select can continue to use
18000
- # the operation as usual. [Learn more][1]
18001
- #
18002
18007
  # This action filters the contents of an Amazon S3 object based on a
18003
18008
  # simple structured query language (SQL) statement. In the request,
18004
18009
  # along with the SQL expression, you must also specify a data
@@ -18010,7 +18015,7 @@ module Aws::S3
18010
18015
  # This functionality is not supported for Amazon S3 on Outposts.
18011
18016
  #
18012
18017
  # For more information about Amazon S3 Select, see [Selecting Content
18013
- # 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
18014
18019
  # Guide*.
18015
18020
  #
18016
18021
  #
@@ -18020,7 +18025,7 @@ module Aws::S3
18020
18025
  # : You must have the `s3:GetObject` permission for this
18021
18026
  # operation. Amazon S3 Select does not support anonymous access. For
18022
18027
  # more information about permissions, see [Specifying Permissions in a
18023
- # Policy][4] in the *Amazon S3 User Guide*.
18028
+ # Policy][3] in the *Amazon S3 User Guide*.
18024
18029
  #
18025
18030
  # Object Data Formats
18026
18031
  #
@@ -18045,31 +18050,31 @@ module Aws::S3
18045
18050
  #
18046
18051
  # For objects that are encrypted with customer-provided encryption
18047
18052
  # keys (SSE-C), you must use HTTPS, and you must use the headers
18048
- # that are documented in the [GetObject][5]. For more information
18053
+ # that are documented in the [GetObject][4]. For more information
18049
18054
  # about SSE-C, see [Server-Side Encryption (Using Customer-Provided
18050
- # Encryption Keys)][6] in the *Amazon S3 User Guide*.
18055
+ # Encryption Keys)][5] in the *Amazon S3 User Guide*.
18051
18056
  #
18052
18057
  # For objects that are encrypted with Amazon S3 managed keys
18053
18058
  # (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS), server-side
18054
18059
  # encryption is handled transparently, so you don't need to specify
18055
18060
  # anything. For more information about server-side encryption,
18056
18061
  # including SSE-S3 and SSE-KMS, see [Protecting Data Using
18057
- # Server-Side Encryption][7] in the *Amazon S3 User Guide*.
18062
+ # Server-Side Encryption][6] in the *Amazon S3 User Guide*.
18058
18063
  #
18059
18064
  # Working with the Response Body
18060
18065
  #
18061
18066
  # : Given the response size is unknown, Amazon S3 Select streams the
18062
18067
  # response as a series of messages and includes a `Transfer-Encoding`
18063
18068
  # header with `chunked` as its value in the response. For more
18064
- # information, see [Appendix: SelectObjectContent Response][8].
18069
+ # information, see [Appendix: SelectObjectContent Response][7].
18065
18070
  #
18066
18071
  # GetObject Support
18067
18072
  #
18068
18073
  # : The `SelectObjectContent` action does not support the following
18069
- # `GetObject` functionality. For more information, see [GetObject][5].
18074
+ # `GetObject` functionality. For more information, see [GetObject][4].
18070
18075
  #
18071
18076
  # * `Range`: Although you can specify a scan range for an Amazon S3
18072
- # Select request (see [SelectObjectContentRequest - ScanRange][9] in
18077
+ # Select request (see [SelectObjectContentRequest - ScanRange][8] in
18073
18078
  # the request parameters), you cannot specify the range of bytes of
18074
18079
  # an object to return.
18075
18080
  #
@@ -18080,37 +18085,36 @@ module Aws::S3
18080
18085
  # storage classes, nor objects in the `ARCHIVE_ACCESS` or
18081
18086
  # `DEEP_ARCHIVE_ACCESS` access tiers of the `INTELLIGENT_TIERING`
18082
18087
  # storage class. For more information about storage classes, see
18083
- # [Using Amazon S3 storage classes][10] in the *Amazon S3 User
18088
+ # [Using Amazon S3 storage classes][9] in the *Amazon S3 User
18084
18089
  # Guide*.
18085
18090
  #
18086
18091
  # Special Errors
18087
18092
  #
18088
18093
  # : For a list of special errors for this operation, see [List of SELECT
18089
- # Object Content Error Codes][11]
18094
+ # Object Content Error Codes][10]
18090
18095
  #
18091
18096
  # The following operations are related to `SelectObjectContent`:
18092
18097
  #
18093
- # * [GetObject][5]
18098
+ # * [GetObject][4]
18094
18099
  #
18095
- # * [GetBucketLifecycleConfiguration][12]
18100
+ # * [GetBucketLifecycleConfiguration][11]
18096
18101
  #
18097
- # * [PutBucketLifecycleConfiguration][13]
18102
+ # * [PutBucketLifecycleConfiguration][12]
18098
18103
  #
18099
18104
  #
18100
18105
  #
18101
- # [1]: http://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/
18102
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html
18103
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-glacier-select-sql-reference-select.html
18104
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
18105
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
18106
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
18107
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
18108
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html
18109
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange
18110
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html
18111
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList
18112
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html
18113
- # [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
18114
18118
  #
18115
18119
  # @option params [required, String] :bucket
18116
18120
  # The S3 bucket.
@@ -19341,45 +19345,45 @@ module Aws::S3
19341
19345
  # * {Types::UploadPartCopyOutput#request_charged #request_charged} => String
19342
19346
  #
19343
19347
  #
19344
- # @example Example: To upload a part by copying data from an existing object as data source
19348
+ # @example Example: To upload a part by copying byte range from an existing object as data source
19345
19349
  #
19346
- # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
19350
+ # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
19351
+ # # data source.
19347
19352
  #
19348
19353
  # resp = client.upload_part_copy({
19349
19354
  # bucket: "examplebucket",
19350
19355
  # copy_source: "/bucketname/sourceobjectkey",
19356
+ # copy_source_range: "bytes=1-100000",
19351
19357
  # key: "examplelargeobject",
19352
- # part_number: 1,
19358
+ # part_number: 2,
19353
19359
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
19354
19360
  # })
19355
19361
  #
19356
19362
  # resp.to_h outputs the following:
19357
19363
  # {
19358
19364
  # copy_part_result: {
19359
- # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
19360
- # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
19365
+ # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
19366
+ # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
19361
19367
  # },
19362
19368
  # }
19363
19369
  #
19364
- # @example Example: To upload a part by copying byte range from an existing object as data source
19370
+ # @example Example: To upload a part by copying data from an existing object as data source
19365
19371
  #
19366
- # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
19367
- # # data source.
19372
+ # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
19368
19373
  #
19369
19374
  # resp = client.upload_part_copy({
19370
19375
  # bucket: "examplebucket",
19371
19376
  # copy_source: "/bucketname/sourceobjectkey",
19372
- # copy_source_range: "bytes=1-100000",
19373
19377
  # key: "examplelargeobject",
19374
- # part_number: 2,
19378
+ # part_number: 1,
19375
19379
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
19376
19380
  # })
19377
19381
  #
19378
19382
  # resp.to_h outputs the following:
19379
19383
  # {
19380
19384
  # copy_part_result: {
19381
- # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
19382
- # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
19385
+ # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
19386
+ # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
19383
19387
  # },
19384
19388
  # }
19385
19389
  #
@@ -19841,7 +19845,7 @@ module Aws::S3
19841
19845
  tracer: tracer
19842
19846
  )
19843
19847
  context[:gem_name] = 'aws-sdk-s3'
19844
- context[:gem_version] = '1.167.0'
19848
+ context[:gem_version] = '1.170.0'
19845
19849
  Seahorse::Client::Request.new(handlers, context)
19846
19850
  end
19847
19851