aws-sdk-s3 1.86.2 → 1.89.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 16a9aff6822c797e42c53b0962daa98f30835ad0691b77494ee9c9a76e3566a0
4
- data.tar.gz: 18ed704a16cfcc8e4774635cfccaea8e97e89573c9c69eb78ffc454fc5b18ff5
3
+ metadata.gz: 45e0db7fe593769589489e9cb17f1ede51174ab9be36a8d0d6d542f33416fde4
4
+ data.tar.gz: 45a8c14b5864962f8c32c53534b4ea2aca589758e0bccbec781bda283bfff609
5
5
  SHA512:
6
- metadata.gz: d84682fab84321b4dce73b94c27ef475a28874439e545007670ccf1c8e77d5e7324a5d3adb5d4cea4aefc149cb14409fcc62559521b0ff1b6fbfacce411bc037
7
- data.tar.gz: d765b7b3908942f2bc270cc5aad74b08d0a300cb6cff6b1cd7043ef56c838f882ec0ab10eef5e2ef1e127432075b1fb13f9be2fe2a95feb550c3144ba9f52b76
6
+ metadata.gz: 7f360edf433428fb6171426ffc404cd0b09f4d75337c24d60dbfb545b469cc3cd9eeebb3a815c23f823047487a5324a445bfeac64571c394e486c9ba6de905de
7
+ data.tar.gz: 931f79ee39c5895137a8aa15662d91dfc78b7008be57ac00f1bc58ad9a1ad1ff80e3c052de7a8fdd4879c51f1cabe72536b8ab63f9ec5d59e6c1303fc1c4ad59
data/lib/aws-sdk-s3.rb CHANGED
@@ -69,6 +69,6 @@ require_relative 'aws-sdk-s3/event_streams'
69
69
  # @!group service
70
70
  module Aws::S3
71
71
 
72
- GEM_VERSION = '1.86.2'
72
+ GEM_VERSION = '1.89.0'
73
73
 
74
74
  end
@@ -52,10 +52,14 @@ module Aws
52
52
  end
53
53
  end
54
54
 
55
- def host_url(region, dualstack = false)
56
- sfx = Aws::Partitions::EndpointProvider.dns_suffix_for(region)
57
- "#{@access_point_name}-#{@account_id}"\
58
- ".s3-accesspoint#{'.dualstack' if dualstack}.#{region}.#{sfx}"
55
+ def host_url(region, dualstack = false, custom_endpoint = nil)
56
+ pfx = "#{@access_point_name}-#{@account_id}"
57
+ if custom_endpoint
58
+ "#{pfx}.#{custom_endpoint}"
59
+ else
60
+ sfx = Aws::Partitions::EndpointProvider.dns_suffix_for(region)
61
+ "#{pfx}.s3-accesspoint#{'.dualstack' if dualstack}.#{region}.#{sfx}"
62
+ end
59
63
  end
60
64
  end
61
65
  end
@@ -62,9 +62,13 @@ module Aws
62
62
  end
63
63
 
64
64
  # Outpost ARNs currently do not support dualstack
65
- def host_url(region, _dualstack = false)
66
- "#{@access_point_name}-#{@account_id}.#{@outpost_id}"\
67
- ".s3-outposts.#{region}.amazonaws.com"
65
+ def host_url(region, _dualstack = false, custom_endpoint = nil)
66
+ pfx = "#{@access_point_name}-#{@account_id}.#{@outpost_id}"
67
+ if custom_endpoint
68
+ "#{pfx}.#{custom_endpoint}"
69
+ else
70
+ "#{pfx}.s3-outposts.#{region}.amazonaws.com"
71
+ end
68
72
  end
69
73
  end
70
74
  end
@@ -185,10 +185,9 @@ module Aws::S3
185
185
  # })
186
186
  # @param [Hash] options ({})
187
187
  # @option options [String] :content_md5
