aws-sdk-s3 1.41.0 → 1.42.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.
@@ -298,7 +298,9 @@ module Aws::S3
298
298
  # Size of the body in bytes. This parameter is useful when the size of
299
299
  # the body cannot be determined automatically.
300
300
  # @option options [String] :content_md5
301
- # The base64-encoded 128-bit MD5 digest of the part data.
301
+ # The base64-encoded 128-bit MD5 digest of the part data. This parameter
302
+ # is auto-populated when using the command from the CLI. This parameted
303
+ # is required if object lock parameters are specified.
302
304
  # @option options [String] :sse_customer_algorithm
303
305
  # Specifies the algorithm to use to when encrypting the object (e.g.,
304
306
  # AES256).
@@ -216,13 +216,13 @@ module Aws::S3
216
216
  data[:parts_count]
217
217
  end
218
218
 
219
- # The Object Lock mode currently in place for this object.
219
+ # The object lock mode currently in place for this object.
220
220
  # @return [String]
221
221
  def object_lock_mode
222
222
  data[:object_lock_mode]
223
223
  end
224
224
 
225
- # The date and time when this object's Object Lock will expire.
225
+ # The date and time when this object's object lock expires.
226
226
  # @return [Time]
227
227
  def object_lock_retain_until_date
228
228
  data[:object_lock_retain_until_date]
@@ -292,10 +292,10 @@ module Aws::S3
292
292
  # @option options [Proc] :before_attempt
293
293
  # @option options [Proc] :before_wait
294
294
  # @return [Object]
295
- def wait_until_exists(options = {})
295
+ def wait_until_exists(options = {}, &block)
296
296
  options, params = separate_params_and_options(options)
297
297
  waiter = Waiters::ObjectExists.new(options)
298
- yield_waiter_and_warn(waiter, &Proc.new) if block_given?
298
+ yield_waiter_and_warn(waiter, &block) if block_given?
299
299
  waiter.wait(params.merge(bucket: @bucket_name,
300
300
  key: @key))
