aws-sdk-s3 1.41.0 → 1.42.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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