aws-sdk-s3 1.81.0 → 1.83.2

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.
@@ -115,6 +115,7 @@ module Aws::S3
115
115
  DeleteBucketInventoryConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketInventoryConfigurationRequest')
116
116
  DeleteBucketLifecycleRequest = Shapes::StructureShape.new(name: 'DeleteBucketLifecycleRequest')
117
117
  DeleteBucketMetricsConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketMetricsConfigurationRequest')
118
+ DeleteBucketOwnershipControlsRequest = Shapes::StructureShape.new(name: 'DeleteBucketOwnershipControlsRequest')
118
119
  DeleteBucketPolicyRequest = Shapes::StructureShape.new(name: 'DeleteBucketPolicyRequest')
119
120
  DeleteBucketReplicationRequest = Shapes::StructureShape.new(name: 'DeleteBucketReplicationRequest')
120
121
  DeleteBucketRequest = Shapes::StructureShape.new(name: 'DeleteBucketRequest')
@@ -193,6 +194,8 @@ module Aws::S3
193
194
  GetBucketMetricsConfigurationOutput = Shapes::StructureShape.new(name: 'GetBucketMetricsConfigurationOutput')
194
195
  GetBucketMetricsConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketMetricsConfigurationRequest')
195
196
  GetBucketNotificationConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketNotificationConfigurationRequest')
197
+ GetBucketOwnershipControlsOutput = Shapes::StructureShape.new(name: 'GetBucketOwnershipControlsOutput')
198
+ GetBucketOwnershipControlsRequest = Shapes::StructureShape.new(name: 'GetBucketOwnershipControlsRequest')
196
199
  GetBucketPolicyOutput = Shapes::StructureShape.new(name: 'GetBucketPolicyOutput')
197
200
  GetBucketPolicyRequest = Shapes::StructureShape.new(name: 'GetBucketPolicyRequest')
198
201
  GetBucketPolicyStatusOutput = Shapes::StructureShape.new(name: 'GetBucketPolicyStatusOutput')
@@ -362,6 +365,7 @@ module Aws::S3
362
365
  ObjectLockRule = Shapes::StructureShape.new(name: 'ObjectLockRule')
363
366
  ObjectLockToken = Shapes::StringShape.new(name: 'ObjectLockToken')
364
367
  ObjectNotInActiveTierError = Shapes::StructureShape.new(name: 'ObjectNotInActiveTierError')
368
+ ObjectOwnership = Shapes::StringShape.new(name: 'ObjectOwnership')
365
369
  ObjectStorageClass = Shapes::StringShape.new(name: 'ObjectStorageClass')
366
370
  ObjectVersion = Shapes::StructureShape.new(name: 'ObjectVersion')
367
371
  ObjectVersionId = Shapes::StringShape.new(name: 'ObjectVersionId')
@@ -371,6 +375,9 @@ module Aws::S3
371
375
  OutputSerialization = Shapes::StructureShape.new(name: 'OutputSerialization')
372
376
  Owner = Shapes::StructureShape.new(name: 'Owner')
373
377
  OwnerOverride = Shapes::StringShape.new(name: 'OwnerOverride')
378
+ OwnershipControls = Shapes::StructureShape.new(name: 'OwnershipControls')
379
+ OwnershipControlsRule = Shapes::StructureShape.new(name: 'OwnershipControlsRule')
380
+ OwnershipControlsRules = Shapes::ListShape.new(name: 'OwnershipControlsRules', flattened: true)
374
381
  ParquetInput = Shapes::StructureShape.new(name: 'ParquetInput')
375
382
  Part = Shapes::StructureShape.new(name: 'Part')
376
383
  PartNumber = Shapes::IntegerShape.new(name: 'PartNumber')
@@ -399,6 +406,7 @@ module Aws::S3
399
406
  PutBucketMetricsConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketMetricsConfigurationRequest')
400
407
  PutBucketNotificationConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketNotificationConfigurationRequest')
401
408
  PutBucketNotificationRequest = Shapes::StructureShape.new(name: 'PutBucketNotificationRequest')
409
+ PutBucketOwnershipControlsRequest = Shapes::StructureShape.new(name: 'PutBucketOwnershipControlsRequest')
402
410
  PutBucketPolicyRequest = Shapes::StructureShape.new(name: 'PutBucketPolicyRequest')