188
- # >The base64-encoded 128-bit MD5 digest of the data. You must use
189
- # this header as a message integrity check to verify that the request
190
- # body was not corrupted in transit. For more information, see [RFC
191
- # 1864][1].
188
+ # The base64-encoded 128-bit MD5 digest of the data. You must use this
189
+ # header as a message integrity check to verify that the request body
190
+ # was not corrupted in transit. For more information, see [RFC 1864][1].
192
191
  #
193
192
  # For requests made using the AWS Command Line Interface (CLI) or AWS
194
193
  # SDKs, this field is calculated automatically.
@@ -1418,33 +1418,33 @@ module Aws::S3
1418
1418
  # * {Types::CreateBucketOutput#location #location} => String
1419
1419
  #
1420
1420
  #
1421
- # @example Example: To create a bucket in a specific region
1421
+ # @example Example: To create a bucket
1422
1422
  #
1423
- # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1423
+ # # The following example creates a bucket.
1424
1424
  #
1425
1425
  # resp = client.create_bucket({
1426
1426
  # bucket: "examplebucket",
1427
- # create_bucket_configuration: {
1428
- # location_constraint: "eu-west-1",
1429
- # },
1430
1427
  # })
1431
1428
  #
1432
1429
  # resp.to_h outputs the following:
1433
1430
  # {
1434
- # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1431
+ # location: "/examplebucket",
1435
1432
  # }
1436
1433
  #
1437
- # @example Example: To create a bucket
1434
+ # @example Example: To create a bucket in a specific region
1438
1435
  #
1439
- # # The following example creates a bucket.
1436
+ # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1440
1437
  #
1441
1438
  # resp = client.create_bucket({
1442
1439
  # bucket: "examplebucket",
1440
+ # create_bucket_configuration: {
1441
+ # location_constraint: "eu-west-1",
1442
+ # },
1443
1443
  # })
1444
1444
  #
1445
1445
  # resp.to_h outputs the following:
1446
1446
  # {
1447
- # location: "/examplebucket",
1447
+ # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1448
1448
  # }
1449
1449
  #
1450
1450
  # @example Request syntax with placeholder values
@@ -2939,7 +2939,8 @@ module Aws::S3
2939
2939
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html
2940
2940
  #
2941
2941
  # @option params [required, String] :key
2942
- # Name of the object key.
2942
+ # The key that identifies the object in the bucket from which to remove
2943
+ # all tags.
2943
2944
  #
2944
2945
  # @option params [String] :version_id
2945
2946
  # The versionId of the object that the tag-set will be removed from.
@@ -2954,35 +2955,35 @@ module Aws::S3
2954
2955
  # * {Types::DeleteObjectTaggingOutput#version_id #version_id} => String
2955
2956
  #
2956
2957
  #
2957
- # @example Example: To remove tag set from an object
2958
+ # @example Example: To remove tag set from an object version
2958
2959
  #
2959
- # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
2960
- # # operation removes tag set from the latest object version.
2960
+ # # The following example removes tag set associated with the specified object version. The request specifies both the
2961
+ # # object key and object version.
2961
2962
  #
2962
2963
  # resp = client.delete_object_tagging({
2963
2964
  # bucket: "examplebucket",
2964
2965
  # key: "HappyFace.jpg",
2966
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2965
2967
  # })
2966
2968
  #
2967
2969
  # resp.to_h outputs the following:
2968
2970
  # {
2969
- # version_id: "null",
2971
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2970
2972
  # }
2971
2973
  #
2972
- # @example Example: To remove tag set from an object version
2974
+ # @example Example: To remove tag set from an object
2973
2975
  #
2974
- # # The following example removes tag set associated with the specified object version. The request specifies both the
2975
- # # object key and object version.
2976
+ # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
2977
+ # # operation removes tag set from the latest object version.
2976
2978
  #
2977
2979
  # resp = client.delete_object_tagging({
2978
2980
  # bucket: "examplebucket",
2979
2981
  # key: "HappyFace.jpg",
2980
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2981
2982
  # })
2982
2983
  #
2983
2984
  # resp.to_h outputs the following:
2984
2985
  # {
2985
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2986
+ # version_id: "null",
2986
2987
  # }
2987
2988
  #
2988
2989
  # @example Request syntax with placeholder values
@@ -3590,6 +3591,10 @@ module Aws::S3
3590
3591
  end
3591
3592
 
3592
3593
  # Returns the default encryption configuration for an Amazon S3 bucket.
3594
+ # If the bucket does not have a default encryption configuration,
3595
+ # GetBucketEncryption returns
3596
+ # `ServerSideEncryptionConfigurationNotFoundError`.
3597
+ #
3593
3598
  # For information about the Amazon S3 default encryption feature, see
3594
3599
  # [Amazon S3 Default Bucket Encryption][1].
3595
3600
  #
@@ -5297,14 +5302,14 @@ module Aws::S3
5297
5302
  # VersionId used to reference a specific version of the object.
5298
5303
  #
5299
5304
  # @option params [String] :sse_customer_algorithm
5300
- # Specifies the algorithm to use to when encrypting the object (for
5305
+ # Specifies the algorithm to use to when decrypting the object (for
5301
5306
  # example, AES256).
5302
5307
  #
5303
5308
  # @option params [String] :sse_customer_key
5304
- # Specifies the customer-provided encryption key for Amazon S3 to use in
5305
- # encrypting data. This value is used to store the object and then it is
5306
- # discarded; Amazon S3 does not store the encryption key. The key must
5307
- # be appropriate for use with the algorithm specified in the
5309
+ # Specifies the customer-provided encryption key for Amazon S3 used to
5310
+ # encrypt the data. This value is used to decrypt the object when
5311
+ # recovering it and must match the one used when storing the data. The
5312
+ # key must be appropriate for use with the algorithm specified in the
5308
5313
  # `x-amz-server-side-encryption-customer-algorithm` header.
5309
5314
  #
5310
5315
  # @option params [String] :sse_customer_key_md5
@@ -5899,12 +5904,13 @@ module Aws::S3
5899
5904
  #
5900
5905
  # * [PutObjectTagging][2]
5901
5906
  #
5902
- # ^
5907
+ # * [DeleteObjectTagging][3]
5903
5908
  #
5904
5909
  #
5905
5910
  #
5906
5911
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html
5907
5912
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html
5913
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html
5908
5914
  #
5909
5915
  # @option params [required, String] :bucket
5910
5916
  # The bucket name containing the object for which to get the tagging
@@ -5943,55 +5949,66 @@ module Aws::S3
5943
5949
  # a different account, the request will fail with an HTTP `403 (Access
5944
5950
  # Denied)` error.
5945
5951
  #
5952
+ # @option params [String] :request_payer
5953
+ # Confirms that the requester knows that they will be charged for the
5954
+ # request. Bucket owners need not specify this parameter in their
5955
+ # requests. For information about downloading objects from requester
5956
+ # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
5957
+ # in the *Amazon S3 Developer Guide*.
5958
+ #
5959
+ #
5960
+ #
5961
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
5962
+ #
5946
5963
  # @return [Types::GetObjectTaggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5947
5964
  #
5948
5965
  # * {Types::GetObjectTaggingOutput#version_id #version_id} => String
5949
5966
  # * {Types::GetObjectTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
5950
5967
  #
5951
5968
  #
5952
- # @example Example: To retrieve tag set of an object
5969
+ # @example Example: To retrieve tag set of a specific object version
5953
5970
  #
5954
- # # The following example retrieves tag set of an object.
5971
+ # # The following example retrieves tag set of an object. The request specifies object version.
5955
5972
  #
5956
5973
  # resp = client.get_object_tagging({
5957
5974
  # bucket: "examplebucket",
5958
- # key: "HappyFace.jpg",
5975
+ # key: "exampleobject",
5976
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
5959
5977
  # })
5960
5978
  #
5961
5979
  # resp.to_h outputs the following:
5962
5980
  # {
5963
5981
  # tag_set: [