301
301
  Object.new({
@@ -311,10 +311,10 @@ module Aws::S3
311
311
  # @option options [Proc] :before_attempt
312
312
  # @option options [Proc] :before_wait
313
313
  # @return [Object]
314
- def wait_until_not_exists(options = {})
314
+ def wait_until_not_exists(options = {}, &block)
315
315
  options, params = separate_params_and_options(options)
316
316
  waiter = Waiters::ObjectNotExists.new(options)
317
- yield_waiter_and_warn(waiter, &Proc.new) if block_given?
317
+ yield_waiter_and_warn(waiter, &block) if block_given?
318
318
  waiter.wait(params.merge(bucket: @bucket_name,
319
319
  key: @key))
320
320
  Object.new({
@@ -558,9 +558,9 @@ module Aws::S3
558
558
  # in conjunction with the TaggingDirective. The tag-set must be encoded
559
559
  # as URL Query parameters
560
560
  # @option options [String] :object_lock_mode
561
- # The Object Lock mode that you want to apply to the copied object.
561
+ # The object lock mode that you want to apply to the copied object.
562
562
  # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
563
- # The date and time when you want the copied object's Object Lock to
563
+ # The date and time when you want the copied object's object lock to
564
564
  # expire.
565
565
  # @option options [String] :object_lock_legal_hold_status
566
566
  # Specifies whether you want to apply a Legal Hold to the copied object.
@@ -595,7 +595,7 @@ module Aws::S3
595
595
  # buckets can be found at
596
596
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
597
597
  # @option options [Boolean] :bypass_governance_retention
598
- # Indicates whether S3 Object Lock should bypass Governance-mode
598
+ # Indicates whether Amazon S3 object lock should bypass governance-mode
599
599
  # restrictions to process this operation.
600
600
  # @return [Types::DeleteObjectOutput]
601
601
  def delete(options = {})
@@ -789,10 +789,10 @@ module Aws::S3
789
789
  # The tag-set for the object. The tag-set must be encoded as URL Query
790
790
  # parameters
791
791
  # @option options [String] :object_lock_mode
792
- # Specifies the Object Lock mode that you want to apply to the uploaded
792
+ # Specifies the object lock mode that you want to apply to the uploaded
793
793
  # object.
794
794
  # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
795
- # Specifies the date and time when you want the Object Lock to expire.
795
+ # Specifies the date and time when you want the object lock to expire.
796
796
  # @option options [String] :object_lock_legal_hold_status
797
797
  # Specifies whether you want to apply a Legal Hold to the uploaded
798
798
  # object.
@@ -864,7 +864,8 @@ module Aws::S3
864
864
  # the body cannot be determined automatically.
865
865
  # @option options [String] :content_md5
866
866
  # The base64-encoded 128-bit MD5 digest of the part data. This parameter
867
- # is auto-populated when using the command from the CLI
867
+ # is auto-populated when using the command from the CLI. This parameted
868
+ # is required if object lock parameters are specified.
868
869
  # @option options [String] :content_type
869
870
  # A standard MIME type describing the format of the object data.
870
871
  # @option options [Time,DateTime,Date,Integer,String] :expires
@@ -918,9 +919,9 @@ module Aws::S3
918
919
  # The tag-set for the object. The tag-set must be encoded as URL Query
919
920
  # parameters. (For example, "Key1=Value1")
920
921
  # @option options [String] :object_lock_mode
921
- # The Object Lock mode that you want to apply to this object.
922
+ # The object lock mode that you want to apply to this object.
922
923
  # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
923
- # The date and time when you want this object's Object Lock to expire.
924
+ # The date and time when you want this object's object lock to expire.
924
925
  # @option options [String] :object_lock_legal_hold_status
925
926
  # The Legal Hold status that you want to apply to the specified object.
926
927
  # @return [Types::PutObjectOutput]
@@ -1023,7 +1024,6 @@ module Aws::S3
1023
1024
  # @param [Hash] options ({})
1024
1025
  # @option options [String] :version_id
1025
1026
  # @option options [Types::RestoreRequest] :restore_request
1026
- # Container for restore job parameters.
1027
1027
  # @option options [String] :request_payer
1028
1028
  # Confirms that the requester knows that she or he will be charged for
1029
1029
  # the request. Bucket owners need not specify this parameter in their
@@ -1163,7 +1163,7 @@ module Aws::S3
1163
1163
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
1164
1164
  # @option options [Boolean] :bypass_governance_retention
1165
1165
  # Specifies whether you want to delete this object even if it has a
1166
- # Governance-type Object Lock in place. You must have sufficient
1166
+ # Governance-type object lock in place. You must have sufficient
1167
1167
  # permissions to perform this operation.
1168
1168
  # @return [void]
1169
1169
  def batch_delete!(options = {})
@@ -227,6 +227,8 @@ module Aws::S3
227
227
  # @option options [String] :acl
228
228
  # The canned ACL to apply to the object.
229
229
  # @option options [Types::AccessControlPolicy] :access_control_policy
230
+ # Contains the elements that set the ACL permissions for an object per
231
+ # grantee.
230
232
  # @option options [String] :content_md5
231
233
  # @option options [String] :grant_full_control
232
234
  # Allows grantee the read, write, read ACP, and write ACP permissions on
@@ -118,10 +118,10 @@ module Aws::S3
118
118
  # @option options [Proc] :before_attempt
119
119
  # @option options [Proc] :before_wait
120
120
  # @return [ObjectSummary]
121
- def wait_until_exists(options = {})
121
+ def wait_until_exists(options = {}, &block)
122
122
  options, params = separate_params_and_options(options)
123
123
  waiter = Waiters::ObjectExists.new(options)
124
- yield_waiter_and_warn(waiter, &Proc.new) if block_given?
124
+ yield_waiter_and_warn(waiter, &block) if block_given?
125
125
  waiter.wait(params.merge(bucket: @bucket_name,
126
126
  key: @key))
127
127
  ObjectSummary.new({
@@ -137,10 +137,10 @@ module Aws::S3
137
137
  # @option options [Proc] :before_attempt
138
138
  # @option options [Proc] :before_wait
139
139
  # @return [ObjectSummary]
140
- def wait_until_not_exists(options = {})
140
+ def wait_until_not_exists(options = {}, &block)
141
141
  options, params = separate_params_and_options(options)
142
142
  waiter = Waiters::ObjectNotExists.new(options)
143
- yield_waiter_and_warn(waiter, &Proc.new) if block_given?
143
+ yield_waiter_and_warn(waiter, &block) if block_given?
144
144
  waiter.wait(params.merge(bucket: @bucket_name,
145
145
  key: @key))
146
146
  ObjectSummary.new({
@@ -384,9 +384,9 @@ module Aws::S3
384
384
  # in conjunction with the TaggingDirective. The tag-set must be encoded
385
385
  # as URL Query parameters
386
386
  # @option options [String] :object_lock_mode
387
- # The Object Lock mode that you want to apply to the copied object.
387
+ # The object lock mode that you want to apply to the copied object.
388
388
  # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
389
- # The date and time when you want the copied object's Object Lock to
389
+ # The date and time when you want the copied object's object lock to
390
390
  # expire.
391
391
  # @option options [String] :object_lock_legal_hold_status
392
392
  # Specifies whether you want to apply a Legal Hold to the copied object.
@@ -421,7 +421,7 @@ module Aws::S3
421
421
  # buckets can be found at
422
422
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
423
423
  # @option options [Boolean] :bypass_governance_retention
424
- # Indicates whether S3 Object Lock should bypass Governance-mode
424
+ # Indicates whether Amazon S3 object lock should bypass governance-mode
425
425
  # restrictions to process this operation.
426
426
  # @return [Types::DeleteObjectOutput]
427
427
  def delete(options = {})
@@ -615,10 +615,10 @@ module Aws::S3
615
615
  # The tag-set for the object. The tag-set must be encoded as URL Query
616
616
  # parameters
617
617
  # @option options [String] :object_lock_mode
618
- # Specifies the Object Lock mode that you want to apply to the uploaded
618
+ # Specifies the object lock mode that you want to apply to the uploaded
619
619
  # object.
620
620
  # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
621
- # Specifies the date and time when you want the Object Lock to expire.
621
+ # Specifies the date and time when you want the object lock to expire.
622
622
  # @option options [String] :object_lock_legal_hold_status
623
623
  # Specifies whether you want to apply a Legal Hold to the uploaded
624
624
  # object.
@@ -690,7 +690,8 @@ module Aws::S3
690
690
  # the body cannot be determined automatically.
691
691
  # @option options [String] :content_md5
692
692
  # The base64-encoded 128-bit MD5 digest of the part data. This parameter
693
- # is auto-populated when using the command from the CLI
693
+ # is auto-populated when using the command from the CLI. This parameted
694
+ # is required if object lock parameters are specified.
694
695
  # @option options [String] :content_type
695
696
  # A standard MIME type describing the format of the object data.
696
697
  # @option options [Time,DateTime,Date,Integer,String] :expires
@@ -744,9 +745,9 @@ module Aws::S3
744
745
  # The tag-set for the object. The tag-set must be encoded as URL Query
745
746
  # parameters. (For example, "Key1=Value1")
746
747
  # @option options [String] :object_lock_mode
747
- # The Object Lock mode that you want to apply to this object.
748
+ # The object lock mode that you want to apply to this object.
748
749
  # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
749
- # The date and time when you want this object's Object Lock to expire.
750
+ # The date and time when you want this object's object lock to expire.
750
751
  # @option options [String] :object_lock_legal_hold_status
751
752
  # The Legal Hold status that you want to apply to the specified object.
752
753
  # @return [Types::PutObjectOutput]
@@ -849,7 +850,6 @@ module Aws::S3
849
850
  # @param [Hash] options ({})
850
851
  # @option options [String] :version_id
851
852
  # @option options [Types::RestoreRequest] :restore_request
852
- # Container for restore job parameters.
853
853
  # @option options [String] :request_payer
854
854
  # Confirms that the requester knows that she or he will be charged for
855
855
  # the request. Bucket owners need not specify this parameter in their
@@ -998,7 +998,7 @@ module Aws::S3
998
998
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
999
999
  # @option options [Boolean] :bypass_governance_retention
1000
1000
  # Specifies whether you want to delete this object even if it has a
1001
- # Governance-type Object Lock in place. You must have sufficient
1001
+ # Governance-type object lock in place. You must have sufficient
1002
1002
  # permissions to perform this operation.
1003
1003
  # @return [void]
1004
1004
  def batch_delete!(options = {})
@@ -240,7 +240,7 @@ module Aws::S3
240
240
  # buckets can be found at
241
241
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
242
242
  # @option options [Boolean] :bypass_governance_retention
243
- # Indicates whether S3 Object Lock should bypass Governance-mode
243
+ # Indicates whether Amazon S3 object lock should bypass governance-mode
244
244
  # restrictions to process this operation.
245
245
  # @return [Types::DeleteObjectOutput]
246
246
  def delete(options = {})
@@ -483,7 +483,7 @@ module Aws::S3
483
483
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
484
484
  # @option options [Boolean] :bypass_governance_retention
485
485
  # Specifies whether you want to delete this object even if it has a
486
- # Governance-type Object Lock in place. You must have sufficient
486
+ # Governance-type object lock in place. You must have sufficient
487
487
  # permissions to perform this operation.
488
488
  # @return [void]
489
489
  def batch_delete!(options = {})
@@ -54,8 +54,8 @@ module Aws::S3
54
54
  # @option options [String] :grant_write_acp
55
55
  # Allows grantee to write the ACL for the applicable bucket.
56
56
  # @option options [Boolean] :object_lock_enabled_for_bucket
57
- # Specifies whether you want S3 Object Lock to be enabled for the new
58
- # bucket.
57
+ # Specifies whether you want Amazon S3 object lock to be enabled for the
58
+ # new bucket.
59
59
  # @return [Bucket]
60
60
  def create_bucket(options = {})
61
61
  resp = @client.create_bucket(options)
@@ -8,9 +8,15 @@
8
8
  module Aws::S3
9
9
  module Types
10
10
 
11
- # Specifies the days since the initiation of an Incomplete Multipart
12
- # Upload that Lifecycle will wait before permanently removing all parts
13
- # of the upload.
11
+ # Specifies the days since the initiation of an incomplete multipart
12
+ # upload that Amazon S3 will wait before permanently removing all parts
13
+ # of the upload. For more information, see [ Aborting Incomplete
14
+ # Multipart Uploads Using a Bucket Lifecycle Policy][1] in the *Amazon
15
+ # Simple Storage Service Developer Guide*.
16
+ #
17
+ #
18
+ #
19
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config
14
20
  #
15
21
  # @note When making an API call, you may pass AbortIncompleteMultipartUpload
16
22
  # data as a hash:
@@ -20,8 +26,8 @@ module Aws::S3
20
26
  # }
21
27
  #
22
28
  # @!attribute [rw] days_after_initiation
23
- # Indicates the number of days that must pass since initiation for
24
- # Lifecycle to abort an Incomplete Multipart Upload.
29
+ # Specifies the number of days after which Amazon S3 aborts an
30
+ # incomplete multipart upload.
25
31
  # @return [Integer]
26
32
  #
27
33
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AbortIncompleteMultipartUpload AWS API Documentation
@@ -54,12 +60,15 @@ module Aws::S3
54
60
  # }
55
61
  #
56
62
  # @!attribute [rw] bucket
63
+ # Name of the bucket to which the multipart upload was initiated.
57
64
  # @return [String]
58
65
  #
59
66
  # @!attribute [rw] key
67
+ # Key of the object for which the multipart upload was initiated.
60
68
  # @return [String]
61
69
  #
62
70
  # @!attribute [rw] upload_id
71
+ # Upload ID that identifies the multipart upload.
63
72
  # @return [String]
64
73
  #
65
74
  # @!attribute [rw] request_payer
@@ -80,6 +89,14 @@ module Aws::S3
80
89
  include Aws::Structure
81
90
  end
82
91
 
92
+ # Configures the transfer acceleration state for an Amazon S3 bucket.
93
+ # For more information, see [Amazon S3 Transfer Acceleration][1] in the
94
+ # *Amazon Simple Storage Service Developer Guide*.
95
+ #
96
+ #
97
+ #
98
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html
99
+ #
83
100
  # @note When making an API call, you may pass AccelerateConfiguration
84
101
  # data as a hash:
85
102
  #
@@ -88,7 +105,7 @@ module Aws::S3
88
105
  # }
89
106
  #
90
107
  # @!attribute [rw] status
91
- # The accelerate configuration of the bucket.
108
+ # Specifies the transfer acceleration status of the bucket.
92
109
  # @return [String]
93
110
  #
94
111
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AccelerateConfiguration AWS API Documentation
@@ -98,6 +115,9 @@ module Aws::S3
98
115
  include Aws::Structure
99
116
  end
100
117
 
118
+ # Contains the elements that set the ACL permissions for an object per
119
+ # grantee.
120
+ #
101
121
  # @note When making an API call, you may pass AccessControlPolicy
102
122
  # data as a hash:
103
123
  #
@@ -125,6 +145,7 @@ module Aws::S3
125
145
  # @return [Array<Types::Grant>]
126
146
  #
127
147
  # @!attribute [rw] owner
148
+ # Container for the bucket owner's display name and ID.
128
149
  # @return [Types::Owner]
129
150
  #
130
151
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AccessControlPolicy AWS API Documentation
@@ -145,7 +166,13 @@ module Aws::S3
145
166
  # }
146
167
  #
147
168
  # @!attribute [rw] owner
148
- # The override value for the owner of the replica object.
169
+ # Specifies the replica ownership. For default and valid values, see
170
+ # [PUT bucket replication][1] in the *Amazon Simple Storage Service
171
+ # API Reference*.
172
+ #
173
+ #
174
+ #
175
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html
149
176
  # @return [String]
150
177
  #
151
178
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AccessControlTranslation AWS API Documentation
@@ -155,6 +182,11 @@ module Aws::S3
155
182
  include Aws::Structure
156
183
  end
157
184
 
185
+ # A conjunction (logical AND) of predicates, which is used in evaluating
186
+ # a metrics filter. The operator must have at least two predicates in
187
+ # any combination, and an object must match all of the predicates for
188
+ # the filter to apply.
189
+ #
158
190
  # @note When making an API call, you may pass AnalyticsAndOperator
159
191
  # data as a hash:
160
192
  #
@@ -169,7 +201,8 @@ module Aws::S3
169
201
  # }
170
202
  #
171
203
  # @!attribute [rw] prefix
172
- # The prefix to use when evaluating an AND predicate.
204
+ # The prefix to use when evaluating an AND predicate: The prefix that
205
+ # an object must have to be included in the metrics results.
173
206
  # @return [String]
174
207
  #
175
208
  # @!attribute [rw] tags
@@ -184,6 +217,16 @@ module Aws::S3
184
217
  include Aws::Structure
185
218
  end
186
219
 
220
+ # Specifies the configuration and any analyses for the analytics filter
221
+ # of an Amazon S3 bucket.
222
+ #
223
+ # For more information, see [GET Bucket analytics][1] in the *Amazon
224
+ # Simple Storage Service API Reference*.
225
+ #
226
+ #
227
+ #
228
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETAnalyticsConfig.html
229
+ #
187
230
  # @note When making an API call, you may pass AnalyticsConfiguration
188
231
  # data as a hash:
189
232
  #
@@ -221,7 +264,7 @@ module Aws::S3
221
264
  # }
222
265
  #
223
266
  # @!attribute [rw] id
224
- # The identifier used to represent an analytics configuration.
267
+ # The ID that identifies the analytics configuration.
225
268
  # @return [String]
226
269
  #
227
270
  # @!attribute [rw] filter
@@ -232,9 +275,9 @@ module Aws::S3
232
275
  # @return [Types::AnalyticsFilter]
233
276
  #
234
277
  # @!attribute [rw] storage_class_analysis
235
- # If present, it indicates that data related to access patterns will
236
- # be collected and made available to analyze the tradeoffs between
237
- # different storage classes.
278
+ # Contains data related to access patterns to be collected and made
279
+ # available to analyze the tradeoffs between different storage
280
+ # classes.
238
281
  # @return [Types::StorageClassAnalysis]
239
282
  #
240
283
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AnalyticsConfiguration AWS API Documentation
@@ -246,6 +289,8 @@ module Aws::S3
246
289
  include Aws::Structure
247
290
  end
248
291
 
292
+ # Where to publish the analytics results.
293
+ #
249
294
  # @note When making an API call, you may pass AnalyticsExportDestination
250
295
  # data as a hash:
251
296
  #
@@ -323,7 +368,7 @@ module Aws::S3
323
368
  # }
324
369
  #
325
370
  # @!attribute [rw] format
326
- # The file format used when exporting data to Amazon S3.
371
+ # Specifies the file format used when exporting data to Amazon S3.
327
372
  # @return [String]
328
373
  #
329
374
  # @!attribute [rw] bucket_account_id
@@ -332,13 +377,13 @@ module Aws::S3
332
377
  # @return [String]
333
378
  #
334
379
  # @!attribute [rw] bucket
335
- # The Amazon resource name (ARN) of the bucket to which data is
380
+ # The Amazon Resource Name (ARN) of the bucket to which data is
336
381
  # exported.
337
382
  # @return [String]
338
383
  #
339
384
  # @!attribute [rw] prefix
340
- # The prefix to use when exporting data. The exported data begins with
341
- # this prefix.
385
+ # The prefix to use when exporting data. The prefix is prepended to
386
+ # all results.
342
387
  # @return [String]
343
388
  #
344
389
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AnalyticsS3BucketDestination AWS API Documentation
@@ -367,6 +412,14 @@ module Aws::S3
367
412
  include Aws::Structure
368
413
  end
369
414
 
415
+ # Specifies the lifecycle configuration for objects in an Amazon S3
416
+ # bucket. For more information, see [Object Lifecycle Management][1] in
417
+ # the *Amazon Simple Storage Service Developer Guide*.
418
+ #
419
+ #
420
+ #
421
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
422
+ #
370
423
  # @note When making an API call, you may pass BucketLifecycleConfiguration
371
424
  # data as a hash:
372
425
  #
@@ -421,6 +474,7 @@ module Aws::S3
421
474
  # }
422
475
  #
423
476
  # @!attribute [rw] rules
477
+ # A lifecycle rule for individual objects in an Amazon S3 bucket.
424
478
  # @return [Array<Types::LifecycleRule>]
425
479
  #
426
480
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/BucketLifecycleConfiguration AWS API Documentation
@@ -453,9 +507,6 @@ module Aws::S3
453
507
  # }
454
508
  #
455
509
  # @!attribute [rw] logging_enabled
456
- # Container for logging information. Presence of this element
457
- # indicates that logging is enabled. Parameters TargetBucket and
458
- # TargetPrefix are required in this case.
459
510
  # @return [Types::LoggingEnabled]
460
511
  #
461
512
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/BucketLoggingStatus AWS API Documentation
@@ -465,6 +516,15 @@ module Aws::S3
465
516
  include Aws::Structure
466
517
  end
467
518
 
519
+ # Describes the cross-origin access configuration for objects in an
520
+ # Amazon S3 bucket. For more information, see [Enabling Cross-Origin
521
+ # Resource Sharing][1] in the *Amazon Simple Storage Service Developer
522
+ # Guide*.
523
+ #
524
+ #
525
+ #
526
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
527
+ #
468
528
  # @note When making an API call, you may pass CORSConfiguration
469
529
  # data as a hash:
470
530
  #
@@ -481,6 +541,7 @@ module Aws::S3
481
541
  # }
482
542
  #
483
543
  # @!attribute [rw] cors_rules
544
+ # A set of allowed origins and methods.
484
545
  # @return [Array<Types::CORSRule>]
485
546
  #
486
547
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CORSConfiguration AWS API Documentation
@@ -490,6 +551,8 @@ module Aws::S3
490
551
  include Aws::Structure
491
552
  end
492
553
 
554
+ # Specifies a cross-origin access rule for an Amazon S3 bucket.
555
+ #
493
556
  # @note When making an API call, you may pass CORSRule
494
557
  # data as a hash:
495
558
  #
@@ -502,12 +565,15 @@ module Aws::S3
502
565
  # }
503
566
  #
504
567
  # @!attribute [rw] allowed_headers
505
- # Specifies which headers are allowed in a pre-flight OPTIONS request.
568
+ # Headers that are specified in the `Access-Control-Request-Headers`
569
+ # header. These headers are allowed in a preflight OPTIONS request. In
570
+ # response to any preflight OPTIONS request, Amazon S3 returns any
571
+ # requested headers that are allowed.
506
572
  # @return [Array<String>]
507
573
  #
508
574
  # @!attribute [rw] allowed_methods
509
- # Identifies HTTP methods that the domain/origin specified in the rule
510
- # is allowed to execute.
575
+ # An HTTP method that you allow the origin to execute. Valid values
576
+ # are `GET`, `PUT`, `HEAD`, `POST`, and `DELETE`.
511
577
  # @return [Array<String>]
512
578
  #
513
579
  # @!attribute [rw] allowed_origins
@@ -518,7 +584,7 @@ module Aws::S3
518
584
  # @!attribute [rw] expose_headers
519
585
  # One or more headers in the response that you want customers to be
520
586
  # able to access from their applications (for example, from a
521
- # JavaScript XMLHttpRequest object).
587
+ # JavaScript `XMLHttpRequest` object).
522
588
  # @return [Array<String>]
523
589
  #
524
590
  # @!attribute [rw] max_age_seconds
@@ -844,6 +910,8 @@ module Aws::S3
844
910
  include Aws::Structure
845
911
  end
846
912
 
913
+ # Specifies a condition that must be met for a redirect to apply.
914
+ #
847
915
  # @note When making an API call, you may pass Condition
848
916
  # data as a hash:
849
917
  #
@@ -855,20 +923,21 @@ module Aws::S3
855
923
  # @!attribute [rw] http_error_code_returned_equals
856
924
  # The HTTP error code when the redirect is applied. In the event of an
857
925
  # error, if the error code equals this value, then the specified
858
- # redirect is applied. Required when parent element Condition is
859
- # specified and sibling KeyPrefixEquals is not specified. If both are
860
- # specified, then both must be true for the redirect to be applied.
926
+ # redirect is applied. Required when parent element `Condition` is
927
+ # specified and sibling `KeyPrefixEquals` is not specified. If both
928
+ # are specified, then both must be true for the redirect to be
929
+ # applied.
861
930
  # @return [String]
862
931
  #
863
932
  # @!attribute [rw] key_prefix_equals
864
933
  # The object key name prefix when the redirect is applied. For
865
- # example, to redirect requests for ExamplePage.html, the key prefix
866
- # will be ExamplePage.html. To redirect request for all pages with the
867
- # prefix docs/, the key prefix will be /docs, which identifies all
868
- # objects in the docs/ folder. Required when the parent element
869
- # Condition is specified and sibling HttpErrorCodeReturnedEquals is
870
- # not specified. If both conditions are specified, both must be true
871
- # for the redirect to be applied.
934
+ # example, to redirect requests for `ExamplePage.html`, the key prefix
935
+ # will be `ExamplePage.html`. To redirect request for all pages with
936
+ # the prefix `docs/`, the key prefix will be `/docs`, which identifies
937
+ # all objects in the docs/ folder. Required when the parent element
938
+ # `Condition` is specified and sibling `HttpErrorCodeReturnedEquals`
939
+ # is not specified. If both conditions are specified, both must be
940
+ # true for the redirect to be applied.
872
941
  # @return [String]
873
942
  #
874
943
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Condition AWS API Documentation
@@ -1154,11 +1223,11 @@ module Aws::S3
1154
1223
  # @return [String]
1155
1224
  #
1156
1225
  # @!attribute [rw] object_lock_mode
1157
- # The Object Lock mode that you want to apply to the copied object.
1226
+ # The object lock mode that you want to apply to the copied object.
1158
1227
  # @return [String]
1159
1228
  #
1160
1229
  # @!attribute [rw] object_lock_retain_until_date
1161
- # The date and time when you want the copied object's Object Lock to
1230
+ # The date and time when you want the copied object's object lock to
1162
1231
  # expire.
1163
1232
  # @return [Time]
1164
1233
  #
@@ -1319,8 +1388,8 @@ module Aws::S3
1319
1388
  # @return [String]
1320
1389
  #
1321
1390
  # @!attribute [rw] object_lock_enabled_for_bucket
1322
- # Specifies whether you want S3 Object Lock to be enabled for the new
1323
- # bucket.
1391
+ # Specifies whether you want Amazon S3 object lock to be enabled for
1392
+ # the new bucket.
1324
1393
  # @return [Boolean]
1325
1394
  #
1326
1395
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucketRequest AWS API Documentation
@@ -1552,12 +1621,12 @@ module Aws::S3
1552
1621
  # @return [String]
1553
1622
  #
1554
1623
  # @!attribute [rw] object_lock_mode
1555
- # Specifies the Object Lock mode that you want to apply to the
1624
+ # Specifies the object lock mode that you want to apply to the
1556
1625
  # uploaded object.
1557
1626
  # @return [String]
1558
1627
  #
1559
1628
  # @!attribute [rw] object_lock_retain_until_date
1560
- # Specifies the date and time when you want the Object Lock to expire.
1629
+ # Specifies the date and time when you want the object lock to expire.
1561
1630
  # @return [Time]
1562
1631
  #
1563
1632
  # @!attribute [rw] object_lock_legal_hold_status
@@ -1597,7 +1666,7 @@ module Aws::S3
1597
1666
  include Aws::Structure
1598
1667
  end
1599
1668
 
1600
- # The container element for specifying the default Object Lock retention
1669
+ # The container element for specifying the default object lock retention
1601
1670
  # settings for new objects placed in the specified bucket.
1602
1671
  #
1603
1672
  # @note When making an API call, you may pass DefaultRetention
@@ -1610,7 +1679,7 @@ module Aws::S3
1610
1679
  # }
1611
1680
  #
1612
1681
  # @!attribute [rw] mode
1613
- # The default Object Lock retention mode you want to apply to new
1682
+ # The default object lock retention mode you want to apply to new
1614
1683
  # objects placed in the specified bucket.
1615
1684
  # @return [String]
1616
1685
  #
@@ -1676,7 +1745,7 @@ module Aws::S3
1676
1745
  # @return [String]
1677
1746
  #
1678
1747
  # @!attribute [rw] id
1679
- # The identifier used to represent an analytics configuration.
1748
+ # The ID that identifies the analytics configuration.
1680
1749
  # @return [String]
1681
1750
  #
1682
1751
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketAnalyticsConfigurationRequest AWS API Documentation
@@ -1998,8 +2067,8 @@ module Aws::S3
1998
2067
  # @return [String]
1999
2068
  #
2000
2069
  # @!attribute [rw] bypass_governance_retention
2001
- # Indicates whether S3 Object Lock should bypass Governance-mode
2002
- # restrictions to process this operation.
2070
+ # Indicates whether Amazon S3 object lock should bypass
2071
+ # governance-mode restrictions to process this operation.
2003
2072
  # @return [Boolean]
2004
2073
  #
2005
2074
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectRequest AWS API Documentation
@@ -2114,7 +2183,7 @@ module Aws::S3
2114
2183
  #
2115
2184
  # @!attribute [rw] bypass_governance_retention
2116
2185
  # Specifies whether you want to delete this object even if it has a
2117
- # Governance-type Object Lock in place. You must have sufficient
2186
+ # Governance-type object lock in place. You must have sufficient
2118
2187
  # permissions to perform this operation.
2119
2188
  # @return [Boolean]
2120
2189
  #
@@ -2170,7 +2239,8 @@ module Aws::S3
2170
2239
  include Aws::Structure
2171
2240
  end
2172
2241
 
2173
- # A container for information about the replication destination.
2242
+ # Specifies information about where to publish analysis or configuration
2243
+ # results for an Amazon S3 bucket.
2174
2244
  #
2175
2245
  # @note When making an API call, you may pass Destination
2176
2246
  # data as a hash:
@@ -2191,34 +2261,46 @@ module Aws::S3
2191
2261
  # The Amazon Resource Name (ARN) of the bucket where you want Amazon
2192
2262
  # S3 to store replicas of the object identified by the rule.
2193
2263
  #
2194
- # If there are multiple rules in your replication configuration, all
2195
- # rules must specify the same bucket as the destination. A replication
2196
- # configuration can replicate objects to only one destination bucket.
2264
+ # A replication configuration can replicate objects to only one
2265
+ # destination bucket. If there are multiple rules in your replication
2266
+ # configuration, all rules must specify the same destination bucket.
2197
2267
  # @return [String]
2198
2268
  #
2199
2269
  # @!attribute [rw] account
2200
- # The account ID of the destination bucket. Currently, Amazon S3
2201
- # verifies this value only if Access Control Translation is enabled.
2270
+ # Destination bucket owner account ID. In a cross-account scenario, if
2271
+ # you direct Amazon S3 to change replica ownership to the AWS account
2272
+ # that owns the destination bucket by specifying the
2273
+ # `AccessControlTranslation` property, this is the account ID of the
2274
+ # destination bucket owner. For more information, see [Cross-Region
2275
+ # Replication Additional Configuration: Change Replica Owner][1] in
2276
+ # the *Amazon Simple Storage Service Developer Guide*.
2202
2277
  #
2203
- # In a cross-account scenario, if you change replica ownership to the
2204
- # AWS account that owns the destination bucket by adding the
2205
- # `AccessControlTranslation` element, this is the account ID of the
2206
- # owner of the destination bucket.
2278
+ #
2279
+ #
2280
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/crr-change-owner.html
2207
2281
  # @return [String]
2208
2282
  #
2209
2283
  # @!attribute [rw] storage_class
2210
- # The class of storage used to store the object. By default Amazon S3
2211
- # uses storage class of the source object when creating a replica.
2284
+ # The storage class to use when replicating objects, such as standard
2285
+ # or reduced redundancy. By default, Amazon S3 uses the storage class
2286
+ # of the source object to create the object replica.
2287
+ #
2288
+ # For valid values, see the `StorageClass` element of the [PUT Bucket
2289
+ # replication][1] action in the *Amazon Simple Storage Service API
2290
+ # Reference*.
2291
+ #
2292
+ #
2293
+ #
2294
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html
2212
2295
  # @return [String]
2213
2296
  #
2214
2297
  # @!attribute [rw] access_control_translation
2215
- # A container for information about access control for replicas.
2216
- #
2217
- # Use this element only in a cross-account scenario where source and
2218
- # destination bucket owners are not the same to change replica
2219
- # ownership to the AWS account that owns the destination bucket. If
2220
- # you don't add this element to the replication configuration, the
2221
- # replicas are owned by same AWS account that owns the source object.
2298
+ # Specify this only in a cross-account scenario (where source and
2299
+ # destination bucket owners are not the same), and you want to change
2300
+ # replica ownership to the AWS account that owns the destination
2301
+ # bucket. If this is not specified in the replication configuration,
2302
+ # the replicas are owned by same AWS account that owns the source
2303
+ # object.
2222
2304
  # @return [Types::AccessControlTranslation]
2223
2305
  #
2224
2306
  # @!attribute [rw] encryption_configuration
@@ -2274,8 +2356,8 @@ module Aws::S3
2274
2356
  include Aws::Structure
2275
2357
  end
2276
2358
 
2277
- # A container for information about the encryption-based configuration
2278
- # for replicas.
2359
+ # Specifies encryption-related information for an Amazon S3 bucket that
2360
+ # is a destination for replicated objects.
2279
2361
  #
2280
2362
  # @note When making an API call, you may pass EncryptionConfiguration
2281
2363
  # data as a hash:
@@ -2285,9 +2367,9 @@ module Aws::S3
2285
2367
  # }
2286
2368
  #
2287
2369
  # @!attribute [rw] replica_kms_key_id
2288
- # The ID of the AWS KMS key for the AWS Region where the destination
2289
- # bucket resides. Amazon S3 uses this key to encrypt the replica
2290
- # object.
2370
+ # Specifies the AWS KMS Key ID (Key ARN or Alias ARN) for the
2371
+ # destination bucket. Amazon S3 uses this key to encrypt replica
2372
+ # objects.
2291
2373
  # @return [String]
2292
2374
  #
2293
2375
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/EncryptionConfiguration AWS API Documentation
@@ -2344,8 +2426,8 @@ module Aws::S3
2344
2426
  include Aws::Structure
2345
2427
  end
2346
2428
 
2347
- # A container for a key value pair that defines the criteria for the
2348
- # filter rule.
2429
+ # Specifies the Amazon S3 object key name to filter on and whether to
2430
+ # filter on the suffix or prefix of the key name.
2349
2431
  #
2350
2432
  # @note When making an API call, you may pass FilterRule
2351
2433
  # data as a hash:
@@ -2357,11 +2439,10 @@ module Aws::S3
2357
2439
  #
2358
2440
  # @!attribute [rw] name
2359
2441
  # The object key name prefix or suffix identifying one or more objects
2360
- # to which the filtering rule applies. The maximum prefix length is
2361
- # 1,024 characters. Overlapping prefixes and suffixes are not
2362
- # supported. For more information, see [Configuring Event
2363
- # Notifications][1] in the *Amazon Simple Storage Service Developer
2364
- # Guide*.
2442
+ # to which the filtering rule applies. The maximum length is 1,024
2443
+ # characters. Overlapping prefixes and suffixes are not supported. For
2444
+ # more information, see [Configuring Event Notifications][1] in the
2445
+ # *Amazon Simple Storage Service Developer Guide*.
2365
2446
  #
2366
2447
  #
2367
2448
  #
@@ -2369,6 +2450,7 @@ module Aws::S3
2369
2450
  # @return [String]
2370
2451
  #
2371
2452
  # @!attribute [rw] value
2453
+ # The value that the filter searches for in object key names.
2372
2454
  # @return [String]
2373
2455
  #
2374
2456
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/FilterRule AWS API Documentation
@@ -2466,7 +2548,7 @@ module Aws::S3
2466
2548
  # @return [String]
2467
2549
  #
2468
2550
  # @!attribute [rw] id
2469
- # The identifier used to represent an analytics configuration.
2551
+ # The ID that identifies the analytics configuration.
2470
2552
  # @return [String]
2471
2553
  #
2472
2554
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAnalyticsConfigurationRequest AWS API Documentation
@@ -2505,8 +2587,6 @@ module Aws::S3
2505
2587
  end
2506
2588
 
2507
2589
  # @!attribute [rw] server_side_encryption_configuration
2508
- # Container for server-side encryption configuration rules. Currently
2509
- # S3 supports one rule only.
2510
2590
  # @return [Types::ServerSideEncryptionConfiguration]
2511
2591
  #
2512
2592
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketEncryptionOutput AWS API Documentation
@@ -2653,9 +2733,6 @@ module Aws::S3
2653
2733
  end
2654
2734
 
2655
2735
  # @!attribute [rw] logging_enabled
2656
- # Container for logging information. Presence of this element
2657
- # indicates that logging is enabled. Parameters TargetBucket and
2658
- # TargetPrefix are required in this case.
2659
2736
  # @return [Types::LoggingEnabled]
2660
2737
  #
2661
2738
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLoggingOutput AWS API Documentation
@@ -2795,8 +2872,6 @@ module Aws::S3
2795
2872
  end
2796
2873
 
2797
2874
  # @!attribute [rw] replication_configuration
2798
- # A container for replication rules. You can add up to 1,000 rules.
2799
- # The maximum size of a replication configuration is 2 MB.
2800
2875
  # @return [Types::ReplicationConfiguration]
2801
2876
  #
2802
2877
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketReplicationOutput AWS API Documentation
@@ -3067,7 +3142,7 @@ module Aws::S3
3067
3142
  end
3068
3143
 
3069
3144
  # @!attribute [rw] object_lock_configuration
3070
- # The specified bucket's Object Lock configuration.
3145
+ # The specified bucket's object lock configuration.
3071
3146
  # @return [Types::ObjectLockConfiguration]
3072
3147
  #
3073
3148
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfigurationOutput AWS API Documentation
@@ -3085,7 +3160,7 @@ module Aws::S3
3085
3160
  # }
3086
3161
  #
3087
3162
  # @!attribute [rw] bucket
3088
- # The bucket whose Object Lock configuration you want to retrieve.
3163
+ # The bucket whose object lock configuration you want to retrieve.
3089
3164
  # @return [String]
3090
3165
  #
3091
3166
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfigurationRequest AWS API Documentation
@@ -3232,11 +3307,11 @@ module Aws::S3
3232
3307
  # @return [Integer]
3233
3308
  #
3234
3309
  # @!attribute [rw] object_lock_mode
3235
- # The Object Lock mode currently in place for this object.
3310
+ # The object lock mode currently in place for this object.
3236
3311
  # @return [String]
3237
3312
  #
3238
3313
  # @!attribute [rw] object_lock_retain_until_date
3239
- # The date and time when this object's Object Lock will expire.
3314
+ # The date and time when this object's object lock will expire.
3240
3315
  # @return [Time]
3241
3316
  #
3242
3317
  # @!attribute [rw] object_lock_legal_hold_status
@@ -3832,11 +3907,11 @@ module Aws::S3
3832
3907
  # @return [Integer]
3833
3908
  #
3834
3909
  # @!attribute [rw] object_lock_mode
3835
- # The Object Lock mode currently in place for this object.
3910
+ # The object lock mode currently in place for this object.
3836
3911
  # @return [String]
3837
3912
  #
3838
3913
  # @!attribute [rw] object_lock_retain_until_date
3839
- # The date and time when this object's Object Lock will expire.
3914
+ # The date and time when this object's object lock expires.
3840
3915
  # @return [Time]
3841
3916
  #
3842
3917
  # @!attribute [rw] object_lock_legal_hold_status
@@ -4075,6 +4150,14 @@ module Aws::S3
4075
4150
  include Aws::Structure
4076
4151
  end
4077
4152
 
4153
+ # Specifies the inventory configuration for an Amazon S3 bucket. For
4154
+ # more information, see [GET Bucket inventory][1] in the *Amazon Simple
4155
+ # Storage Service API Reference*.
4156
+ #
4157
+ #
4158
+ #
4159
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html
4160
+ #
4078
4161
  # @note When making an API call, you may pass InventoryConfiguration
4079
4162
  # data as a hash:
4080
4163
  #
@@ -4111,7 +4194,9 @@ module Aws::S3
4111
4194
  # @return [Types::InventoryDestination]
4112
4195
  #
4113
4196
  # @!attribute [rw] is_enabled
4114
- # Specifies whether the inventory is enabled or disabled.
4197
+ # Specifies whether the inventory is enabled or disabled. If set to
4198
+ # `True`, an inventory list is generated. If set to `False`, no
4199
+ # inventory list is generated.
4115
4200
  # @return [Boolean]
4116
4201
  #
4117
4202
  # @!attribute [rw] filter
@@ -4124,8 +4209,11 @@ module Aws::S3
4124
4209
  # @return [String]
4125
4210
  #
4126
4211
  # @!attribute [rw] included_object_versions
4127
- # Specifies which object version(s) to included in the inventory
4128
- # results.
4212
+ # Object versions to include in the inventory list. If set to `All`,
4213
+ # the list includes all the object versions, which adds the
4214
+ # version-related fields `VersionId`, `IsLatest`, and `DeleteMarker`
4215
+ # to the list. If set to `Current`, the list does not contain these
4216
+ # version-related fields.
4129
4217
  # @return [String]
4130
4218
  #
4131
4219
  # @!attribute [rw] optional_fields
@@ -4363,21 +4451,21 @@ module Aws::S3
4363
4451
  # @return [String]
4364
4452
  #
4365
4453
  # @!attribute [rw] lambda_function_arn
4366
- # The Amazon Resource Name (ARN) of the Lambda cloud function that
4367
- # Amazon S3 can invoke when it detects events of the specified type.
4454
+ # The Amazon Resource Name (ARN) of the AWS Lambda function that
4455
+ # Amazon S3 invokes when the specified event type occurs.
4368
4456
  # @return [String]
4369
4457
  #
4370
4458
  # @!attribute [rw] events
4371
- # @return [Array<String>]
4372
- #
4373
- # @!attribute [rw] filter
4374
- # A container for object key name filtering rules. For information
4375
- # about key name filtering, see [Configuring Event Notifications][1]
4376
- # in the *Amazon Simple Storage Service Developer Guide*.
4459
+ # The Amazon S3 bucket event for which to invoke the AWS Lambda
4460
+ # function. For more information, see [Supported Event Types][1] in
4461
+ # the *Amazon Simple Storage Service Developer Guide*.
4377
4462
  #
4378
4463
  #
4379
4464
  #
4380
4465
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
4466
+ # @return [Array<String>]
4467
+ #
4468
+ # @!attribute [rw] filter
4381
4469
  # @return [Types::NotificationConfigurationFilter]
4382
4470
  #
4383
4471
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LambdaFunctionConfiguration AWS API Documentation
@@ -4531,8 +4619,6 @@ module Aws::S3
4531
4619
  # @return [String]
4532
4620
  #
4533
4621
  # @!attribute [rw] filter
4534
- # The Filter is used to identify objects that a Lifecycle Rule applies
4535
- # to. A Filter must have exactly one of Prefix, Tag, or And specified.
4536
4622
  # @return [Types::LifecycleRuleFilter]
4537
4623
  #
4538
4624
  # @!attribute [rw] status
@@ -4547,18 +4633,9 @@ module Aws::S3
4547
4633
  # @return [Array<Types::NoncurrentVersionTransition>]
4548
4634
  #
4549
4635
  # @!attribute [rw] noncurrent_version_expiration
4550
- # Specifies when noncurrent object versions expire. Upon expiration,
4551
- # Amazon S3 permanently deletes the noncurrent object versions. You
4552
- # set this lifecycle configuration action on a bucket that has
4553
- # versioning enabled (or suspended) to request that Amazon S3 delete
4554
- # noncurrent object versions at a specific period in the object's
4555
- # lifetime.
4556
4636
  # @return [Types::NoncurrentVersionExpiration]
4557
4637
  #
4558
4638
  # @!attribute [rw] abort_incomplete_multipart_upload
4559
- # Specifies the days since the initiation of an Incomplete Multipart
4560
- # Upload that Lifecycle will wait before permanently removing all
4561
- # parts of the upload.
4562
4639
  # @return [Types::AbortIncompleteMultipartUpload]
4563
4640
  #
4564
4641
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LifecycleRule AWS API Documentation
@@ -4642,9 +4719,6 @@ module Aws::S3
4642
4719
  # @return [Types::Tag]
4643
4720
  #
4644
4721
  # @!attribute [rw] and
4645
- # This is used in a Lifecycle Rule Filter to apply a logical AND to
4646
- # two or more predicates. The Lifecycle Rule will apply to any object
4647
- # matching all of the predicates configured inside the And operator.
4648
4722
  # @return [Types::LifecycleRuleAndOperator]
4649
4723
  #
4650
4724
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LifecycleRuleFilter AWS API Documentation
@@ -5524,9 +5598,14 @@ module Aws::S3
5524
5598
  include Aws::Structure
5525
5599
  end
5526
5600
 
5527
- # Container for logging information. Presence of this element indicates
5528
- # that logging is enabled. Parameters TargetBucket and TargetPrefix are
5529
- # required in this case.
5601
+ # Describes where logs are stored and the prefix that Amazon S3 assigns
5602
+ # to all log object keys for a bucket. For more information, see [PUT
5603
+ # Bucket logging][1] in the *Amazon Simple Storage Service API
5604
+ # Reference*.
5605
+ #
5606
+ #
5607
+ #
5608
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html
5530
5609
  #
5531
5610
  # @note When making an API call, you may pass LoggingEnabled
5532
5611
  # data as a hash:
@@ -5562,8 +5641,9 @@ module Aws::S3
5562
5641
  # @return [Array<Types::TargetGrant>]
5563
5642
  #
5564
5643
  # @!attribute [rw] target_prefix
5565
- # This element lets you specify a prefix for the keys that the log
5566
- # files will be stored under.
5644
+ # A prefix for all log object keys. If you store log files from
5645
+ # multiple Amazon S3 buckets in a single bucket, you can use a prefix
5646
+ # to distinguish which log files came from which bucket.
5567
5647
  # @return [String]
5568
5648
  #
5569
5649
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LoggingEnabled AWS API Documentation
@@ -5628,6 +5708,18 @@ module Aws::S3
5628
5708
  include Aws::Structure
5629
5709
  end
5630
5710
 
5711
+ # Specifies a metrics configuration for the CloudWatch request metrics
5712
+ # (specified by the metrics configuration ID) from an Amazon S3 bucket.
5713
+ # If you're updating an existing metrics configuration, note that this
5714
+ # is a full replacement of the existing metrics configuration. If you
5715
+ # don't include the elements you want to keep, they are erased. For
5716
+ # more information, see [ PUT Bucket metrics][1] in the *Amazon Simple
5717
+ # Storage Service API Reference*.
5718
+ #
5719
+ #
5720
+ #
5721
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html
5722
+ #
5631
5723
  # @note When making an API call, you may pass MetricsConfiguration
5632
5724
  # data as a hash:
5633
5725
  #
@@ -5781,13 +5873,13 @@ module Aws::S3
5781
5873
  end
5782
5874
 
5783
5875
  # Container for the transition rule that describes when noncurrent
5784
- # objects transition to the STANDARD\_IA, ONEZONE\_IA,
5785
- # INTELLIGENT\_TIERING, GLACIER or DEEP\_ARCHIVE storage class. If your
5786
- # bucket is versioning-enabled (or versioning is suspended), you can set
5787
- # this action to request that Amazon S3 transition noncurrent object
5788
- # versions to the STANDARD\_IA, ONEZONE\_IA, INTELLIGENT\_TIERING,
5789
- # GLACIER or DEEP\_ARCHIVE storage class at a specific period in the
5790
- # object's lifetime.
5876
+ # objects transition to the `STANDARD_IA`, `ONEZONE_IA`,
5877
+ # `INTELLIGENT_TIERING`, `GLACIER`, or `DEEP_ARCHIVE` storage class. If
5878
+ # your bucket is versioning-enabled (or versioning is suspended), you
5879
+ # can set this action to request that Amazon S3 transition noncurrent
5880
+ # object versions to the `STANDARD_IA`, `ONEZONE_IA`,
5881
+ # `INTELLIGENT_TIERING`, `GLACIER`, or `DEEP_ARCHIVE` storage class at a
5882
+ # specific period in the object's lifetime.
5791
5883
  #
5792
5884
  # @note When making an API call, you may pass NoncurrentVersionTransition
5793
5885
  # data as a hash:
@@ -5801,8 +5893,8 @@ module Aws::S3
5801
5893
  # Specifies the number of days an object is noncurrent before Amazon
5802
5894
  # S3 can perform the associated action. For information about the
5803
5895
  # noncurrent days calculations, see [How Amazon S3 Calculates When an
5804
- # Object Became Noncurrent][1] in the Amazon Simple Storage Service
5805
- # Developer Guide.
5896
+ # Object Became Noncurrent][1] in the *Amazon Simple Storage Service
5897
+ # Developer Guide*.
5806
5898
  #
5807
5899
  #
5808
5900
  #
@@ -5883,12 +5975,18 @@ module Aws::S3
5883
5975
  # }
5884
5976
  #
5885
5977
  # @!attribute [rw] topic_configurations
5978
+ # The topic to which notifications are sent and the events for which
5979
+ # notifications are generated.
5886
5980
  # @return [Array<Types::TopicConfiguration>]
5887
5981
  #
5888
5982
  # @!attribute [rw] queue_configurations
5983
+ # The Amazon Simple Queue Service queues to publish messages to and
5984
+ # the events for which to publish messages.
5889
5985
  # @return [Array<Types::QueueConfiguration>]
5890
5986
  #
5891
5987
  # @!attribute [rw] lambda_function_configurations
5988
+ # Describes the AWS Lambda functions to invoke and the events for
5989
+ # which to invoke them.
5892
5990
  # @return [Array<Types::LambdaFunctionConfiguration>]
5893
5991
  #
5894
5992
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NotificationConfiguration AWS API Documentation
@@ -5943,8 +6041,8 @@ module Aws::S3
5943
6041
  include Aws::Structure
5944
6042
  end
5945
6043
 
5946
- # A container for object key name filtering rules. For information about
5947
- # key name filtering, see [Configuring Event Notifications][1] in the
6044
+ # Specifies object key name filtering rules. For information about key
6045
+ # name filtering, see [Configuring Event Notifications][1] in the
5948
6046
  # *Amazon Simple Storage Service Developer Guide*.
5949
6047
  #
5950
6048
  #
@@ -5966,7 +6064,6 @@ module Aws::S3
5966
6064
  # }
5967
6065
  #
5968
6066
  # @!attribute [rw] key
5969
- # A container for object key name prefix and suffix filtering rules.
5970
6067
  # @return [Types::S3KeyFilter]
5971
6068
  #
5972
6069
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NotificationConfigurationFilter AWS API Documentation
@@ -6031,7 +6128,7 @@ module Aws::S3
6031
6128
  include Aws::Structure
6032
6129
  end
6033
6130
 
6034
- # The container element for Object Lock configuration parameters.
6131
+ # The container element for object lock configuration parameters.
6035
6132
  #
6036
6133
  # @note When making an API call, you may pass ObjectLockConfiguration
6037
6134
  # data as a hash:
@@ -6048,12 +6145,12 @@ module Aws::S3
6048
6145
  # }
6049
6146
  #
6050
6147
  # @!attribute [rw] object_lock_enabled
6051
- # Indicates whether this bucket has an Object Lock configuration
6148
+ # Indicates whether this bucket has an object lock configuration
6052
6149
  # enabled.
6053
6150
  # @return [String]
6054
6151
  #
6055
6152
  # @!attribute [rw] rule
6056
- # The Object Lock rule in place for the specified object.
6153
+ # The object lock rule in place for the specified object.
6057
6154
  # @return [Types::ObjectLockRule]
6058
6155
  #
6059
6156
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockConfiguration AWS API Documentation
@@ -6099,7 +6196,7 @@ module Aws::S3
6099
6196
  # @return [String]
6100
6197
  #
6101
6198
  # @!attribute [rw] retain_until_date
6102
- # The date on which this Object Lock Retention will expire.
6199
+ # The date on which this object lock retention expires.
6103
6200
  # @return [Time]
6104
6201
  #
6105
6202
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockRetention AWS API Documentation
@@ -6110,7 +6207,7 @@ module Aws::S3
6110
6207
  include Aws::Structure
6111
6208
  end
6112
6209
 
6113
- # The container element for an Object Lock rule.
6210
+ # The container element for an object lock rule.
6114
6211
  #
6115
6212
  # @note When making an API call, you may pass ObjectLockRule
6116
6213
  # data as a hash:
@@ -6373,6 +6470,9 @@ module Aws::S3
6373
6470
  include Aws::Structure
6374
6471
  end
6375
6472
 
6473
+ # Specifies the Block Public Access configuration for an Amazon S3
6474
+ # bucket.
6475
+ #
6376
6476
  # @note When making an API call, you may pass PublicAccessBlockConfiguration
6377
6477
  # data as a hash:
6378
6478
  #
@@ -6501,6 +6601,8 @@ module Aws::S3
6501
6601
  # @return [String]
6502
6602
  #
6503
6603
  # @!attribute [rw] access_control_policy
6604
+ # Contains the elements that set the ACL permissions for an object per
6605
+ # grantee.
6504
6606
  # @return [Types::AccessControlPolicy]
6505
6607
  #
6506
6608
  # @!attribute [rw] bucket
@@ -6592,7 +6694,7 @@ module Aws::S3
6592
6694
  # @return [String]
6593
6695
  #
6594
6696
  # @!attribute [rw] id
6595
- # The identifier used to represent an analytics configuration.
6697
+ # The ID that identifies the analytics configuration.
6596
6698
  # @return [String]
6597
6699
  #
6598
6700
  # @!attribute [rw] analytics_configuration
@@ -6664,19 +6766,24 @@ module Aws::S3
6664
6766
  # }
6665
6767
  #
6666
6768
  # @!attribute [rw] bucket
6667
- # The name of the bucket for which the server-side encryption
6668
- # configuration is set.
6769
+ # Specifies default encryption for a bucket using server-side
6770
+ # encryption with Amazon S3-managed keys (SSE-S3) or AWS KMS-managed
6771
+ # keys (SSE-KMS). For information about the Amazon S3 default
6772
+ # encryption feature, see [Amazon S3 Default Bucket Encryption][1] in
6773
+ # the *Amazon Simple Storage Service Developer Guide*.
6774
+ #
6775
+ #
6776
+ #
6777
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html
6669
6778
  # @return [String]
6670
6779
  #
6671
6780
  # @!attribute [rw] content_md5
6672
6781
  # The base64-encoded 128-bit MD5 digest of the server-side encryption
6673
6782
  # configuration. This parameter is auto-populated when using the
6674
- # command from the CLI
6783
+ # command from the CLI.
6675
6784
  # @return [String]
6676
6785
  #
6677
6786
  # @!attribute [rw] server_side_encryption_configuration
6678
- # Container for server-side encryption configuration rules. Currently
6679
- # S3 supports one rule only.
6680
6787
  # @return [Types::ServerSideEncryptionConfiguration]
6681
6788
  #
6682
6789
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketEncryptionRequest AWS API Documentation
@@ -7026,9 +7133,6 @@ module Aws::S3
7026
7133
  # @return [String]
7027
7134
  #
7028
7135
  # @!attribute [rw] notification_configuration
7029
- # A container for specifying the notification configuration of the
7030
- # bucket. If this element is empty, notifications are turned off for
7031
- # the bucket.
7032
7136
  # @return [Types::NotificationConfiguration]
7033
7137
  #
7034
7138
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationConfigurationRequest AWS API Documentation
@@ -7180,14 +7284,17 @@ module Aws::S3
7180
7284
  # @return [String]
7181
7285
  #
7182
7286
  # @!attribute [rw] content_md5
7287
+ # The base64-encoded 128-bit MD5 digest of the data. You must use this
7288
+ # header as a message integrity check to verify that the request body
7289
+ # was not corrupted in transit.
7183
7290
  # @return [String]
7184
7291
  #
7185
7292
  # @!attribute [rw] replication_configuration
7186
- # A container for replication rules. You can add up to 1,000 rules.
7187
- # The maximum size of a replication configuration is 2 MB.
7188
7293
  # @return [Types::ReplicationConfiguration]
7189
7294
  #
7190
7295
  # @!attribute [rw] token
7296
+ # A token that allows Amazon S3 object lock to be enabled for an
7297
+ # existing bucket.
7191
7298
  # @return [String]
7192
7299
  #
7193
7300
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketReplicationRequest AWS API Documentation
@@ -7406,6 +7513,8 @@ module Aws::S3
7406
7513
  # @return [String]
7407
7514
  #
7408
7515
  # @!attribute [rw] access_control_policy
7516
+ # Contains the elements that set the ACL permissions for an object per
7517
+ # grantee.
7409
7518
  # @return [Types::AccessControlPolicy]
7410
7519
  #
7411
7520
  # @!attribute [rw] bucket
@@ -7570,12 +7679,12 @@ module Aws::S3
7570
7679
  # }
7571
7680
  #
7572
7681
  # @!attribute [rw] bucket
7573
- # The bucket whose Object Lock configuration you want to create or
7682
+ # The bucket whose object lock configuration you want to create or
7574
7683
  # replace.
7575
7684
  # @return [String]
7576
7685
  #
7577
7686
  # @!attribute [rw] object_lock_configuration
7578
- # The Object Lock configuration that you want to apply to the
7687
+ # The object lock configuration that you want to apply to the
7579
7688
  # specified bucket.
7580
7689
  # @return [Types::ObjectLockConfiguration]
7581
7690
  #
@@ -7588,7 +7697,8 @@ module Aws::S3
7588
7697
  # @return [String]
7589
7698
  #
7590
7699
  # @!attribute [rw] token
7591
- # A token to allow Object Lock to be enabled for an existing bucket.
7700
+ # A token to allow Amazon S3 object lock to be enabled for an existing
7701
+ # bucket.
7592
7702
  # @return [String]
7593
7703
  #
7594
7704
  # @!attribute [rw] content_md5
@@ -7736,7 +7846,8 @@ module Aws::S3
7736
7846
  #
7737
7847
  # @!attribute [rw] content_md5
7738
7848
  # The base64-encoded 128-bit MD5 digest of the part data. This
7739
- # parameter is auto-populated when using the command from the CLI
7849
+ # parameter is auto-populated when using the command from the CLI.
7850
+ # This parameted is required if object lock parameters are specified.
7740
7851
  # @return [String]
7741
7852
  #
7742
7853
  # @!attribute [rw] content_type
@@ -7829,11 +7940,11 @@ module Aws::S3
7829
7940
  # @return [String]
7830
7941
  #
7831
7942
  # @!attribute [rw] object_lock_mode
7832
- # The Object Lock mode that you want to apply to this object.
7943
+ # The object lock mode that you want to apply to this object.
7833
7944
  # @return [String]
7834
7945
  #
7835
7946
  # @!attribute [rw] object_lock_retain_until_date
7836
- # The date and time when you want this object's Object Lock to
7947
+ # The date and time when you want this object's object lock to
7837
7948
  # expire.
7838
7949
  # @return [Time]
7839
7950
  #
@@ -8052,9 +8163,9 @@ module Aws::S3
8052
8163
  include Aws::Structure
8053
8164
  end
8054
8165
 
8055
- # A container for specifying the configuration for publication of
8056
- # messages to an Amazon Simple Queue Service (Amazon SQS) queue.when
8057
- # Amazon S3 detects specified events.
8166
+ # Specifies the configuration for publishing messages to an Amazon
8167
+ # Simple Queue Service (Amazon SQS) queue when Amazon S3 detects
8168
+ # specified events.
8058
8169
  #
8059
8170
  # @note When making an API call, you may pass QueueConfiguration
8060
8171
  # data as a hash:
@@ -8083,7 +8194,7 @@ module Aws::S3
8083
8194
  #
8084
8195
  # @!attribute [rw] queue_arn
8085
8196
  # The Amazon Resource Name (ARN) of the Amazon SQS queue to which
8086
- # Amazon S3 will publish a message when it detects events of the
8197
+ # Amazon S3 publishes a message when it detects events of the
8087
8198
  # specified type.
8088
8199
  # @return [String]
8089
8200
  #
@@ -8091,13 +8202,6 @@ module Aws::S3
8091
8202
  # @return [Array<String>]
8092
8203
  #
8093
8204
  # @!attribute [rw] filter
8094
- # A container for object key name filtering rules. For information
8095
- # about key name filtering, see [Configuring Event Notifications][1]
8096
- # in the *Amazon Simple Storage Service Developer Guide*.
8097
- #
8098
- #
8099
- #
8100
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
8101
8205
  # @return [Types::NotificationConfigurationFilter]
8102
8206
  #
8103
8207
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/QueueConfiguration AWS API Documentation
@@ -8158,6 +8262,9 @@ module Aws::S3
8158
8262
  include Aws::Structure
8159
8263
  end
8160
8264
 
8265
+ # Specifies how requests are redirected. In the event of an error, you
8266
+ # can specify a different error code to return.
8267
+ #
8161
8268
  # @note When making an API call, you may pass Redirect
8162
8269
  # data as a hash:
8163
8270
  #
@@ -8179,25 +8286,25 @@ module Aws::S3
8179
8286
  # @return [String]
8180
8287
  #
8181
8288
  # @!attribute [rw] protocol
8182
- # Protocol to use (http, https) when redirecting requests. The default
8183
- # is the protocol that is used in the original request.
8289
+ # Protocol to use when redirecting requests. The default is the
8290
+ # protocol that is used in the original request.
8184
8291
  # @return [String]
8185
8292
  #
8186
8293
  # @!attribute [rw] replace_key_prefix_with
8187
8294
  # The object key prefix to use in the redirect request. For example,
8188
- # to redirect requests for all pages with prefix docs/ (objects in the
8189
- # docs/ folder) to documents/, you can set a condition block with
8190
- # KeyPrefixEquals set to docs/ and in the Redirect set
8191
- # ReplaceKeyPrefixWith to /documents. Not required if one of the
8192
- # siblings is present. Can be present only if ReplaceKeyWith is not
8295
+ # to redirect requests for all pages with prefix `docs/` (objects in
8296
+ # the `docs/` folder) to `documents/`, you can set a condition block
8297
+ # with `KeyPrefixEquals` set to `docs/` and in the Redirect set
8298
+ # `ReplaceKeyPrefixWith` to `/documents`. Not required if one of the
8299
+ # siblings is present. Can be present only if `ReplaceKeyWith` is not
8193
8300
  # provided.
8194
8301
  # @return [String]
8195
8302
  #
8196
8303
  # @!attribute [rw] replace_key_with
8197
8304
  # The specific object key to use in the redirect request. For example,
8198
- # redirect request to error.html. Not required if one of the sibling
8199
- # is present. Can be present only if ReplaceKeyPrefixWith is not
8200
- # provided.
8305
+ # redirect request to `error.html`. Not required if one of the
8306
+ # siblings is present. Can be present only if `ReplaceKeyPrefixWith`
8307
+ # is not provided.
8201
8308
  # @return [String]
8202
8309
  #
8203
8310
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Redirect AWS API Documentation
@@ -8211,6 +8318,9 @@ module Aws::S3
8211
8318
  include Aws::Structure
8212
8319
  end
8213
8320
 
8321
+ # Specifies the redirect behavior of all requests to a website endpoint
8322
+ # of an Amazon S3 bucket.
8323
+ #
8214
8324
  # @note When making an API call, you may pass RedirectAllRequestsTo
8215
8325
  # data as a hash:
8216
8326
  #
@@ -8220,12 +8330,12 @@ module Aws::S3
8220
8330
  # }
8221
8331
  #
8222
8332
  # @!attribute [rw] host_name
8223
- # Name of the host where requests will be redirected.
8333
+ # Name of the host where requests are redirected.
8224
8334
  # @return [String]
8225
8335
  #
8226
8336
  # @!attribute [rw] protocol
8227
- # Protocol to use (http, https) when redirecting requests. The default
8228
- # is the protocol that is used in the original request.
8337
+ # Protocol to use when redirecting requests. The default is the
8338
+ # protocol that is used in the original request.
8229
8339
  # @return [String]
8230
8340
  #
8231
8341
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RedirectAllRequestsTo AWS API Documentation
@@ -8291,8 +8401,14 @@ module Aws::S3
8291
8401
  #
8292
8402
  # @!attribute [rw] role
8293
8403
  # The Amazon Resource Name (ARN) of the AWS Identity and Access
8294
- # Management (IAM) role that Amazon S3 can assume when replicating the
8295
- # objects.
8404
+ # Management (IAM) role that Amazon S3 assumes when replicating
8405
+ # objects. For more information, see [How to Set Up Cross-Region
8406
+ # Replication][1] in the *Amazon Simple Storage Service Developer
8407
+ # Guide*.
8408
+ #
8409
+ #
8410
+ #
8411
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/crr-how-setup.html
8296
8412
  # @return [String]
8297
8413
  #
8298
8414
  # @!attribute [rw] rules
@@ -8309,7 +8425,8 @@ module Aws::S3
8309
8425
  include Aws::Structure
8310
8426
  end
8311
8427
 
8312
- # A container for information about a specific replication rule.
8428
+ # Specifies which Amazon S3 objects to replicate and where to store the
8429
+ # replicas.
8313
8430
  #
8314
8431
  # @note When making an API call, you may pass ReplicationRule
8315
8432
  # data as a hash:
@@ -8382,17 +8499,15 @@ module Aws::S3
8382
8499
  # @!attribute [rw] prefix
8383
8500
  # An object keyname prefix that identifies the object or objects to
8384
8501
  # which the rule applies. The maximum prefix length is 1,024
8385
- # characters.
8502
+ # characters. To include all objects in a bucket, specify an empty
8503
+ # string.
8386
8504
  # @return [String]
8387
8505
  #
8388
8506
  # @!attribute [rw] filter
8389
- # A filter that identifies the subset of objects to which the
8390
- # replication rule applies. A `Filter` must specify exactly one
8391
- # `Prefix`, `Tag`, or an `And` child element.
8392
8507
  # @return [Types::ReplicationRuleFilter]
8393
8508
  #
8394
8509
  # @!attribute [rw] status
8395
- # If status isn't enabled, the rule is ignored.
8510
+ # Specifies whether the rule is enabled.
8396
8511
  # @return [String]
8397
8512
  #
8398
8513
  # @!attribute [rw] source_selection_criteria
@@ -8401,9 +8516,6 @@ module Aws::S3
8401
8516
  # or disable the replication of these objects. Currently, Amazon S3
8402
8517
  # supports only the filter that you can specify for objects created
8403
8518
  # with server-side encryption using an AWS KMS-Managed Key (SSE-KMS).
8404
- #
8405
- # If you want Amazon S3 to replicate objects created with server-side
8406
- # encryption using AWS KMS-Managed Keys.
8407
8519
  # @return [Types::SourceSelectionCriteria]
8408
8520
  #
8409
8521
  # @!attribute [rw] destination
@@ -8411,7 +8523,6 @@ module Aws::S3
8411
8523
  # @return [Types::Destination]
8412
8524
  #
8413
8525
  # @!attribute [rw] delete_marker_replication
8414
- # Specifies whether Amazon S3 should replicate delete makers.
8415
8526
  # @return [Types::DeleteMarkerReplication]
8416
8527
  #
8417
8528
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationRule AWS API Documentation
@@ -8667,7 +8778,6 @@ module Aws::S3
8667
8778
  # @return [String]
8668
8779
  #
8669
8780
  # @!attribute [rw] restore_request
8670
- # Container for restore job parameters.
8671
8781
  # @return [Types::RestoreRequest]
8672
8782
  #
8673
8783
  # @!attribute [rw] request_payer
@@ -8819,6 +8929,8 @@ module Aws::S3
8819
8929
  include Aws::Structure
8820
8930
  end
8821
8931
 
8932
+ # Specifies the redirect behavior and when a redirect is applied.
8933
+ #
8822
8934
  # @note When making an API call, you may pass RoutingRule
8823
8935
  # data as a hash:
8824
8936
  #
@@ -8839,7 +8951,7 @@ module Aws::S3
8839
8951
  # @!attribute [rw] condition
8840
8952
  # A container for describing a condition that must be met for the
8841
8953
  # specified redirect to apply. For example, 1. If request is for pages
8842
- # in the /docs folder, redirect to the /documents folder. 2. If
8954
+ # in the `/docs` folder, redirect to the `/documents` folder. 2. If
8843
8955
  # request results in HTTP error 4xx, redirect request to another host
8844
8956
  # where you might process the error.
8845
8957
  # @return [Types::Condition]
@@ -8858,6 +8970,14 @@ module Aws::S3
8858
8970
  include Aws::Structure
8859
8971
  end
8860
8972
 
8973
+ # Specifies lifecycle rules for an Amazon S3 bucket. For more
8974
+ # information, see [PUT Bucket lifecycle][1] in the *Amazon Simple
8975
+ # Storage Service API Reference*.
8976
+ #
8977
+ #
8978
+ #
8979
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlifecycle.html
8980
+ #
8861
8981
  # @note When making an API call, you may pass Rule
8862
8982
  # data as a hash:
8863
8983
  #
@@ -8891,46 +9011,30 @@ module Aws::S3
8891
9011
  # @return [Types::LifecycleExpiration]
8892
9012
  #
8893
9013
  # @!attribute [rw] id
8894
- # Unique identifier for the rule. The value cannot be longer than 255
9014
+ # Unique identifier for the rule. The value can't be longer than 255
8895
9015
  # characters.
8896
9016
  # @return [String]
8897
9017
  #
8898
9018
  # @!attribute [rw] prefix
8899
- # Prefix identifying one or more objects to which the rule applies.
9019
+ # Object key prefix that identifies one or more objects to which this
9020
+ # rule applies.
8900
9021
  # @return [String]
8901
9022
  #
8902
9023
  # @!attribute [rw] status
8903
- # If 'Enabled', the rule is currently being applied. If
8904
- # 'Disabled', the rule is not currently being applied.
9024
+ # If `Enabled`, the rule is currently being applied. If `Disabled`,
9025
+ # the rule is not currently being applied.
8905
9026
  # @return [String]
8906
9027
  #
8907
9028
  # @!attribute [rw] transition
8908
9029
  # @return [Types::Transition]
8909
9030
  #
8910
9031
  # @!attribute [rw] noncurrent_version_transition
8911
- # Container for the transition rule that describes when noncurrent
8912
- # objects transition to the STANDARD\_IA, ONEZONE\_IA,
8913
- # INTELLIGENT\_TIERING, GLACIER or DEEP\_ARCHIVE storage class. If
8914
- # your bucket is versioning-enabled (or versioning is suspended), you
8915
- # can set this action to request that Amazon S3 transition noncurrent
8916
- # object versions to the STANDARD\_IA, ONEZONE\_IA,
8917
- # INTELLIGENT\_TIERING, GLACIER or DEEP\_ARCHIVE storage class at a
8918
- # specific period in the object's lifetime.
8919
9032
  # @return [Types::NoncurrentVersionTransition]
8920
9033
  #
8921
9034
  # @!attribute [rw] noncurrent_version_expiration
8922
- # Specifies when noncurrent object versions expire. Upon expiration,
8923
- # Amazon S3 permanently deletes the noncurrent object versions. You
8924
- # set this lifecycle configuration action on a bucket that has
8925
- # versioning enabled (or suspended) to request that Amazon S3 delete
8926
- # noncurrent object versions at a specific period in the object's
8927
- # lifetime.
8928
9035
  # @return [Types::NoncurrentVersionExpiration]
8929
9036
  #
8930
9037
  # @!attribute [rw] abort_incomplete_multipart_upload
8931
- # Specifies the days since the initiation of an Incomplete Multipart
8932
- # Upload that Lifecycle will wait before permanently removing all
8933
- # parts of the upload.
8934
9038
  # @return [Types::AbortIncompleteMultipartUpload]
8935
9039
  #
8936
9040
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Rule AWS API Documentation
@@ -8962,8 +9066,6 @@ module Aws::S3
8962
9066
  # }
8963
9067
  #
8964
9068
  # @!attribute [rw] filter_rules
8965
- # A list of containers for the key value pair that defines the
8966
- # criteria for the filter rule.
8967
9069
  # @return [Array<Types::FilterRule>]
8968
9070
  #
8969
9071
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/S3KeyFilter AWS API Documentation
@@ -9027,8 +9129,6 @@ module Aws::S3
9027
9129
  # @return [String]
9028
9130
  #
9029
9131
  # @!attribute [rw] encryption
9030
- # Describes the server-side encryption that will be applied to the
9031
- # restore results.
9032
9132
  # @return [Types::Encryption]
9033
9133
  #
9034
9134
  # @!attribute [rw] canned_acl
@@ -9303,8 +9403,14 @@ module Aws::S3
9303
9403
  end
9304
9404
 
9305
9405
  # Describes the default server-side encryption to apply to new objects
9306
- # in the bucket. If Put Object request does not specify any server-side
9307
- # encryption, this default encryption will be applied.
9406
+ # in the bucket. If a PUT Object request doesn't specify any
9407
+ # server-side encryption, this default encryption will be applied. For
9408
+ # more information, see [PUT Bucket encryption][1] in the *Amazon Simple
9409
+ # Storage Service API Reference*.
9410
+ #
9411
+ #
9412
+ #
9413
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html
9308
9414
  #
9309
9415
  # @note When making an API call, you may pass ServerSideEncryptionByDefault
9310
9416
  # data as a hash:
@@ -9320,7 +9426,7 @@ module Aws::S3
9320
9426
  #
9321
9427
  # @!attribute [rw] kms_master_key_id
9322
9428
  # KMS master key ID to use for the default encryption. This parameter
9323
- # is allowed if SSEAlgorithm is aws:kms.
9429
+ # is allowed if and only if `SSEAlgorithm` is set to `aws:kms`.
9324
9430
  # @return [String]
9325
9431
  #
9326
9432
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ServerSideEncryptionByDefault AWS API Documentation
@@ -9331,8 +9437,7 @@ module Aws::S3
9331
9437
  include Aws::Structure
9332
9438
  end
9333
9439
 
9334
- # Container for server-side encryption configuration rules. Currently S3
9335
- # supports one rule only.
9440
+ # Specifies the default server-side-encryption configuration.
9336
9441
  #
9337
9442
  # @note When making an API call, you may pass ServerSideEncryptionConfiguration
9338
9443
  # data as a hash:
@@ -9360,8 +9465,7 @@ module Aws::S3
9360
9465
  include Aws::Structure
9361
9466
  end
9362
9467
 
9363
- # Container for information about a particular server-side encryption
9364
- # configuration rule.
9468
+ # Specifies the default server-side encryption configuration.
9365
9469
  #
9366
9470
  # @note When making an API call, you may pass ServerSideEncryptionRule
9367
9471
  # data as a hash:
@@ -9374,8 +9478,8 @@ module Aws::S3
9374
9478
  # }
9375
9479
  #
9376
9480
  # @!attribute [rw] apply_server_side_encryption_by_default
9377
- # Describes the default server-side encryption to apply to new objects
9378
- # in the bucket. If Put Object request does not specify any
9481
+ # Specifies the default server-side encryption to apply to new objects
9482
+ # in the bucket. If a PUT Object request doesn't specify any
9379
9483
  # server-side encryption, this default encryption will be applied.
9380
9484
  # @return [Types::ServerSideEncryptionByDefault]
9381
9485
  #
@@ -9386,8 +9490,11 @@ module Aws::S3
9386
9490
  include Aws::Structure
9387
9491
  end
9388
9492
 
9389
- # A container for filters that define which source objects should be
9390
- # replicated.
9493
+ # A container that describes additional filters for identifying the
9494
+ # source objects that you want to replicate. You can choose to enable or
9495
+ # disable the replication of these objects. Currently, Amazon S3
9496
+ # supports only the filter that you can specify for objects created with
9497
+ # server-side encryption using an AWS KMS-Managed Key (SSE-KMS).
9391
9498
  #
9392
9499
  # @note When making an API call, you may pass SourceSelectionCriteria
9393
9500
  # data as a hash:
@@ -9399,9 +9506,10 @@ module Aws::S3
9399
9506
  # }
9400
9507
  #
9401
9508
  # @!attribute [rw] sse_kms_encrypted_objects
9402
- # A container for filter information for the selection of S3 objects
9403
- # encrypted with AWS KMS. If you include `SourceSelectionCriteria` in
9404
- # the replication configuration, this element is required.
9509
+ # A container for filter information for the selection of Amazon S3
9510
+ # objects encrypted with AWS KMS. If you include
9511
+ # `SourceSelectionCriteria` in the replication configuration, this
9512
+ # element is required.
9405
9513
  # @return [Types::SseKmsEncryptedObjects]
9406
9514
  #
9407
9515
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SourceSelectionCriteria AWS API Documentation
@@ -9422,8 +9530,8 @@ module Aws::S3
9422
9530
  # }
9423
9531
  #
9424
9532
  # @!attribute [rw] status
9425
- # If the status is not `Enabled`, replication for S3 objects encrypted
9426
- # with AWS KMS is disabled.
9533
+ # Specifies whether Amazon S3 replicates objects created with
9534
+ # server-side encryption using an AWS KMS-managed key.
9427
9535
  # @return [String]
9428
9536
  #
9429
9537
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SseKmsEncryptedObjects AWS API Documentation
@@ -9466,6 +9574,10 @@ module Aws::S3
9466
9574
  include Aws::Structure
9467
9575
  end
9468
9576
 
9577
+ # Specifies data related to access patterns to be collected and made
9578
+ # available to analyze the tradeoffs between different storage classes
9579
+ # for an Amazon S3 bucket.
9580
+ #
9469
9581
  # @note When making an API call, you may pass StorageClassAnalysis
9470
9582
  # data as a hash:
9471
9583
  #
@@ -9484,8 +9596,8 @@ module Aws::S3
9484
9596
  # }
9485
9597
  #
9486
9598
  # @!attribute [rw] data_export
9487
- # A container used to describe how data related to the storage class
9488
- # analysis should be exported.
9599
+ # Specifies how data related to the storage class analysis for an
9600
+ # Amazon S3 bucket should be exported.
9489
9601
  # @return [Types::StorageClassAnalysisDataExport]
9490
9602
  #
9491
9603
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/StorageClassAnalysis AWS API Documentation
@@ -9512,7 +9624,7 @@ module Aws::S3
9512
9624
  #
9513
9625
  # @!attribute [rw] output_schema_version
9514
9626
  # The version of the output schema to use when exporting data. Must be
9515
- # V\_1.
9627
+ # `V_1`.
9516
9628
  # @return [String]
9517
9629
  #
9518
9630
  # @!attribute [rw] destination
@@ -9603,8 +9715,8 @@ module Aws::S3
9603
9715
  end
9604
9716
 
9605
9717
  # A container for specifying the configuration for publication of
9606
- # messages to an Amazon Simple Notification Service (Amazon SNS)
9607
- # topic.when Amazon S3 detects specified events.
9718
+ # messages to an Amazon Simple Notification Service (Amazon SNS) topic
9719
+ # when Amazon S3 detects specified events.
9608
9720
  #
9609
9721
  # @note When making an API call, you may pass TopicConfiguration
9610
9722
  # data as a hash:
@@ -9633,21 +9745,21 @@ module Aws::S3
9633
9745
  #
9634
9746
  # @!attribute [rw] topic_arn
9635
9747
  # The Amazon Resource Name (ARN) of the Amazon SNS topic to which
9636
- # Amazon S3 will publish a message when it detects events of the
9748
+ # Amazon S3 publishes a message when it detects events of the
9637
9749
  # specified type.
9638
9750
  # @return [String]
9639
9751
  #
9640
9752
  # @!attribute [rw] events
9641
- # @return [Array<String>]
9642
- #
9643
- # @!attribute [rw] filter
9644
- # A container for object key name filtering rules. For information
9645
- # about key name filtering, see [Configuring Event Notifications][1]
9646
- # in the *Amazon Simple Storage Service Developer Guide*.
9753
+ # The Amazon S3 bucket event about which to send notifications. For
9754
+ # more information, see [Supported Event Types][1] in the *Amazon
9755
+ # Simple Storage Service Developer Guide*.
9647
9756
  #
9648
9757
  #
9649
9758
  #
9650
9759
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
9760
+ # @return [Array<String>]
9761
+ #
9762
+ # @!attribute [rw] filter
9651
9763
  # @return [Types::NotificationConfigurationFilter]
9652
9764
  #
9653
9765
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/TopicConfiguration AWS API Documentation
@@ -9698,6 +9810,8 @@ module Aws::S3
9698
9810
  include Aws::Structure
9699
9811
  end
9700
9812
 
9813
+ # Specifies when an object transitions to a specified storage class.
9814
+ #
9701
9815
  # @note When making an API call, you may pass Transition
9702
9816
  # data as a hash:
9703
9817
  #
@@ -9708,17 +9822,19 @@ module Aws::S3
9708
9822
  # }
9709
9823
  #
9710
9824
  # @!attribute [rw] date
9711
- # Indicates at what date the object is to be moved or deleted. Should
9712
- # be in GMT ISO 8601 Format.
9825
+ # Indicates when objects are transitioned to the specified storage
9826
+ # class. The date value must be in ISO 8601 format. The time is always
9827
+ # midnight UTC.
9713
9828
  # @return [Time]
9714
9829
  #
9715
9830
  # @!attribute [rw] days
9716
- # Indicates the lifetime, in days, of the objects that are subject to
9717
- # the rule. The value must be a non-zero positive integer.
9831
+ # Indicates the number of days after creation when objects are
9832
+ # transitioned to the specified storage class. The value must be a
9833
+ # positive integer.
9718
9834
  # @return [Integer]
9719
9835
  #
9720
9836
  # @!attribute [rw] storage_class
9721
- # The class of storage used to store the object.
9837
+ # The storage class to which you want the object to transition.
9722
9838
  # @return [String]
9723
9839
  #
9724
9840
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Transition AWS API Documentation
@@ -9994,7 +10110,9 @@ module Aws::S3
9994
10110
  # @return [Integer]
9995
10111
  #
9996
10112
  # @!attribute [rw] content_md5
9997
- # The base64-encoded 128-bit MD5 digest of the part data.
10113
+ # The base64-encoded 128-bit MD5 digest of the part data. This
10114
+ # parameter is auto-populated when using the command from the CLI.
10115
+ # This parameted is required if object lock parameters are specified.
9998
10116
  # @return [String]
9999
10117
  #
10000
10118
  # @!attribute [rw] key
@@ -10057,6 +10175,14 @@ module Aws::S3
10057
10175
  include Aws::Structure
10058
10176
  end
10059
10177
 
10178
+ # Describes the versioning state of an Amazon S3 bucket. For more
10179
+ # information, see [PUT Bucket versioning][1] in the *Amazon Simple
10180
+ # Storage Service API Reference*.
10181
+ #
10182
+ #
10183
+ #
10184
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTVersioningStatus.html
10185
+ #
10060
10186
  # @note When making an API call, you may pass VersioningConfiguration
10061
10187
  # data as a hash:
10062
10188
  #
@@ -10084,6 +10210,8 @@ module Aws::S3
10084
10210
  include Aws::Structure
10085
10211
  end
10086
10212
 
10213
+ # Specifies website configuration parameters for an Amazon S3 bucket.
10214
+ #
10087
10215
  # @note When making an API call, you may pass WebsiteConfiguration
10088
10216
  # data as a hash:
10089
10217
  #
@@ -10116,15 +10244,23 @@ module Aws::S3
10116
10244
  # }
10117
10245
  #
10118
10246
  # @!attribute [rw] error_document
10247
+ # The name of the error document for the website.
10119
10248
  # @return [Types::ErrorDocument]
10120
10249
  #
10121
10250
  # @!attribute [rw] index_document
10251
+ # The name of the index document for the website.
10122
10252
  # @return [Types::IndexDocument]
10123
10253
  #
10124
10254
  # @!attribute [rw] redirect_all_requests_to
10255
+ # The redirect behavior for every request to this bucket's website
10256
+ # endpoint.
10257
+ #
10258
+ # If you specify this property, you can't specify any other property.
10125
10259
  # @return [Types::RedirectAllRequestsTo]
10126
10260
  #
10127
10261
  # @!attribute [rw] routing_rules
10262
+ # Rules that define when a redirect is applied and the redirect
10263
+ # behavior.
10128
10264
  # @return [Array<Types::RoutingRule>]
10129
10265
  #
10130
10266
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/WebsiteConfiguration AWS API Documentation