aws-sdk-s3 1.167.0 → 1.169.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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.169.0'
19845
19849
  Seahorse::Client::Request.new(handlers, context)
19846
19850
  end
19847
19851