5964
5982
  # {
5965
- # key: "Key4",
5966
- # value: "Value4",
5967
- # },
5968
- # {
5969
- # key: "Key3",
5970
- # value: "Value3",
5983
+ # key: "Key1",
5984
+ # value: "Value1",
5971
5985
  # },
5972
5986
  # ],
5973
- # version_id: "null",
5987
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
5974
5988
  # }
5975
5989
  #
5976
- # @example Example: To retrieve tag set of a specific object version
5990
+ # @example Example: To retrieve tag set of an object
5977
5991
  #
5978
- # # The following example retrieves tag set of an object. The request specifies object version.
5992
+ # # The following example retrieves tag set of an object.
5979
5993
  #
5980
5994
  # resp = client.get_object_tagging({
5981
5995
  # bucket: "examplebucket",
5982
- # key: "exampleobject",
5983
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
5996
+ # key: "HappyFace.jpg",
5984
5997
  # })
5985
5998
  #
5986
5999
  # resp.to_h outputs the following:
5987
6000
  # {
5988
6001
  # tag_set: [
5989
6002
  # {
5990
- # key: "Key1",
5991
- # value: "Value1",
6003
+ # key: "Key4",
6004
+ # value: "Value4",
6005
+ # },
6006
+ # {
6007
+ # key: "Key3",
6008
+ # value: "Value3",
5992
6009
  # },
5993
6010
  # ],
5994
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6011
+ # version_id: "null",
5995
6012
  # }
5996
6013
  #
5997
6014
  # @example Request syntax with placeholder values
@@ -6001,6 +6018,7 @@ module Aws::S3
6001
6018
  # key: "ObjectKey", # required
6002
6019
  # version_id: "ObjectVersionId",
6003
6020
  # expected_bucket_owner: "AccountId",
6021
+ # request_payer: "requester", # accepts requester
6004
6022
  # })
6005
6023
  #
6006
6024
  # @example Response structure
@@ -6185,9 +6203,12 @@ module Aws::S3
6185
6203
 
6186
6204
  # This operation is useful to determine if a bucket exists and you have
6187
6205
  # permission to access it. The operation returns a `200 OK` if the
6188
- # bucket exists and you have permission to access it. Otherwise, the
6189
- # operation might return responses such as `404 Not Found` and `403
6190
- # Forbidden`.
6206
+ # bucket exists and you have permission to access it.
6207
+ #
6208
+ # If the bucket does not exist or you do not have permission to access
6209
+ # it, the `HEAD` request returns a generic `404 Not Found` or `403
6210
+ # Forbidden` code. A message body is not included, so you cannot
6211
+ # determine the exception beyond these error codes.
6191
6212
  #
6192
6213
  # To use this operation, you must have permissions to perform the
6193
6214
  # `s3:ListBucket` action. The bucket owner has this permission by
@@ -6271,7 +6292,10 @@ module Aws::S3
6271
6292
  #
6272
6293
  # A `HEAD` request has the same options as a `GET` operation on an
6273
6294
  # object. The response is identical to the `GET` response except that
6274
- # there is no response body.
6295
+ # there is no response body. Because of this, if the `HEAD` request
6296
+ # generates an error, it returns a generic `404 Not Found` or `403
6297
+ # Forbidden` code. It is not possible to retrieve the exact exception
6298
+ # beyond these error codes.
6275
6299
  #
6276
6300
  # If you encrypt an object by using server-side encryption with
6277
6301
  # customer-provided encryption keys (SSE-C) when you store the object in
@@ -6287,12 +6311,15 @@ module Aws::S3
6287
6311
  # For more information about SSE-C, see [Server-Side Encryption (Using
6288
6312
  # Customer-Provided Encryption Keys)][1].
6289
6313
  #