403
411
  PutBucketReplicationRequest = Shapes::StructureShape.new(name: 'PutBucketReplicationRequest')
404
412
  PutBucketRequestPaymentRequest = Shapes::StructureShape.new(name: 'PutBucketRequestPaymentRequest')
@@ -839,6 +847,10 @@ module Aws::S3
839
847
  DeleteBucketMetricsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
840
848
  DeleteBucketMetricsConfigurationRequest.struct_class = Types::DeleteBucketMetricsConfigurationRequest
841
849
 
850
+ DeleteBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
851
+ DeleteBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
852
+ DeleteBucketOwnershipControlsRequest.struct_class = Types::DeleteBucketOwnershipControlsRequest
853
+
842
854
  DeleteBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
843
855
  DeleteBucketPolicyRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
844
856
  DeleteBucketPolicyRequest.struct_class = Types::DeleteBucketPolicyRequest
@@ -1057,6 +1069,15 @@ module Aws::S3
1057
1069
  GetBucketNotificationConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1058
1070
  GetBucketNotificationConfigurationRequest.struct_class = Types::GetBucketNotificationConfigurationRequest
1059
1071
 
1072
+ GetBucketOwnershipControlsOutput.add_member(:ownership_controls, Shapes::ShapeRef.new(shape: OwnershipControls, location_name: "OwnershipControls"))
1073
+ GetBucketOwnershipControlsOutput.struct_class = Types::GetBucketOwnershipControlsOutput
1074
+ GetBucketOwnershipControlsOutput[:payload] = :ownership_controls
1075
+ GetBucketOwnershipControlsOutput[:payload_member] = GetBucketOwnershipControlsOutput.member(:ownership_controls)
1076
+
1077
+ GetBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1078
+ GetBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1079
+ GetBucketOwnershipControlsRequest.struct_class = Types::GetBucketOwnershipControlsRequest
1080
+
1060
1081
  GetBucketPolicyOutput.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, location_name: "Policy"))
1061
1082
  GetBucketPolicyOutput.struct_class = Types::GetBucketPolicyOutput
1062
1083
  GetBucketPolicyOutput[:payload] = :policy
@@ -1692,6 +1713,14 @@ module Aws::S3
1692
1713
  Owner.add_member(:id, Shapes::ShapeRef.new(shape: ID, location_name: "ID"))
1693
1714
  Owner.struct_class = Types::Owner
1694
1715
 
1716
+ OwnershipControls.add_member(:rules, Shapes::ShapeRef.new(shape: OwnershipControlsRules, required: true, location_name: "Rule"))
1717
+ OwnershipControls.struct_class = Types::OwnershipControls
1718
+
1719
+ OwnershipControlsRule.add_member(:object_ownership, Shapes::ShapeRef.new(shape: ObjectOwnership, required: true, location_name: "ObjectOwnership"))
1720
+ OwnershipControlsRule.struct_class = Types::OwnershipControlsRule
1721
+
1722
+ OwnershipControlsRules.member = Shapes::ShapeRef.new(shape: OwnershipControlsRule)
1723
+
1695
1724
  ParquetInput.struct_class = Types::ParquetInput
1696
1725
 
1697
1726
  Part.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location_name: "PartNumber"))
@@ -1818,6 +1847,14 @@ module Aws::S3
1818
1847
  PutBucketNotificationRequest[:payload] = :notification_configuration
1819
1848
  PutBucketNotificationRequest[:payload_member] = PutBucketNotificationRequest.member(:notification_configuration)
1820
1849
 
1850
+ PutBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1851
+ PutBucketOwnershipControlsRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1852
+ PutBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1853
+ PutBucketOwnershipControlsRequest.add_member(:ownership_controls, Shapes::ShapeRef.new(shape: OwnershipControls, required: true, location_name: "OwnershipControls", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1854
+ PutBucketOwnershipControlsRequest.struct_class = Types::PutBucketOwnershipControlsRequest
1855
+ PutBucketOwnershipControlsRequest[:payload] = :ownership_controls
1856
+ PutBucketOwnershipControlsRequest[:payload_member] = PutBucketOwnershipControlsRequest.member(:ownership_controls)
1857
+
1821
1858
  PutBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1822
1859
  PutBucketPolicyRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, deprecated: true, location: "header", location_name: "Content-MD5", metadata: {"deprecatedMessage"=>"Content-MD5 header will now be automatically computed and injected in associated operation's Http request."}))