6290
- # <note markdown="1"> Encryption request headers, like `x-amz-server-side-encryption`,
6291
- # should not be sent for GET requests if your object uses server-side
6292
- # encryption with CMKs stored in AWS KMS (SSE-KMS) or server-side
6293
- # encryption with Amazon S3–managed encryption keys (SSE-S3). If your
6294
- # object does use these types of keys, you’ll get an HTTP 400 BadRequest
6295
- # error.
6314
+ # <note markdown="1"> * Encryption request headers, like `x-amz-server-side-encryption`,
6315
+ # should not be sent for GET requests if your object uses server-side
6316
+ # encryption with CMKs stored in AWS KMS (SSE-KMS) or server-side
6317
+ # encryption with Amazon S3–managed encryption keys (SSE-S3). If your
6318
+ # object does use these types of keys, you’ll get an HTTP 400
6319
+ # BadRequest error.
6320
+ #
6321
+ # * The last modified property in this case is the creation date of the
6322
+ # object.
6296
6323
  #
6297
6324
  # </note>
6298
6325
  #
@@ -7677,7 +7704,9 @@ module Aws::S3
7677
7704
  # use the request parameters as selection criteria to return a subset of
7678
7705
  # the objects in a bucket. A `200 OK` response can contain valid or
7679
7706
  # invalid XML. Make sure to design your application to parse the
7680
- # contents of the response and handle it appropriately.
7707
+ # contents of the response and handle it appropriately. Objects are
7708
+ # returned sorted in an ascending order of the respective key names in
7709
+ # the list.
7681
7710
  #
7682
7711
  # To use this operation, you must have READ access to the bucket.
7683
7712
  #
@@ -8796,6 +8825,8 @@ module Aws::S3
8796
8825
  end
8797
8826
 
8798
8827
  # Puts a S3 Intelligent-Tiering configuration to the specified bucket.
8828
+ # You can have up to 1,000 S3 Intelligent-Tiering configurations per
8829
+ # bucket.
8799
8830
  #
8800
8831
  # The S3 Intelligent-Tiering storage class is designed to optimize
8801
8832
  # storage costs by automatically moving data to the most cost-effective
@@ -8824,6 +8855,35 @@ module Aws::S3
8824
8855
  #
8825
8856
  # * [ListBucketIntelligentTieringConfigurations][4]
8826
8857
  #
8858
+ # <note markdown="1"> You only need S3 Intelligent-Tiering enabled on a bucket if you want
8859
+ # to automatically move objects stored in the S3 Intelligent-Tiering
8860
+ # storage class to the Archive Access or Deep Archive Access tier.
8861
+ #
8862
+ # </note>
8863
+ #
8864
+ # **Special Errors**
8865
+ #
8866
+ # * **HTTP 400 Bad Request Error**
8867
+ #
8868
+ # * *Code:* InvalidArgument
8869
+ #
8870
+ # * *Cause:* Invalid Argument
8871
+ #
8872
+ # * **HTTP 400 Bad Request Error**
8873
+ #
8874
+ # * *Code:* TooManyConfigurations
8875
+ #
8876
+ # * *Cause:* You are attempting to create a new configuration but have
8877
+ # already reached the 1,000-configuration limit.
8878
+ #
8879
+ # * **HTTP 403 Forbidden Error**
8880
+ #
8881
+ # * *Code:* AccessDenied
8882
+ #
8883
+ # * *Cause:* You are not the owner of the specified bucket, or you do
8884
+ # not have the `s3:PutIntelligentTieringConfiguration` bucket
8885
+ # permission to set the configuration on the bucket.
8886
+ #
8827
8887
  #
8828
8888
  #
8829
8889
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access
@@ -10187,10 +10247,9 @@ module Aws::S3
10187
10247
  # The bucket name.
10188
10248
  #
10189
10249
  # @option params [String] :content_md5
10190
- # &gt;The base64-encoded 128-bit MD5 digest of the data. You must use
10191
- # this header as a message integrity check to verify that the request
10192
- # body was not corrupted in transit. For more information, see [RFC
10193
- # 1864][1].
10250
+ # The base64-encoded 128-bit MD5 digest of the data. You must use this
10251
+ # header as a message integrity check to verify that the request body
10252
+ # was not corrupted in transit. For more information, see [RFC 1864][1].
10194
10253
  #
10195
10254
  # For requests made using the AWS Command Line Interface (CLI) or AWS
10196
10255
  # SDKs, this field is calculated automatically.
@@ -11013,79 +11072,62 @@ module Aws::S3
11013
11072
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
11014
11073
  #
11015
11074
  #
11016
- # @example Example: To upload an object
11017
- #
11018
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
11019
- # # syntax. S3 returns VersionId of the newly created object.
11020
- #
11021
- # resp = client.put_object({
11022
- # body: "HappyFace.jpg",
11023
- # bucket: "examplebucket",
11024
- # key: "HappyFace.jpg",
11025
- # })
11026
- #
11027
- # resp.to_h outputs the following:
11028
- # {
11029
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11030
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
11031
- # }
11032
- #
11033
- # @example Example: To upload an object and specify canned ACL.
11075
+ # @example Example: To upload object and specify user-defined metadata
11034
11076
  #
11035
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
11036
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
11077
+ # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
11078
+ # # enabled, S3 returns version ID in response.
11037
11079
  #
11038
11080
  # resp = client.put_object({
11039
- # acl: "authenticated-read",
11040
11081
  # body: "filetoupload",
11041
11082
  # bucket: "examplebucket",
11042
11083
  # key: "exampleobject",
11084
+ # metadata: {
11085
+ # "metadata1" => "value1",
11086
+ # "metadata2" => "value2",
11087
+ # },
11043
11088
  # })
11044
11089
  #
11045
11090
  # resp.to_h outputs the following:
11046
11091
  # {
11047
11092
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11048
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
11093
+ # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
11049
11094
  # }
11050
11095
  #
11051
- # @example Example: To upload an object (specify optional headers)
11096
+ # @example Example: To upload an object and specify server-side encryption and object tags
11052
11097
  #
11053
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
11054
- # # storage class and use server-side encryption.
11098
+ # # The following example uploads and object. The request specifies the optional server-side encryption option. The request
11099
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
11055
11100
  #
11056
11101
  # resp = client.put_object({
11057
- # body: "HappyFace.jpg",
11102
+ # body: "filetoupload",
11058
11103
  # bucket: "examplebucket",
11059
- # key: "HappyFace.jpg",
11104
+ # key: "exampleobject",
11060
11105
  # server_side_encryption: "AES256",
11061
- # storage_class: "STANDARD_IA",
11106
+ # tagging: "key1=value1&key2=value2",
11062
11107
  # })
11063
11108
  #
11064
11109
  # resp.to_h outputs the following:
11065
11110
  # {
11066
11111
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11067
11112
  # server_side_encryption: "AES256",
11068
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
11113
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
11069
11114
  # }
11070
11115
  #
11071
- # @example Example: To upload an object and specify server-side encryption and object tags
11116
+ # @example Example: To upload an object
11072
11117
  #
11073
- # # The following example uploads and object. The request specifies the optional server-side encryption option. The request
11074
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
11118
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
11119
+ # # syntax. S3 returns VersionId of the newly created object.
11075
11120
  #
11076
11121
  # resp = client.put_object({
11077
- # body: "filetoupload",
11122
+ # body: "HappyFace.jpg",
11078
11123
  # bucket: "examplebucket",
11079
- # key: "exampleobject",
11080
- # server_side_encryption: "AES256",
11081
- # tagging: "key1=value1&key2=value2",
11124
+ # key: "HappyFace.jpg",
11082
11125
  # })
11083
11126
  #
11084
11127
  # resp.to_h outputs the following:
11085
11128
  # {
11086
11129
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11087
- # server_side_encryption: "AES256",
11088
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
11130
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
11089
11131
  # }
11090
11132
  #
11091
11133
  # @example Example: To create an object.
@@ -11104,25 +11146,22 @@ module Aws::S3
11104
11146
  # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
11105
11147
  # }
11106
11148
  #