1823
1860
  PutBucketPolicyRequest.add_member(:confirm_remove_self_bucket_access, Shapes::ShapeRef.new(shape: ConfirmRemoveSelfBucketAccess, location: "header", location_name: "x-amz-confirm-remove-self-bucket-access"))
@@ -2415,6 +2452,14 @@ module Aws::S3
2415
2452
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2416
2453
  end)
2417
2454
 
2455
+ api.add_operation(:delete_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
2456
+ o.name = "DeleteBucketOwnershipControls"
2457
+ o.http_method = "DELETE"
2458
+ o.http_request_uri = "/{Bucket}?ownershipControls"
2459
+ o.input = Shapes::ShapeRef.new(shape: DeleteBucketOwnershipControlsRequest)
2460
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2461
+ end)
2462
+
2418
2463
  api.add_operation(:delete_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2419
2464
  o.name = "DeleteBucketPolicy"
2420
2465
  o.http_method = "DELETE"
@@ -2586,6 +2631,14 @@ module Aws::S3
2586
2631
  o.output = Shapes::ShapeRef.new(shape: NotificationConfiguration)
2587
2632
  end)
2588
2633
 
2634
+ api.add_operation(:get_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
2635
+ o.name = "GetBucketOwnershipControls"
2636
+ o.http_method = "GET"
2637
+ o.http_request_uri = "/{Bucket}?ownershipControls"
2638
+ o.input = Shapes::ShapeRef.new(shape: GetBucketOwnershipControlsRequest)
2639
+ o.output = Shapes::ShapeRef.new(shape: GetBucketOwnershipControlsOutput)
2640
+ end)
2641
+
2589
2642
  api.add_operation(:get_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2590
2643
  o.name = "GetBucketPolicy"
2591
2644
  o.http_method = "GET"
@@ -2941,6 +2994,14 @@ module Aws::S3
2941
2994
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2942
2995
  end)
2943
2996
 
2997
+ api.add_operation(:put_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
2998
+ o.name = "PutBucketOwnershipControls"
2999
+ o.http_method = "PUT"
3000
+ o.http_request_uri = "/{Bucket}?ownershipControls"
3001
+ o.input = Shapes::ShapeRef.new(shape: PutBucketOwnershipControlsRequest)
3002
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3003
+ end)
3004
+
2944
3005
  api.add_operation(:put_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2945
3006
  o.name = "PutBucketPolicy"
2946
3007
  o.http_method = "PUT"
@@ -29,6 +29,6 @@ require 'aws-sdk-s3/customizations/types/list_object_versions_output'
29
29
  Aws::S3::ObjectVersion::Collection,
30
30
  ].each do |klass|
31
31
  klass.send(:alias_method, :delete, :batch_delete!)
32
- klass.send(:extend, Aws::Deprecations)
32
+ klass.extend Aws::Deprecations
33
33
  klass.send(:deprecated, :delete, use: :batch_delete!)
34
34
  end
@@ -12,13 +12,12 @@ module Aws
12
12
  # Define a new initialize method that extracts out a bucket ARN.
13
13
  define_method(:initialize) do |*args|
14
14
  old_initialize.bind(self).call(*args)
15
- bucket_name, region, arn = Plugins::BucketARN.resolve_arn!(
15
+ resolved_region, arn = Plugins::ARN.resolve_arn!(
16
16
  name,
17
17
  client.config.region,
18
18
  client.config.s3_use_arn_region
19
19
  )
20
- @name = bucket_name
21
- @client.config.region = region
20
+ @resolved_region = resolved_region
22
21
  @arn = arn
23
22
  end
24
23
 
@@ -102,7 +101,11 @@ module Aws
102
101
  if options[:virtual_host]
103
102
  "http://#{name}"
104
103
  elsif @arn
105
- Plugins::BucketARN.resolve_url!(URI.parse(s3_bucket_url), @arn).to_s
104
+ Plugins::ARN.resolve_url!(
105
+ client.config.endpoint.dup,
106
+ @arn,
107
+ @resolved_region
108
+ ).to_s
106
109
  else
107
110
  s3_bucket_url
108
111
  end
@@ -282,8 +282,8 @@ module Aws
282
282
  # # small files are uploaded in a single API call
283
283
  # obj.upload_file('/path/to/file')
284
284
  #
285
- # Files larger than `:multipart_threshold` are uploaded using the
286
- # Amazon S3 multipart upload APIs.
285
+ # Files larger than or equal to `:multipart_threshold` are uploaded
286
+ # using the Amazon S3 multipart upload APIs.
287
287
  #
288
288
  # # large files are automatically split into parts
289
289
  # # and the parts are uploaded in parallel
@@ -313,7 +313,8 @@ module Aws
313
313
  # will be empty.
314
314
  #
315
315
  # @option options [Integer] :multipart_threshold (15728640) Files larger
316
- # than `:multipart_threshold` are uploaded using the S3 multipart APIs.
316
+ # than or equal to `:multipart_threshold` are uploaded using the S3
317
+ # multipart APIs.
317
318
  # Default threshold is 15MB.
318
319
  #
319
320
  # @option options [Integer] :thread_count (10) The number of parallel
@@ -22,7 +22,7 @@ module Aws
22
22
  # @return [Client]
23
23
  attr_reader :client
24
24
 
25
- # @return [Integer] Files larger than this in bytes are uploaded
25
+ # @return [Integer] Files larger than or equal to this in bytes are uploaded
26
26
  # using a {MultipartFileUploader}.
27
27
  attr_reader :multipart_threshold
28
28
 
@@ -241,9 +241,9 @@ module Aws::S3
241
241
  # Resource Name (ARN) of the object as accessed through the access
242
242
  # point, in the format
243
243
  # `arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>`.
244
- # For example, to copy the object `reports/january.pdf` through the
245
- # access point `my-access-point` owned by account `123456789012` in
246
- # Region `us-west-2`, use the URL encoding of
244
+ # For example, to copy the object `reports/january.pdf` through access
245
+ # point `my-access-point` owned by account `123456789012` in Region
246
+ # `us-west-2`, use the URL encoding of
247
247
  # `arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf`.
248
248
  # The value must be URL encoded.
249
249
  #
@@ -252,6 +252,15 @@ module Aws::S3
252
252
  #
253
253
  # </note>
254
254
  #
255
+ # Alternatively, for objects accessed through Amazon S3 on Outposts,
256
+ # specify the ARN of the object as accessed in the format
257
+ # `arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>`.
258
+ # For example, to copy the object `reports/january.pdf` through
259
+ # outpost `my-outpost` owned by account `123456789012` in Region
260
+ # `us-west-2`, use the URL encoding of
261
+ # `arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf`.
262
+ # The value must be URL encoded.
263
+ #
255
264
  # To copy a specific version of an object, append
256
265
  # `?versionId=<version-id>` to the value (for example,
257
266
  # `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
@@ -530,7 +530,7 @@ module Aws::S3
530
530
  # metadata_directive: "COPY", # accepts COPY, REPLACE
531
531
  # tagging_directive: "COPY", # accepts COPY, REPLACE
532
532
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
533
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
533
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
534
534
  # website_redirect_location: "WebsiteRedirectLocation",
535
535
  # sse_customer_algorithm: "SSECustomerAlgorithm",
536
536
  # sse_customer_key: "SSECustomerKey",
@@ -551,6 +551,8 @@ module Aws::S3
551
551
  # @param [Hash] options ({})
552
552
  # @option options [String] :acl
553
553
  # The canned ACL to apply to the object.
554
+ #
555
+ # This action is not supported by Amazon S3 on Outposts.
554
556
  # @option options [String] :cache_control
555
557
  # Specifies caching behavior along the request/reply chain.
556
558
  # @option options [String] :content_disposition
@@ -590,6 +592,15 @@ module Aws::S3
590
592
  #
591
593
  # </note>
592
594
  #
595
+ # Alternatively, for objects accessed through Amazon S3 on Outposts,
596
+ # specify the ARN of the object as accessed in the format
597
+ # `arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>`.
598
+ # For example, to copy the object `reports/january.pdf` through
599
+ # outpost `my-outpost` owned by account `123456789012` in Region
600
+ # `us-west-2`, use the URL encoding of
601
+ # `arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf`.
602
+ # The value must be URL encoded.
603
+ #
593
604
  # To copy a specific version of an object, append
594
605
  # `?versionId=<version-id>` to the value (for example,
595
606
  # `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
@@ -614,12 +625,20 @@ module Aws::S3
614
625
  # @option options [String] :grant_full_control
615
626
  # Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
616
627
  # object.
628
+ #
629
+ # This action is not supported by Amazon S3 on Outposts.
617
630
  # @option options [String] :grant_read
618
631
  # Allows grantee to read the object data and its metadata.
632
+ #
633
+ # This action is not supported by Amazon S3 on Outposts.
619
634
  # @option options [String] :grant_read_acp
620
635
  # Allows grantee to read the object ACL.
636
+ #
637
+ # This action is not supported by Amazon S3 on Outposts.
621
638
  # @option options [String] :grant_write_acp
622
639
  # Allows grantee to write the ACL for the applicable object.
640
+ #
641
+ # This action is not supported by Amazon S3 on Outposts.
623
642
  # @option options [Hash<String,String>] :metadata
624
643
  # A map of metadata to store with the object in S3.
625
644
  # @option options [String] :metadata_directive
@@ -632,7 +651,16 @@ module Aws::S3
632
651
  # The server-side encryption algorithm used when storing this object in
633
652
  # Amazon S3 (for example, AES256, aws:kms).
634
653
  # @option options [String] :storage_class
635
- # The type of storage to use for the object. Defaults to 'STANDARD'.
654
+ # By default, Amazon S3 uses the STANDARD Storage Class to store newly
655
+ # created objects. The STANDARD storage class provides high durability
656
+ # and high availability. Depending on performance needs, you can specify
657
+ # a different Storage Class. Amazon S3 on Outposts only uses the
658
+ # OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
659
+ # in the *Amazon S3 Service Developer Guide*.
660
+ #
661
+ #
662
+ #
663
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
636
664
  # @option options [String] :website_redirect_location
637
665
  # If the bucket is configured as a website, redirects requests for this
638
666
  # object to another object in the same bucket or to an external URL.
@@ -881,7 +909,7 @@ module Aws::S3
881
909
  # "MetadataKey" => "MetadataValue",
882
910
  # },
883
911
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
884
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
912
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
885
913
  # website_redirect_location: "WebsiteRedirectLocation",
886
914
  # sse_customer_algorithm: "SSECustomerAlgorithm",
887
915
  # sse_customer_key: "SSECustomerKey",
@@ -898,6 +926,8 @@ module Aws::S3
898
926
  # @param [Hash] options ({})
899
927
  # @option options [String] :acl
900
928
  # The canned ACL to apply to the object.
929
+ #
930
+ # This action is not supported by Amazon S3 on Outposts.
901
931
  # @option options [String] :cache_control
902
932
  # Specifies caching behavior along the request/reply chain.
903
933
  # @option options [String] :content_disposition
@@ -915,19 +945,36 @@ module Aws::S3
915
945
  # @option options [String] :grant_full_control
916
946
  # Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
917
947
  # object.
948
+ #
949
+ # This action is not supported by Amazon S3 on Outposts.
918
950
  # @option options [String] :grant_read
919
951
  # Allows grantee to read the object data and its metadata.
952
+ #
953
+ # This action is not supported by Amazon S3 on Outposts.
920
954
  # @option options [String] :grant_read_acp
921
955
  # Allows grantee to read the object ACL.
956
+ #
957
+ # This action is not supported by Amazon S3 on Outposts.
922
958
  # @option options [String] :grant_write_acp
923
959
  # Allows grantee to write the ACL for the applicable object.
960
+ #
961
+ # This action is not supported by Amazon S3 on Outposts.
924
962
  # @option options [Hash<String,String>] :metadata
925
963
  # A map of metadata to store with the object in S3.
926
964
  # @option options [String] :server_side_encryption
927
965
  # The server-side encryption algorithm used when storing this object in
928
966
  # Amazon S3 (for example, AES256, aws:kms).
929
967
  # @option options [String] :storage_class
930
- # The type of storage to use for the object. Defaults to 'STANDARD'.
968
+ # By default, Amazon S3 uses the STANDARD Storage Class to store newly
969
+ # created objects. The STANDARD storage class provides high durability
970
+ # and high availability. Depending on performance needs, you can specify
971
+ # a different Storage Class. Amazon S3 on Outposts only uses the
972
+ # OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
973
+ # in the *Amazon S3 Service Developer Guide*.
974
+ #
975
+ #
976
+ #
977
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
931
978
  # @option options [String] :website_redirect_location
932
979
  # If the bucket is configured as a website, redirects requests for this
933
980
  # object to another object in the same bucket or to an external URL.
@@ -1021,7 +1068,7 @@ module Aws::S3
1021
1068
  # "MetadataKey" => "MetadataValue",
1022
1069
  # },
1023
1070
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
1024
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
1071
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
1025
1072
  # website_redirect_location: "WebsiteRedirectLocation",
1026
1073
  # sse_customer_algorithm: "SSECustomerAlgorithm",
1027
1074
  # sse_customer_key: "SSECustomerKey",
@@ -1040,6 +1087,8 @@ module Aws::S3
1040
1087
  # The canned ACL to apply to the object. For more information, see
1041
1088
  # [Canned ACL][1].
1042
1089
  #
1090
+ # This action is not supported by Amazon S3 on Outposts.
1091
+ #
1043
1092
  #
1044
1093
  #
1045
1094
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
@@ -1111,20 +1160,36 @@ module Aws::S3
1111
1160
  # @option options [String] :grant_full_control
1112
1161
  # Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
1113
1162
  # object.
1163
+ #
1164
+ # This action is not supported by Amazon S3 on Outposts.
1114
1165
  # @option options [String] :grant_read
1115
1166
  # Allows grantee to read the object data and its metadata.
1167
+ #
1168
+ # This action is not supported by Amazon S3 on Outposts.
1116
1169
  # @option options [String] :grant_read_acp
1117
1170
  # Allows grantee to read the object ACL.
1171
+ #
1172
+ # This action is not supported by Amazon S3 on Outposts.
1118
1173
  # @option options [String] :grant_write_acp
1119
1174
  # Allows grantee to write the ACL for the applicable object.
1175
+ #
1176
+ # This action is not supported by Amazon S3 on Outposts.
1120
1177
  # @option options [Hash<String,String>] :metadata
1121
1178
  # A map of metadata to store with the object in S3.
1122
1179
  # @option options [String] :server_side_encryption
1123
1180
  # The server-side encryption algorithm used when storing this object in
1124
1181
  # Amazon S3 (for example, AES256, aws:kms).
1125
1182
  # @option options [String] :storage_class
1126
- # If you don't specify, S3 Standard is the default storage class.
1127
- # Amazon S3 supports other storage classes.
1183
+ # By default, Amazon S3 uses the STANDARD Storage Class to store newly
1184
+ # created objects. The STANDARD storage class provides high durability
1185
+ # and high availability. Depending on performance needs, you can specify
1186
+ # a different Storage Class. Amazon S3 on Outposts only uses the
1187
+ # OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
1188
+ # in the *Amazon S3 Service Developer Guide*.
1189
+ #
1190
+ #
1191
+ #
1192
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
1128
1193
  # @option options [String] :website_redirect_location
1129
1194
  # If the bucket is configured as a website, redirects requests for this
1130
1195
  # object to another object in the same bucket or to an external URL.
@@ -1298,7 +1363,7 @@ module Aws::S3
1298
1363
  # value: "MetadataValue",
1299
1364
  # },
1300
1365
  # ],
1301
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
1366
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
1302
1367
  # },
1303
1368
  # },
1304
1369
  # },
@@ -253,15 +253,23 @@ module Aws::S3
253
253
  # @option options [String] :grant_full_control
254
254
  # Allows grantee the read, write, read ACP, and write ACP permissions on
255
255
  # the bucket.
256
+ #
257
+ # This action is not supported by Amazon S3 on Outposts.
256
258
  # @option options [String] :grant_read
257
259
  # Allows grantee to list the objects in the bucket.
260
+ #
261
+ # This action is not supported by Amazon S3 on Outposts.
258
262
  # @option options [String] :grant_read_acp
259
263
  # Allows grantee to read the bucket ACL.
264
+ #
265
+ # This action is not supported by Amazon S3 on Outposts.
260
266
  # @option options [String] :grant_write
261
267
  # Allows grantee to create, overwrite, and delete any object in the
262
268
  # bucket.
263
269
  # @option options [String] :grant_write_acp
264
270
  # Allows grantee to write the ACL for the applicable bucket.
271
+ #
272
+ # This action is not supported by Amazon S3 on Outposts.
265
273
  # @option options [String] :request_payer
266
274
  # Confirms that the requester knows that they will be charged for the
267
275
  # request. Bucket owners need not specify this parameter in their