11107
- # @example Example: To upload object and specify user-defined metadata
11149
+ # @example Example: To upload an object and specify canned ACL.
11108
11150
  #
11109
- # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
11110
- # # enabled, S3 returns version ID in response.
11151
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
11152
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
11111
11153
  #
11112
11154
  # resp = client.put_object({
11155
+ # acl: "authenticated-read",
11113
11156
  # body: "filetoupload",
11114
11157
  # bucket: "examplebucket",
11115
11158
  # key: "exampleobject",
11116
- # metadata: {
11117
- # "metadata1" => "value1",
11118
- # "metadata2" => "value2",
11119
- # },
11120
11159
  # })
11121
11160
  #
11122
11161
  # resp.to_h outputs the following:
11123
11162
  # {
11124
11163
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11125
- # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
11164
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
11126
11165
  # }
11127
11166
  #
11128
11167
  # @example Example: To upload an object and specify optional tags
@@ -11143,6 +11182,26 @@ module Aws::S3
11143
11182
  # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
11144
11183
  # }
11145
11184
  #
11185
+ # @example Example: To upload an object (specify optional headers)
11186
+ #
11187
+ # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
11188
+ # # storage class and use server-side encryption.
11189
+ #
11190
+ # resp = client.put_object({
11191
+ # body: "HappyFace.jpg",
11192
+ # bucket: "examplebucket",
11193
+ # key: "HappyFace.jpg",
11194
+ # server_side_encryption: "AES256",
11195
+ # storage_class: "STANDARD_IA",
11196
+ # })
11197
+ #
11198
+ # resp.to_h outputs the following:
11199
+ # {
11200
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11201
+ # server_side_encryption: "AES256",
11202
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
11203
+ # }
11204
+ #
11146
11205
  # @example Streaming a file from disk
11147
11206
  # # upload file from disk in a single request, may not exceed 5GB
11148
11207
  # File.open('/source/file/path', 'rb') do |file|
@@ -11873,13 +11932,14 @@ module Aws::S3
11873
11932
  #
11874
11933
  # * [GetObjectTagging][1]
11875
11934
  #
11876
- # ^
11935
+ # * [DeleteObjectTagging][4]
11877
11936
  #
11878
11937
  #
11879
11938
  #
11880
11939
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html
11881
11940
  # [2]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html
11882
11941
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html
11942
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html
11883
11943
  #
11884
11944
  # @option params [required, String] :bucket
11885
11945
  # The bucket name containing the object.
@@ -11926,6 +11986,17 @@ module Aws::S3
11926
11986
  # a different account, the request will fail with an HTTP `403 (Access
11927
11987
  # Denied)` error.
11928
11988
  #
11989
+ # @option params [String] :request_payer
11990
+ # Confirms that the requester knows that they will be charged for the
11991
+ # request. Bucket owners need not specify this parameter in their
11992
+ # requests. For information about downloading objects from requester
11993
+ # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
11994
+ # in the *Amazon S3 Developer Guide*.
11995
+ #
11996
+ #
11997
+ #
11998
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
11999
+ #
11929
12000
  # @return [Types::PutObjectTaggingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11930
12001
  #
11931
12002
  # * {Types::PutObjectTaggingOutput#version_id #version_id} => String
@@ -11973,6 +12044,7 @@ module Aws::S3
11973
12044
  # ],
11974
12045
  # },
11975
12046
  # expected_bucket_owner: "AccountId",
12047
+ # request_payer: "requester", # accepts requester
11976
12048
  # })
11977
12049
  #
11978
12050
  # @example Response structure
@@ -13566,7 +13638,7 @@ module Aws::S3
13566
13638
  params: params,
13567
13639
  config: config)
13568
13640
  context[:gem_name] = 'aws-sdk-s3'
13569
- context[:gem_version] = '1.86.2'
13641
+ context[:gem_version] = '1.89.0'
13570
13642
  Seahorse::Client::Request.new(handlers, context)
13571
13643
  end
13572
13644