aws-sdk-s3 1.24.1 → 1.36.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -401,13 +401,13 @@ module Aws::S3
401
401
  # {
402
402
  # date: Time.now,
403
403
  # days: 1,
404
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
404
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
405
405
  # },
406
406
  # ],
407
407
  # noncurrent_version_transitions: [
408
408
  # {
409
409
  # noncurrent_days: 1,
410
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
410
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
411
411
  # },
412
412
  # ],
413
413
  # noncurrent_version_expiration: {
@@ -649,8 +649,8 @@ module Aws::S3
649
649
  #
650
650
  # {
651
651
  # id: "NotificationId",
652
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
653
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
652
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
653
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
654
654
  # cloud_function: "CloudFunction",
655
655
  # invocation_role: "CloudFunctionInvocationRole",
656
656
  # }
@@ -972,7 +972,7 @@ module Aws::S3
972
972
  # metadata_directive: "COPY", # accepts COPY, REPLACE
973
973
  # tagging_directive: "COPY", # accepts COPY, REPLACE
974
974
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
975
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
975
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
976
976
  # website_redirect_location: "WebsiteRedirectLocation",
977
977
  # sse_customer_algorithm: "SSECustomerAlgorithm",
978
978
  # sse_customer_key: "SSECustomerKey",
@@ -983,6 +983,9 @@ module Aws::S3
983
983
  # copy_source_sse_customer_key_md5: "CopySourceSSECustomerKeyMD5",
984
984
  # request_payer: "requester", # accepts requester
985
985
  # tagging: "TaggingHeader",
986
+ # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
987
+ # object_lock_retain_until_date: Time.now,
988
+ # object_lock_legal_hold_status: "ON", # accepts ON, OFF
986
989
  # }
987
990
  #
988
991
  # @!attribute [rw] acl
@@ -1150,6 +1153,20 @@ module Aws::S3
1150
1153
  # encoded as URL Query parameters
1151
1154
  # @return [String]
1152
1155
  #
1156
+ # @!attribute [rw] object_lock_mode
1157
+ # The Object Lock mode that you want to apply to the copied object.
1158
+ # @return [String]
1159
+ #
1160
+ # @!attribute [rw] object_lock_retain_until_date
1161
+ # The date and time when you want the copied object's Object Lock to
1162
+ # expire.
1163
+ # @return [Time]
1164
+ #
1165
+ # @!attribute [rw] object_lock_legal_hold_status
1166
+ # Specifies whether you want to apply a Legal Hold to the copied
1167
+ # object.
1168
+ # @return [String]
1169
+ #
1153
1170
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyObjectRequest AWS API Documentation
1154
1171
  #
1155
1172
  class CopyObjectRequest < Struct.new(
@@ -1185,7 +1202,10 @@ module Aws::S3
1185
1202
  :copy_source_sse_customer_key,
1186
1203
  :copy_source_sse_customer_key_md5,
1187
1204
  :request_payer,
1188
- :tagging)
1205
+ :tagging,
1206
+ :object_lock_mode,
1207
+ :object_lock_retain_until_date,
1208
+ :object_lock_legal_hold_status)
1189
1209
  include Aws::Structure
1190
1210
  end
1191
1211
 
@@ -1228,7 +1248,8 @@ module Aws::S3
1228
1248
  #
1229
1249
  # @!attribute [rw] location_constraint
1230
1250
  # Specifies the region where the bucket will be created. If you don't
1231
- # specify a region, the bucket will be created in US Standard.
1251
+ # specify a region, the bucket is created in US East (N. Virginia)
1252
+ # Region (us-east-1).
1232
1253
  # @return [String]
1233
1254
  #
1234
1255
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucketConfiguration AWS API Documentation
@@ -1262,6 +1283,7 @@ module Aws::S3
1262
1283
  # grant_read_acp: "GrantReadACP",
1263
1284
  # grant_write: "GrantWrite",
1264
1285
  # grant_write_acp: "GrantWriteACP",
1286
+ # object_lock_enabled_for_bucket: false,
1265
1287
  # }
1266
1288
  #
1267
1289
  # @!attribute [rw] acl
@@ -1296,6 +1318,11 @@ module Aws::S3
1296
1318
  # Allows grantee to write the ACL for the applicable bucket.
1297
1319
  # @return [String]
1298
1320
  #
1321
+ # @!attribute [rw] object_lock_enabled_for_bucket
1322
+ # Specifies whether you want S3 Object Lock to be enabled for the new
1323
+ # bucket.
1324
+ # @return [Boolean]
1325
+ #
1299
1326
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucketRequest AWS API Documentation
1300
1327
  #
1301
1328
  class CreateBucketRequest < Struct.new(
@@ -1306,7 +1333,8 @@ module Aws::S3
1306
1333
  :grant_read,
1307
1334
  :grant_read_acp,
1308
1335
  :grant_write,
1309
- :grant_write_acp)
1336
+ :grant_write_acp,
1337
+ :object_lock_enabled_for_bucket)
1310
1338
  include Aws::Structure
1311
1339
  end
1312
1340
 
@@ -1397,7 +1425,7 @@ module Aws::S3
1397
1425
  # "MetadataKey" => "MetadataValue",
1398
1426
  # },
1399
1427
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
1400
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
1428
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
1401
1429
  # website_redirect_location: "WebsiteRedirectLocation",
1402
1430
  # sse_customer_algorithm: "SSECustomerAlgorithm",
1403
1431
  # sse_customer_key: "SSECustomerKey",
@@ -1405,6 +1433,9 @@ module Aws::S3
1405
1433
  # ssekms_key_id: "SSEKMSKeyId",
1406
1434
  # request_payer: "requester", # accepts requester
1407
1435
  # tagging: "TaggingHeader",
1436
+ # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
1437
+ # object_lock_retain_until_date: Time.now,
1438
+ # object_lock_legal_hold_status: "ON", # accepts ON, OFF
1408
1439
  # }
1409
1440
  #
1410
1441
  # @!attribute [rw] acl
@@ -1520,6 +1551,20 @@ module Aws::S3
1520
1551
  # parameters
1521
1552
  # @return [String]
1522
1553
  #
1554
+ # @!attribute [rw] object_lock_mode
1555
+ # Specifies the Object Lock mode that you want to apply to the
1556
+ # uploaded object.
1557
+ # @return [String]
1558
+ #
1559
+ # @!attribute [rw] object_lock_retain_until_date
1560
+ # Specifies the date and time when you want the Object Lock to expire.
1561
+ # @return [Time]
1562
+ #
1563
+ # @!attribute [rw] object_lock_legal_hold_status
1564
+ # Specifies whether you want to apply a Legal Hold to the uploaded
1565
+ # object.
1566
+ # @return [String]
1567
+ #
1523
1568
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUploadRequest AWS API Documentation
1524
1569
  #
1525
1570
  class CreateMultipartUploadRequest < Struct.new(
@@ -1545,7 +1590,46 @@ module Aws::S3
1545
1590
  :sse_customer_key_md5,
1546
1591
  :ssekms_key_id,
1547
1592
  :request_payer,
1548
- :tagging)
1593
+ :tagging,
1594
+ :object_lock_mode,
1595
+ :object_lock_retain_until_date,
1596
+ :object_lock_legal_hold_status)
1597
+ include Aws::Structure
1598
+ end
1599
+
1600
+ # The container element for specifying the default Object Lock retention
1601
+ # settings for new objects placed in the specified bucket.
1602
+ #
1603
+ # @note When making an API call, you may pass DefaultRetention
1604
+ # data as a hash:
1605
+ #
1606
+ # {
1607
+ # mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
1608
+ # days: 1,
1609
+ # years: 1,
1610
+ # }
1611
+ #
1612
+ # @!attribute [rw] mode
1613
+ # The default Object Lock retention mode you want to apply to new
1614
+ # objects placed in the specified bucket.
1615
+ # @return [String]
1616
+ #
1617
+ # @!attribute [rw] days
1618
+ # The number of days that you want to specify for the default
1619
+ # retention period.
1620
+ # @return [Integer]
1621
+ #
1622
+ # @!attribute [rw] years
1623
+ # The number of years that you want to specify for the default
1624
+ # retention period.
1625
+ # @return [Integer]
1626
+ #
1627
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DefaultRetention AWS API Documentation
1628
+ #
1629
+ class DefaultRetention < Struct.new(
1630
+ :mode,
1631
+ :days,
1632
+ :years)
1549
1633
  include Aws::Structure
1550
1634
  end
1551
1635
 
@@ -1886,6 +1970,7 @@ module Aws::S3
1886
1970
  # mfa: "MFA",
1887
1971
  # version_id: "ObjectVersionId",
1888
1972
  # request_payer: "requester", # accepts requester
1973
+ # bypass_governance_retention: false,
1889
1974
  # }
1890
1975
  #
1891
1976
  # @!attribute [rw] bucket
@@ -1912,6 +1997,11 @@ module Aws::S3
1912
1997
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
1913
1998
  # @return [String]
1914
1999
  #
2000
+ # @!attribute [rw] bypass_governance_retention
2001
+ # Indicates whether S3 Object Lock should bypass Governance-mode
2002
+ # restrictions to process this operation.
2003
+ # @return [Boolean]
2004
+ #
1915
2005
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectRequest AWS API Documentation
1916
2006
  #
1917
2007
  class DeleteObjectRequest < Struct.new(
@@ -1919,7 +2009,8 @@ module Aws::S3
1919
2009
  :key,
1920
2010
  :mfa,
1921
2011
  :version_id,
1922
- :request_payer)
2012
+ :request_payer,
2013
+ :bypass_governance_retention)
1923
2014
  include Aws::Structure
1924
2015
  end
1925
2016
 
@@ -1998,6 +2089,7 @@ module Aws::S3
1998
2089
  # },
1999
2090
  # mfa: "MFA",
2000
2091
  # request_payer: "requester", # accepts requester
2092
+ # bypass_governance_retention: false,
2001
2093
  # }
2002
2094
  #
2003
2095
  # @!attribute [rw] bucket
@@ -2020,13 +2112,20 @@ module Aws::S3
2020
2112
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
2021
2113
  # @return [String]
2022
2114
  #
2115
+ # @!attribute [rw] bypass_governance_retention
2116
+ # Specifies whether you want to delete this object even if it has a
2117
+ # Governance-type Object Lock in place. You must have sufficient
2118
+ # permissions to perform this operation.
2119
+ # @return [Boolean]
2120
+ #
2023
2121
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectsRequest AWS API Documentation
2024
2122
  #
2025
2123
  class DeleteObjectsRequest < Struct.new(
2026
2124
  :bucket,
2027
2125
  :delete,
2028
2126
  :mfa,
2029
- :request_payer)
2127
+ :request_payer,
2128
+ :bypass_governance_retention)
2030
2129
  include Aws::Structure
2031
2130
  end
2032
2131
 
@@ -2038,7 +2137,7 @@ module Aws::S3
2038
2137
  # }
2039
2138
  #
2040
2139
  # @!attribute [rw] bucket
2041
- # The Amazon S3 bucket whose Public Access Block configuration you
2140
+ # The Amazon S3 bucket whose `PublicAccessBlock` configuration you
2042
2141
  # want to delete.
2043
2142
  # @return [String]
2044
2143
  #
@@ -2079,7 +2178,7 @@ module Aws::S3
2079
2178
  # {
2080
2179
  # bucket: "BucketName", # required
2081
2180
  # account: "AccountId",
2082
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
2181
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
2083
2182
  # access_control_translation: {
2084
2183
  # owner: "Destination", # required, accepts Destination
2085
2184
  # },
@@ -2266,7 +2365,7 @@ module Aws::S3
2266
2365
  #
2267
2366
  #
2268
2367
  #
2269
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
2368
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
2270
2369
  # @return [String]
2271
2370
  #
2272
2371
  # @!attribute [rw] value
@@ -2666,7 +2765,7 @@ module Aws::S3
2666
2765
  end
2667
2766
 
2668
2767
  # @!attribute [rw] policy_status
2669
- # The public-policy status for this bucket.
2768
+ # The policy status for the specified bucket.
2670
2769
  # @return [Types::PolicyStatus]
2671
2770
  #
2672
2771
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatusOutput AWS API Documentation
@@ -2684,8 +2783,8 @@ module Aws::S3
2684
2783
  # }
2685
2784
  #
2686
2785
  # @!attribute [rw] bucket
2687
- # The name of the Amazon S3 bucket whose public-policy status you want
2688
- # to retrieve.
2786
+ # The name of the Amazon S3 bucket whose policy status you want to
2787
+ # retrieve.
2689
2788
  # @return [String]
2690
2789
  #
2691
2790
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatusRequest AWS API Documentation
@@ -2913,6 +3012,89 @@ module Aws::S3
2913
3012
  include Aws::Structure
2914
3013
  end
2915
3014
 
3015
+ # @!attribute [rw] legal_hold
3016
+ # The current Legal Hold status for the specified object.
3017
+ # @return [Types::ObjectLockLegalHold]
3018
+ #
3019
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLegalHoldOutput AWS API Documentation
3020
+ #
3021
+ class GetObjectLegalHoldOutput < Struct.new(
3022
+ :legal_hold)
3023
+ include Aws::Structure
3024
+ end
3025
+
3026
+ # @note When making an API call, you may pass GetObjectLegalHoldRequest
3027
+ # data as a hash:
3028
+ #
3029
+ # {
3030
+ # bucket: "BucketName", # required
3031
+ # key: "ObjectKey", # required
3032
+ # version_id: "ObjectVersionId",
3033
+ # request_payer: "requester", # accepts requester
3034
+ # }
3035
+ #
3036
+ # @!attribute [rw] bucket
3037
+ # The bucket containing the object whose Legal Hold status you want to
3038
+ # retrieve.
3039
+ # @return [String]
3040
+ #
3041
+ # @!attribute [rw] key
3042
+ # The key name for the object whose Legal Hold status you want to
3043
+ # retrieve.
3044
+ # @return [String]
3045
+ #
3046
+ # @!attribute [rw] version_id
3047
+ # The version ID of the object whose Legal Hold status you want to
3048
+ # retrieve.
3049
+ # @return [String]
3050
+ #
3051
+ # @!attribute [rw] request_payer
3052
+ # Confirms that the requester knows that she or he will be charged for
3053
+ # the request. Bucket owners need not specify this parameter in their
3054
+ # requests. Documentation on downloading objects from requester pays
3055
+ # buckets can be found at
3056
+ # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
3057
+ # @return [String]
3058
+ #
3059
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLegalHoldRequest AWS API Documentation
3060
+ #
3061
+ class GetObjectLegalHoldRequest < Struct.new(
3062
+ :bucket,
3063
+ :key,
3064
+ :version_id,
3065
+ :request_payer)
3066
+ include Aws::Structure
3067
+ end
3068
+
3069
+ # @!attribute [rw] object_lock_configuration
3070
+ # The specified bucket's Object Lock configuration.
3071
+ # @return [Types::ObjectLockConfiguration]
3072
+ #
3073
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfigurationOutput AWS API Documentation
3074
+ #
3075
+ class GetObjectLockConfigurationOutput < Struct.new(
3076
+ :object_lock_configuration)
3077
+ include Aws::Structure
3078
+ end
3079
+
3080
+ # @note When making an API call, you may pass GetObjectLockConfigurationRequest
3081
+ # data as a hash:
3082
+ #
3083
+ # {
3084
+ # bucket: "BucketName", # required
3085
+ # }
3086
+ #
3087
+ # @!attribute [rw] bucket
3088
+ # The bucket whose Object Lock configuration you want to retrieve.
3089
+ # @return [String]
3090
+ #
3091
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfigurationRequest AWS API Documentation
3092
+ #
3093
+ class GetObjectLockConfigurationRequest < Struct.new(
3094
+ :bucket)
3095
+ include Aws::Structure
3096
+ end
3097
+
2916
3098
  # @!attribute [rw] body
2917
3099
  # Object data.
2918
3100
  # @return [IO]
@@ -3049,6 +3231,20 @@ module Aws::S3
3049
3231
  # The number of tags, if any, on the object.
3050
3232
  # @return [Integer]
3051
3233
  #
3234
+ # @!attribute [rw] object_lock_mode
3235
+ # The Object Lock mode currently in place for this object.
3236
+ # @return [String]
3237
+ #
3238
+ # @!attribute [rw] object_lock_retain_until_date
3239
+ # The date and time when this object's Object Lock will expire.
3240
+ # @return [Time]
3241
+ #
3242
+ # @!attribute [rw] object_lock_legal_hold_status
3243
+ # Indicates whether this object has an active legal hold. This field
3244
+ # is only returned if you have permission to view an object's legal
3245
+ # hold status.
3246
+ # @return [String]
3247
+ #
3052
3248
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectOutput AWS API Documentation
3053
3249
  #
3054
3250
  class GetObjectOutput < Struct.new(
@@ -3080,7 +3276,10 @@ module Aws::S3
3080
3276
  :request_charged,
3081
3277
  :replication_status,
3082
3278
  :parts_count,
3083
- :tag_count)
3279
+ :tag_count,
3280
+ :object_lock_mode,
3281
+ :object_lock_retain_until_date,
3282
+ :object_lock_legal_hold_status)
3084
3283
  include Aws::Structure
3085
3284
  end
3086
3285
 
@@ -3228,6 +3427,60 @@ module Aws::S3
3228
3427
  include Aws::Structure
3229
3428
  end
3230
3429
 
3430
+ # @!attribute [rw] retention
3431
+ # The container element for an object's retention settings.
3432
+ # @return [Types::ObjectLockRetention]
3433
+ #
3434
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRetentionOutput AWS API Documentation
3435
+ #
3436
+ class GetObjectRetentionOutput < Struct.new(
3437
+ :retention)
3438
+ include Aws::Structure
3439
+ end
3440
+
3441
+ # @note When making an API call, you may pass GetObjectRetentionRequest
3442
+ # data as a hash:
3443
+ #
3444
+ # {
3445
+ # bucket: "BucketName", # required
3446
+ # key: "ObjectKey", # required
3447
+ # version_id: "ObjectVersionId",
3448
+ # request_payer: "requester", # accepts requester
3449
+ # }
3450
+ #
3451
+ # @!attribute [rw] bucket
3452
+ # The bucket containing the object whose retention settings you want
3453
+ # to retrieve.
3454
+ # @return [String]
3455
+ #
3456
+ # @!attribute [rw] key
3457
+ # The key name for the object whose retention settings you want to
3458
+ # retrieve.
3459
+ # @return [String]
3460
+ #
3461
+ # @!attribute [rw] version_id
3462
+ # The version ID for the object whose retention settings you want to
3463
+ # retrieve.
3464
+ # @return [String]
3465
+ #
3466
+ # @!attribute [rw] request_payer
3467
+ # Confirms that the requester knows that she or he will be charged for
3468
+ # the request. Bucket owners need not specify this parameter in their
3469
+ # requests. Documentation on downloading objects from requester pays
3470
+ # buckets can be found at
3471
+ # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
3472
+ # @return [String]
3473
+ #
3474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRetentionRequest AWS API Documentation
3475
+ #
3476
+ class GetObjectRetentionRequest < Struct.new(
3477
+ :bucket,
3478
+ :key,
3479
+ :version_id,
3480
+ :request_payer)
3481
+ include Aws::Structure
3482
+ end
3483
+
3231
3484
  # @!attribute [rw] version_id
3232
3485
  # @return [String]
3233
3486
  #
@@ -3318,7 +3571,7 @@ module Aws::S3
3318
3571
  end
3319
3572
 
3320
3573
  # @!attribute [rw] public_access_block_configuration
3321
- # The Public Access Block configuration currently in effect for this
3574
+ # The `PublicAccessBlock` configuration currently in effect for this
3322
3575
  # Amazon S3 bucket.
3323
3576
  # @return [Types::PublicAccessBlockConfiguration]
3324
3577
  #
@@ -3337,7 +3590,7 @@ module Aws::S3
3337
3590
  # }
3338
3591
  #
3339
3592
  # @!attribute [rw] bucket
3340
- # The name of the Amazon S3 bucket whose Public Access Block
3593
+ # The name of the Amazon S3 bucket whose `PublicAccessBlock`
3341
3594
  # configuration you want to retrieve.
3342
3595
  # @return [String]
3343
3596
  #
@@ -3578,6 +3831,18 @@ module Aws::S3
3578
3831
  # The count of parts this object has.
3579
3832
  # @return [Integer]
3580
3833
  #
3834
+ # @!attribute [rw] object_lock_mode
3835
+ # The Object Lock mode currently in place for this object.
3836
+ # @return [String]
3837
+ #
3838
+ # @!attribute [rw] object_lock_retain_until_date
3839
+ # The date and time when this object's Object Lock will expire.
3840
+ # @return [Time]
3841
+ #
3842
+ # @!attribute [rw] object_lock_legal_hold_status
3843
+ # The Legal Hold status for the specified object.
3844
+ # @return [String]
3845
+ #
3581
3846
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadObjectOutput AWS API Documentation
3582
3847
  #
3583
3848
  class HeadObjectOutput < Struct.new(
@@ -3606,7 +3871,10 @@ module Aws::S3
3606
3871
  :storage_class,
3607
3872
  :request_charged,
3608
3873
  :replication_status,
3609
- :parts_count)
3874
+ :parts_count,
3875
+ :object_lock_mode,
3876
+ :object_lock_retain_until_date,
3877
+ :object_lock_legal_hold_status)
3610
3878
  include Aws::Structure
3611
3879
  end
3612
3880
 
@@ -3815,7 +4083,7 @@ module Aws::S3
3815
4083
  # s3_bucket_destination: { # required
3816
4084
  # account_id: "AccountId",
3817
4085
  # bucket: "BucketName", # required
3818
- # format: "CSV", # required, accepts CSV, ORC
4086
+ # format: "CSV", # required, accepts CSV, ORC, Parquet
3819
4087
  # prefix: "Prefix",
3820
4088
  # encryption: {
3821
4089
  # sses3: {
@@ -3832,7 +4100,7 @@ module Aws::S3
3832
4100
  # },
3833
4101
  # id: "InventoryId", # required
3834
4102
  # included_object_versions: "All", # required, accepts All, Current
3835
- # optional_fields: ["Size"], # accepts Size, LastModifiedDate, StorageClass, ETag, IsMultipartUploaded, ReplicationStatus, EncryptionStatus
4103
+ # optional_fields: ["Size"], # accepts Size, LastModifiedDate, StorageClass, ETag, IsMultipartUploaded, ReplicationStatus, EncryptionStatus, ObjectLockRetainUntilDate, ObjectLockMode, ObjectLockLegalHoldStatus
3836
4104
  # schedule: { # required
3837
4105
  # frequency: "Daily", # required, accepts Daily, Weekly
3838
4106
  # },
@@ -3889,7 +4157,7 @@ module Aws::S3
3889
4157
  # s3_bucket_destination: { # required
3890
4158
  # account_id: "AccountId",
3891
4159
  # bucket: "BucketName", # required
3892
- # format: "CSV", # required, accepts CSV, ORC
4160
+ # format: "CSV", # required, accepts CSV, ORC, Parquet
3893
4161
  # prefix: "Prefix",
3894
4162
  # encryption: {
3895
4163
  # sses3: {
@@ -3968,7 +4236,7 @@ module Aws::S3
3968
4236
  # {
3969
4237
  # account_id: "AccountId",
3970
4238
  # bucket: "BucketName", # required
3971
- # format: "CSV", # required, accepts CSV, ORC
4239
+ # format: "CSV", # required, accepts CSV, ORC, Parquet
3972
4240
  # prefix: "Prefix",
3973
4241
  # encryption: {
3974
4242
  # sses3: {
@@ -4075,7 +4343,7 @@ module Aws::S3
4075
4343
  # {
4076
4344
  # id: "NotificationId",
4077
4345
  # lambda_function_arn: "LambdaFunctionArn", # required
4078
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
4346
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
4079
4347
  # filter: {
4080
4348
  # key: {
4081
4349
  # filter_rules: [
@@ -4109,7 +4377,7 @@ module Aws::S3
4109
4377
  #
4110
4378
  #
4111
4379
  #
4112
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
4380
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
4113
4381
  # @return [Types::NotificationConfigurationFilter]
4114
4382
  #
4115
4383
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LambdaFunctionConfiguration AWS API Documentation
@@ -4139,11 +4407,11 @@ module Aws::S3
4139
4407
  # transition: {
4140
4408
  # date: Time.now,
4141
4409
  # days: 1,
4142
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
4410
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
4143
4411
  # },
4144
4412
  # noncurrent_version_transition: {
4145
4413
  # noncurrent_days: 1,
4146
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
4414
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
4147
4415
  # },
4148
4416
  # noncurrent_version_expiration: {
4149
4417
  # noncurrent_days: 1,
@@ -4232,13 +4500,13 @@ module Aws::S3
4232
4500
  # {
4233
4501
  # date: Time.now,
4234
4502
  # days: 1,
4235
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
4503
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
4236
4504
  # },
4237
4505
  # ],
4238
4506
  # noncurrent_version_transitions: [
4239
4507
  # {
4240
4508
  # noncurrent_days: 1,
4241
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
4509
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
4242
4510
  # },
4243
4511
  # ],
4244
4512
  # noncurrent_version_expiration: {
@@ -4259,7 +4527,7 @@ module Aws::S3
4259
4527
  #
4260
4528
  # @!attribute [rw] prefix
4261
4529
  # Prefix identifying one or more objects to which the rule applies.
4262
- # This is deprecated; use Filter instead.
4530
+ # This is No longer used; use Filter instead.
4263
4531
  # @return [String]
4264
4532
  #
4265
4533
  # @!attribute [rw] filter
@@ -5502,7 +5770,7 @@ module Aws::S3
5502
5770
  #
5503
5771
  #
5504
5772
  #
5505
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
5773
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
5506
5774
  # @return [Integer]
5507
5775
  #
5508
5776
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NoncurrentVersionExpiration AWS API Documentation
@@ -5513,11 +5781,12 @@ module Aws::S3
5513
5781
  end
5514
5782
 
5515
5783
  # Container for the transition rule that describes when noncurrent
5516
- # objects transition to the STANDARD\_IA, ONEZONE\_IA, or GLACIER
5517
- # storage class. If your bucket is versioning-enabled (or versioning is
5518
- # suspended), you can set this action to request that Amazon S3
5519
- # transition noncurrent object versions to the STANDARD\_IA,
5520
- # ONEZONE\_IA, or GLACIER storage class at a specific period in the
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
5521
5790
  # object's lifetime.
5522
5791
  #
5523
5792
  # @note When making an API call, you may pass NoncurrentVersionTransition
@@ -5525,7 +5794,7 @@ module Aws::S3
5525
5794
  #
5526
5795
  # {
5527
5796
  # noncurrent_days: 1,
5528
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
5797
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
5529
5798
  # }
5530
5799
  #
5531
5800
  # @!attribute [rw] noncurrent_days
@@ -5537,7 +5806,7 @@ module Aws::S3
5537
5806
  #
5538
5807
  #
5539
5808
  #
5540
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
5809
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
5541
5810
  # @return [Integer]
5542
5811
  #
5543
5812
  # @!attribute [rw] storage_class
@@ -5564,7 +5833,7 @@ module Aws::S3
5564
5833
  # {
5565
5834
  # id: "NotificationId",
5566
5835
  # topic_arn: "TopicArn", # required
5567
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
5836
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
5568
5837
  # filter: {
5569
5838
  # key: {
5570
5839
  # filter_rules: [
@@ -5581,7 +5850,7 @@ module Aws::S3
5581
5850
  # {
5582
5851
  # id: "NotificationId",
5583
5852
  # queue_arn: "QueueArn", # required
5584
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
5853
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
5585
5854
  # filter: {
5586
5855
  # key: {
5587
5856
  # filter_rules: [
@@ -5598,7 +5867,7 @@ module Aws::S3
5598
5867
  # {
5599
5868
  # id: "NotificationId",
5600
5869
  # lambda_function_arn: "LambdaFunctionArn", # required
5601
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
5870
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
5602
5871
  # filter: {
5603
5872
  # key: {
5604
5873
  # filter_rules: [
@@ -5637,20 +5906,20 @@ module Aws::S3
5637
5906
  # {
5638
5907
  # topic_configuration: {
5639
5908
  # id: "NotificationId",
5640
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
5641
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
5909
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
5910
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
5642
5911
  # topic: "TopicArn",
5643
5912
  # },
5644
5913
  # queue_configuration: {
5645
5914
  # id: "NotificationId",
5646
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
5647
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
5915
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
5916
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
5648
5917
  # queue: "QueueArn",
5649
5918
  # },
5650
5919
  # cloud_function_configuration: {
5651
5920
  # id: "NotificationId",
5652
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
5653
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
5921
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
5922
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
5654
5923
  # cloud_function: "CloudFunction",
5655
5924
  # invocation_role: "CloudFunctionInvocationRole",
5656
5925
  # },
@@ -5680,7 +5949,7 @@ module Aws::S3
5680
5949
  #
5681
5950
  #
5682
5951
  #
5683
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
5952
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
5684
5953
  #
5685
5954
  # @note When making an API call, you may pass NotificationConfigurationFilter
5686
5955
  # data as a hash:
@@ -5762,6 +6031,110 @@ module Aws::S3
5762
6031
  include Aws::Structure
5763
6032
  end
5764
6033
 
6034
+ # The container element for Object Lock configuration parameters.
6035
+ #
6036
+ # @note When making an API call, you may pass ObjectLockConfiguration
6037
+ # data as a hash:
6038
+ #
6039
+ # {
6040
+ # object_lock_enabled: "Enabled", # accepts Enabled
6041
+ # rule: {
6042
+ # default_retention: {
6043
+ # mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
6044
+ # days: 1,
6045
+ # years: 1,
6046
+ # },
6047
+ # },
6048
+ # }
6049
+ #
6050
+ # @!attribute [rw] object_lock_enabled
6051
+ # Indicates whether this bucket has an Object Lock configuration
6052
+ # enabled.
6053
+ # @return [String]
6054
+ #
6055
+ # @!attribute [rw] rule
6056
+ # The Object Lock rule in place for the specified object.
6057
+ # @return [Types::ObjectLockRule]
6058
+ #
6059
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockConfiguration AWS API Documentation
6060
+ #
6061
+ class ObjectLockConfiguration < Struct.new(
6062
+ :object_lock_enabled,
6063
+ :rule)
6064
+ include Aws::Structure
6065
+ end
6066
+
6067
+ # A Legal Hold configuration for an object.
6068
+ #
6069
+ # @note When making an API call, you may pass ObjectLockLegalHold
6070
+ # data as a hash:
6071
+ #
6072
+ # {
6073
+ # status: "ON", # accepts ON, OFF
6074
+ # }
6075
+ #
6076
+ # @!attribute [rw] status
6077
+ # Indicates whether the specified object has a Legal Hold in place.
6078
+ # @return [String]
6079
+ #
6080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockLegalHold AWS API Documentation
6081
+ #
6082
+ class ObjectLockLegalHold < Struct.new(
6083
+ :status)
6084
+ include Aws::Structure
6085
+ end
6086
+
6087
+ # A Retention configuration for an object.
6088
+ #
6089
+ # @note When making an API call, you may pass ObjectLockRetention
6090
+ # data as a hash:
6091
+ #
6092
+ # {
6093
+ # mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
6094
+ # retain_until_date: Time.now,
6095
+ # }
6096
+ #
6097
+ # @!attribute [rw] mode
6098
+ # Indicates the Retention mode for the specified object.
6099
+ # @return [String]
6100
+ #
6101
+ # @!attribute [rw] retain_until_date
6102
+ # The date on which this Object Lock Retention will expire.
6103
+ # @return [Time]
6104
+ #
6105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockRetention AWS API Documentation
6106
+ #
6107
+ class ObjectLockRetention < Struct.new(
6108
+ :mode,
6109
+ :retain_until_date)
6110
+ include Aws::Structure
6111
+ end
6112
+
6113
+ # The container element for an Object Lock rule.
6114
+ #
6115
+ # @note When making an API call, you may pass ObjectLockRule
6116
+ # data as a hash:
6117
+ #
6118
+ # {
6119
+ # default_retention: {
6120
+ # mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
6121
+ # days: 1,
6122
+ # years: 1,
6123
+ # },
6124
+ # }
6125
+ #
6126
+ # @!attribute [rw] default_retention
6127
+ # The default retention period that you want to apply to new objects
6128
+ # placed in the specified bucket.
6129
+ # @return [Types::DefaultRetention]
6130
+ #
6131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockRule AWS API Documentation
6132
+ #
6133
+ class ObjectLockRule < Struct.new(
6134
+ :default_retention)
6135
+ include Aws::Structure
6136
+ end
6137
+
5765
6138
  # @!attribute [rw] etag
5766
6139
  # @return [String]
5767
6140
  #
@@ -5848,7 +6221,7 @@ module Aws::S3
5848
6221
  # value: "MetadataValue",
5849
6222
  # },
5850
6223
  # ],
5851
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
6224
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
5852
6225
  # },
5853
6226
  # }
5854
6227
  #
@@ -5953,11 +6326,11 @@ module Aws::S3
5953
6326
  include Aws::Structure
5954
6327
  end
5955
6328
 
5956
- # The container element for this bucket's public-policy status.
6329
+ # The container element for a bucket's policy status.
5957
6330
  #
5958
6331
  # @!attribute [rw] is_public
5959
- # The public-policy status for this bucket. `TRUE` indicates that this
5960
- # bucket is public. `FALSE` indicates that the bucket is not public.
6332
+ # The policy status for this bucket. `TRUE` indicates that this bucket
6333
+ # is public. `FALSE` indicates that the bucket is not public.
5961
6334
  # @return [Boolean]
5962
6335
  #
5963
6336
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PolicyStatus AWS API Documentation
@@ -6000,51 +6373,6 @@ module Aws::S3
6000
6373
  include Aws::Structure
6001
6374
  end
6002
6375
 
6003
- # The container element for all Public Access Block configuration
6004
- # options. You can enable the configuration options in any combination.
6005
- #
6006
- # Amazon S3 considers a bucket policy public unless at least one of the
6007
- # following conditions is true:
6008
- #
6009
- # 1. The policy limits access to a set of CIDRs using `aws:SourceIp`.
6010
- # For more information on CIDR, see
6011
- # [http://www.rfc-editor.org/rfc/rfc4632.txt][1]
6012
- #
6013
- # 2. The policy grants permissions, not including any "bad actions,"
6014
- # to one of the following:
6015
- #
6016
- # * A fixed AWS principal, user, role, or service principal
6017
- #
6018
- # * A fixed `aws:SourceArn`
6019
- #
6020
- # * A fixed `aws:SourceVpc`
6021
- #
6022
- # * A fixed `aws:SourceVpce`
6023
- #
6024
- # * A fixed `aws:SourceOwner`
6025
- #
6026
- # * A fixed `aws:SourceAccount`
6027
- #
6028
- # * A fixed value of
6029
- # `s3:x-amz-server-side-encryption-aws-kms-key-id`
6030
- #
6031
- # * A fixed value of `aws:userid` outside the pattern
6032
- # "`AROLEID:*`"
6033
- #
6034
- # "Bad actions" are those that could expose the data inside a bucket
6035
- # to reads or writes by the public. These actions are `s3:Get*`,
6036
- # `s3:List*`, `s3:AbortMultipartUpload`, `s3:Delete*`, `s3:Put*`, and
6037
- # `s3:RestoreObject`.
6038
- #
6039
- # The star notation for bad actions indicates that all matching
6040
- # operations are considered bad actions. For example, because `s3:Get*`
6041
- # is a bad action, `s3:GetObject`, `s3:GetObjectVersion`, and
6042
- # `s3:GetObjectAcl` are all bad actions.
6043
- #
6044
- #
6045
- #
6046
- # [1]: http://www.rfc-editor.org/rfc/rfc4632.txt
6047
- #
6048
6376
  # @note When making an API call, you may pass PublicAccessBlockConfiguration
6049
6377
  # data as a hash:
6050
6378
  #
@@ -6056,27 +6384,26 @@ module Aws::S3
6056
6384
  # }
6057
6385
  #
6058
6386
  # @!attribute [rw] block_public_acls
6059
- # Specifies whether Amazon S3 should block public ACLs for this
6060
- # bucket. Setting this element to `TRUE` causes the following
6061
- # behavior:
6387
+ # Specifies whether Amazon S3 should block public access control lists
6388
+ # (ACLs) for this bucket and objects in this bucket. Setting this
6389
+ # element to `TRUE` causes the following behavior:
6062
6390
  #
6063
- # * PUT Bucket acl and PUT Object acl calls will fail if the specified
6064
- # ACL allows public access.
6391
+ # * PUT Bucket acl and PUT Object acl calls fail if the specified ACL
6392
+ # is public.
6065
6393
  #
6066
- # * PUT Object calls will fail if the request includes an object ACL.
6394
+ # * PUT Object calls fail if the request includes a public ACL.
6067
6395
  #
6068
- # Note that enabling this setting doesn't affect existing policies or
6069
- # ACLs.
6396
+ # Enabling this setting doesn't affect existing policies or ACLs.
6070
6397
  # @return [Boolean]
6071
6398
  #
6072
6399
  # @!attribute [rw] ignore_public_acls
6073
6400
  # Specifies whether Amazon S3 should ignore public ACLs for this
6074
- # bucket. Setting this element to `TRUE` causes Amazon S3 to ignore
6075
- # all public ACLs on this bucket and any objects that it contains.
6401
+ # bucket and objects in this bucket. Setting this element to `TRUE`
6402
+ # causes Amazon S3 to ignore all public ACLs on this bucket and
6403
+ # objects in this bucket.
6076
6404
  #
6077
- # Note that enabling this setting doesn't affect the persistence of
6078
- # any existing ACLs and doesn't prevent new public ACLs from being
6079
- # set.
6405
+ # Enabling this setting doesn't affect the persistence of any
6406
+ # existing ACLs and doesn't prevent new public ACLs from being set.
6080
6407
  # @return [Boolean]
6081
6408
  #
6082
6409
  # @!attribute [rw] block_public_policy
@@ -6085,20 +6412,19 @@ module Aws::S3
6085
6412
  # reject calls to PUT Bucket policy if the specified bucket policy
6086
6413
  # allows public access.
6087
6414
  #
6088
- # Note that enabling this setting doesn't affect existing bucket
6089
- # policies.
6415
+ # Enabling this setting doesn't affect existing bucket policies.
6090
6416
  # @return [Boolean]
6091
6417
  #
6092
6418
  # @!attribute [rw] restrict_public_buckets
6093
6419
  # Specifies whether Amazon S3 should restrict public bucket policies
6094
- # for this bucket. If this element is set to `TRUE`, then only the
6095
- # bucket owner and AWS Services can access this bucket if it has a
6096
- # public policy.
6097
- #
6098
- # Note that enabling this setting doesn't affect previously stored
6099
- # bucket policies, except that public and cross-account access within
6100
- # any public bucket policy, including non-public delegation to
6101
- # specific accounts, is blocked.
6420
+ # for this bucket. Setting this element to `TRUE` restricts access to
6421
+ # this bucket to only AWS services and authorized users within this
6422
+ # account if the bucket has a public policy.
6423
+ #
6424
+ # Enabling this setting doesn't affect previously stored bucket
6425
+ # policies, except that public and cross-account access within any
6426
+ # public bucket policy, including non-public delegation to specific
6427
+ # accounts, is blocked.
6102
6428
  # @return [Boolean]
6103
6429
  #
6104
6430
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PublicAccessBlockConfiguration AWS API Documentation
@@ -6344,7 +6670,8 @@ module Aws::S3
6344
6670
  #
6345
6671
  # @!attribute [rw] content_md5
6346
6672
  # The base64-encoded 128-bit MD5 digest of the server-side encryption
6347
- # configuration.
6673
+ # configuration. This parameter is auto-populated when using the
6674
+ # command from the CLI
6348
6675
  # @return [String]
6349
6676
  #
6350
6677
  # @!attribute [rw] server_side_encryption_configuration
@@ -6372,7 +6699,7 @@ module Aws::S3
6372
6699
  # s3_bucket_destination: { # required
6373
6700
  # account_id: "AccountId",
6374
6701
  # bucket: "BucketName", # required
6375
- # format: "CSV", # required, accepts CSV, ORC
6702
+ # format: "CSV", # required, accepts CSV, ORC, Parquet
6376
6703
  # prefix: "Prefix",
6377
6704
  # encryption: {
6378
6705
  # sses3: {
@@ -6389,7 +6716,7 @@ module Aws::S3
6389
6716
  # },
6390
6717
  # id: "InventoryId", # required
6391
6718
  # included_object_versions: "All", # required, accepts All, Current
6392
- # optional_fields: ["Size"], # accepts Size, LastModifiedDate, StorageClass, ETag, IsMultipartUploaded, ReplicationStatus, EncryptionStatus
6719
+ # optional_fields: ["Size"], # accepts Size, LastModifiedDate, StorageClass, ETag, IsMultipartUploaded, ReplicationStatus, EncryptionStatus, ObjectLockRetainUntilDate, ObjectLockMode, ObjectLockLegalHoldStatus
6393
6720
  # schedule: { # required
6394
6721
  # frequency: "Daily", # required, accepts Daily, Weekly
6395
6722
  # },
@@ -6454,13 +6781,13 @@ module Aws::S3
6454
6781
  # {
6455
6782
  # date: Time.now,
6456
6783
  # days: 1,
6457
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
6784
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
6458
6785
  # },
6459
6786
  # ],
6460
6787
  # noncurrent_version_transitions: [
6461
6788
  # {
6462
6789
  # noncurrent_days: 1,
6463
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
6790
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
6464
6791
  # },
6465
6792
  # ],
6466
6793
  # noncurrent_version_expiration: {
@@ -6508,11 +6835,11 @@ module Aws::S3
6508
6835
  # transition: {
6509
6836
  # date: Time.now,
6510
6837
  # days: 1,
6511
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
6838
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
6512
6839
  # },
6513
6840
  # noncurrent_version_transition: {
6514
6841
  # noncurrent_days: 1,
6515
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
6842
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
6516
6843
  # },
6517
6844
  # noncurrent_version_expiration: {
6518
6845
  # noncurrent_days: 1,
@@ -6645,7 +6972,7 @@ module Aws::S3
6645
6972
  # {
6646
6973
  # id: "NotificationId",
6647
6974
  # topic_arn: "TopicArn", # required
6648
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
6975
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
6649
6976
  # filter: {
6650
6977
  # key: {
6651
6978
  # filter_rules: [
@@ -6662,7 +6989,7 @@ module Aws::S3
6662
6989
  # {
6663
6990
  # id: "NotificationId",
6664
6991
  # queue_arn: "QueueArn", # required
6665
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
6992
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
6666
6993
  # filter: {
6667
6994
  # key: {
6668
6995
  # filter_rules: [
@@ -6679,7 +7006,7 @@ module Aws::S3
6679
7006
  # {
6680
7007
  # id: "NotificationId",
6681
7008
  # lambda_function_arn: "LambdaFunctionArn", # required
6682
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
7009
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
6683
7010
  # filter: {
6684
7011
  # key: {
6685
7012
  # filter_rules: [
@@ -6721,20 +7048,20 @@ module Aws::S3
6721
7048
  # notification_configuration: { # required
6722
7049
  # topic_configuration: {
6723
7050
  # id: "NotificationId",
6724
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
6725
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
7051
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
7052
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
6726
7053
  # topic: "TopicArn",
6727
7054
  # },
6728
7055
  # queue_configuration: {
6729
7056
  # id: "NotificationId",
6730
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
6731
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
7057
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
7058
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
6732
7059
  # queue: "QueueArn",
6733
7060
  # },
6734
7061
  # cloud_function_configuration: {
6735
7062
  # id: "NotificationId",
6736
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
6737
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
7063
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
7064
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
6738
7065
  # cloud_function: "CloudFunction",
6739
7066
  # invocation_role: "CloudFunctionInvocationRole",
6740
7067
  # },
@@ -6832,7 +7159,7 @@ module Aws::S3
6832
7159
  # destination: { # required
6833
7160
  # bucket: "BucketName", # required
6834
7161
  # account: "AccountId",
6835
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
7162
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
6836
7163
  # access_control_translation: {
6837
7164
  # owner: "Destination", # required, accepts Destination
6838
7165
  # },
@@ -7137,6 +7464,143 @@ module Aws::S3
7137
7464
  include Aws::Structure
7138
7465
  end
7139
7466
 
7467
+ # @!attribute [rw] request_charged
7468
+ # If present, indicates that the requester was successfully charged
7469
+ # for the request.
7470
+ # @return [String]
7471
+ #
7472
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHoldOutput AWS API Documentation
7473
+ #
7474
+ class PutObjectLegalHoldOutput < Struct.new(
7475
+ :request_charged)
7476
+ include Aws::Structure
7477
+ end
7478
+
7479
+ # @note When making an API call, you may pass PutObjectLegalHoldRequest
7480
+ # data as a hash:
7481
+ #
7482
+ # {
7483
+ # bucket: "BucketName", # required
7484
+ # key: "ObjectKey", # required
7485
+ # legal_hold: {
7486
+ # status: "ON", # accepts ON, OFF
7487
+ # },
7488
+ # request_payer: "requester", # accepts requester
7489
+ # version_id: "ObjectVersionId",
7490
+ # content_md5: "ContentMD5",
7491
+ # }
7492
+ #
7493
+ # @!attribute [rw] bucket
7494
+ # The bucket containing the object that you want to place a Legal Hold
7495
+ # on.
7496
+ # @return [String]
7497
+ #
7498
+ # @!attribute [rw] key
7499
+ # The key name for the object that you want to place a Legal Hold on.
7500
+ # @return [String]
7501
+ #
7502
+ # @!attribute [rw] legal_hold
7503
+ # Container element for the Legal Hold configuration you want to apply
7504
+ # to the specified object.
7505
+ # @return [Types::ObjectLockLegalHold]
7506
+ #
7507
+ # @!attribute [rw] request_payer
7508
+ # Confirms that the requester knows that she or he will be charged for
7509
+ # the request. Bucket owners need not specify this parameter in their
7510
+ # requests. Documentation on downloading objects from requester pays
7511
+ # buckets can be found at
7512
+ # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
7513
+ # @return [String]
7514
+ #
7515
+ # @!attribute [rw] version_id
7516
+ # The version ID of the object that you want to place a Legal Hold on.
7517
+ # @return [String]
7518
+ #
7519
+ # @!attribute [rw] content_md5
7520
+ # The MD5 hash for the request body.
7521
+ # @return [String]
7522
+ #
7523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHoldRequest AWS API Documentation
7524
+ #
7525
+ class PutObjectLegalHoldRequest < Struct.new(
7526
+ :bucket,
7527
+ :key,
7528
+ :legal_hold,
7529
+ :request_payer,
7530
+ :version_id,
7531
+ :content_md5)
7532
+ include Aws::Structure
7533
+ end
7534
+
7535
+ # @!attribute [rw] request_charged
7536
+ # If present, indicates that the requester was successfully charged
7537
+ # for the request.
7538
+ # @return [String]
7539
+ #
7540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfigurationOutput AWS API Documentation
7541
+ #
7542
+ class PutObjectLockConfigurationOutput < Struct.new(
7543
+ :request_charged)
7544
+ include Aws::Structure
7545
+ end
7546
+
7547
+ # @note When making an API call, you may pass PutObjectLockConfigurationRequest
7548
+ # data as a hash:
7549
+ #
7550
+ # {
7551
+ # bucket: "BucketName", # required
7552
+ # object_lock_configuration: {
7553
+ # object_lock_enabled: "Enabled", # accepts Enabled
7554
+ # rule: {
7555
+ # default_retention: {
7556
+ # mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
7557
+ # days: 1,
7558
+ # years: 1,
7559
+ # },
7560
+ # },
7561
+ # },
7562
+ # request_payer: "requester", # accepts requester
7563
+ # token: "ObjectLockToken",
7564
+ # content_md5: "ContentMD5",
7565
+ # }
7566
+ #
7567
+ # @!attribute [rw] bucket
7568
+ # The bucket whose Object Lock configuration you want to create or
7569
+ # replace.
7570
+ # @return [String]
7571
+ #
7572
+ # @!attribute [rw] object_lock_configuration
7573
+ # The Object Lock configuration that you want to apply to the
7574
+ # specified bucket.
7575
+ # @return [Types::ObjectLockConfiguration]
7576
+ #
7577
+ # @!attribute [rw] request_payer
7578
+ # Confirms that the requester knows that she or he will be charged for
7579
+ # the request. Bucket owners need not specify this parameter in their
7580
+ # requests. Documentation on downloading objects from requester pays
7581
+ # buckets can be found at
7582
+ # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
7583
+ # @return [String]
7584
+ #
7585
+ # @!attribute [rw] token
7586
+ # A token to allow Object Lock to be enabled for an existing bucket.
7587
+ # @return [String]
7588
+ #
7589
+ # @!attribute [rw] content_md5
7590
+ # The MD5 hash for the request body.
7591
+ # @return [String]
7592
+ #
7593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfigurationRequest AWS API Documentation
7594
+ #
7595
+ class PutObjectLockConfigurationRequest < Struct.new(
7596
+ :bucket,
7597
+ :object_lock_configuration,
7598
+ :request_payer,
7599
+ :token,
7600
+ :content_md5)
7601
+ include Aws::Structure
7602
+ end
7603
+
7140
7604
  # @!attribute [rw] expiration
7141
7605
  # If the object expiration is configured, this will contain the
7142
7606
  # expiration date (expiry-date) and rule ID (rule-id). The value of
@@ -7217,7 +7681,7 @@ module Aws::S3
7217
7681
  # "MetadataKey" => "MetadataValue",
7218
7682
  # },
7219
7683
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
7220
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
7684
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
7221
7685
  # website_redirect_location: "WebsiteRedirectLocation",
7222
7686
  # sse_customer_algorithm: "SSECustomerAlgorithm",
7223
7687
  # sse_customer_key: "SSECustomerKey",
@@ -7225,6 +7689,9 @@ module Aws::S3
7225
7689
  # ssekms_key_id: "SSEKMSKeyId",
7226
7690
  # request_payer: "requester", # accepts requester
7227
7691
  # tagging: "TaggingHeader",
7692
+ # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
7693
+ # object_lock_retain_until_date: Time.now,
7694
+ # object_lock_legal_hold_status: "ON", # accepts ON, OFF
7228
7695
  # }
7229
7696
  #
7230
7697
  # @!attribute [rw] acl
@@ -7263,7 +7730,8 @@ module Aws::S3
7263
7730
  # @return [Integer]
7264
7731
  #
7265
7732
  # @!attribute [rw] content_md5
7266
- # The base64-encoded 128-bit MD5 digest of the part data.
7733
+ # The base64-encoded 128-bit MD5 digest of the part data. This
7734
+ # parameter is auto-populated when using the command from the CLI
7267
7735
  # @return [String]
7268
7736
  #
7269
7737
  # @!attribute [rw] content_type
@@ -7355,6 +7823,20 @@ module Aws::S3
7355
7823
  # parameters. (For example, "Key1=Value1")
7356
7824
  # @return [String]
7357
7825
  #
7826
+ # @!attribute [rw] object_lock_mode
7827
+ # The Object Lock mode that you want to apply to this object.
7828
+ # @return [String]
7829
+ #
7830
+ # @!attribute [rw] object_lock_retain_until_date
7831
+ # The date and time when you want this object's Object Lock to
7832
+ # expire.
7833
+ # @return [Time]
7834
+ #
7835
+ # @!attribute [rw] object_lock_legal_hold_status
7836
+ # The Legal Hold status that you want to apply to the specified
7837
+ # object.
7838
+ # @return [String]
7839
+ #
7358
7840
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRequest AWS API Documentation
7359
7841
  #
7360
7842
  class PutObjectRequest < Struct.new(
@@ -7383,7 +7865,87 @@ module Aws::S3
7383
7865
  :sse_customer_key_md5,
7384
7866
  :ssekms_key_id,
7385
7867
  :request_payer,
7386
- :tagging)
7868
+ :tagging,
7869
+ :object_lock_mode,
7870
+ :object_lock_retain_until_date,
7871
+ :object_lock_legal_hold_status)
7872
+ include Aws::Structure
7873
+ end
7874
+
7875
+ # @!attribute [rw] request_charged
7876
+ # If present, indicates that the requester was successfully charged
7877
+ # for the request.
7878
+ # @return [String]
7879
+ #
7880
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetentionOutput AWS API Documentation
7881
+ #
7882
+ class PutObjectRetentionOutput < Struct.new(
7883
+ :request_charged)
7884
+ include Aws::Structure
7885
+ end
7886
+
7887
+ # @note When making an API call, you may pass PutObjectRetentionRequest
7888
+ # data as a hash:
7889
+ #
7890
+ # {
7891
+ # bucket: "BucketName", # required
7892
+ # key: "ObjectKey", # required
7893
+ # retention: {
7894
+ # mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
7895
+ # retain_until_date: Time.now,
7896
+ # },
7897
+ # request_payer: "requester", # accepts requester
7898
+ # version_id: "ObjectVersionId",
7899
+ # bypass_governance_retention: false,
7900
+ # content_md5: "ContentMD5",
7901
+ # }
7902
+ #
7903
+ # @!attribute [rw] bucket
7904
+ # The bucket that contains the object you want to apply this Object
7905
+ # Retention configuration to.
7906
+ # @return [String]
7907
+ #
7908
+ # @!attribute [rw] key
7909
+ # The key name for the object that you want to apply this Object
7910
+ # Retention configuration to.
7911
+ # @return [String]
7912
+ #
7913
+ # @!attribute [rw] retention
7914
+ # The container element for the Object Retention configuration.
7915
+ # @return [Types::ObjectLockRetention]
7916
+ #
7917
+ # @!attribute [rw] request_payer
7918
+ # Confirms that the requester knows that she or he will be charged for
7919
+ # the request. Bucket owners need not specify this parameter in their
7920
+ # requests. Documentation on downloading objects from requester pays
7921
+ # buckets can be found at
7922
+ # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
7923
+ # @return [String]
7924
+ #
7925
+ # @!attribute [rw] version_id
7926
+ # The version ID for the object that you want to apply this Object
7927
+ # Retention configuration to.
7928
+ # @return [String]
7929
+ #
7930
+ # @!attribute [rw] bypass_governance_retention
7931
+ # Indicates whether this operation should bypass Governance-mode
7932
+ # restrictions.j
7933
+ # @return [Boolean]
7934
+ #
7935
+ # @!attribute [rw] content_md5
7936
+ # The MD5 hash for the request body.
7937
+ # @return [String]
7938
+ #
7939
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetentionRequest AWS API Documentation
7940
+ #
7941
+ class PutObjectRetentionRequest < Struct.new(
7942
+ :bucket,
7943
+ :key,
7944
+ :retention,
7945
+ :request_payer,
7946
+ :version_id,
7947
+ :bypass_governance_retention,
7948
+ :content_md5)
7387
7949
  include Aws::Structure
7388
7950
  end
7389
7951
 
@@ -7456,17 +8018,24 @@ module Aws::S3
7456
8018
  # }
7457
8019
  #
7458
8020
  # @!attribute [rw] bucket
7459
- # The name of the Amazon S3 bucket whose Public Access Block
8021
+ # The name of the Amazon S3 bucket whose `PublicAccessBlock`
7460
8022
  # configuration you want to set.
7461
8023
  # @return [String]
7462
8024
  #
7463
8025
  # @!attribute [rw] content_md5
7464
- # The MD5 hash of the `PutPublicBlock` request body.
8026
+ # The MD5 hash of the `PutPublicAccessBlock` request body.
7465
8027
  # @return [String]
7466
8028
  #
7467
8029
  # @!attribute [rw] public_access_block_configuration
7468
- # The Public Access Block configuration that you want to apply to this
7469
- # Amazon S3 bucket.
8030
+ # The `PublicAccessBlock` configuration that you want to apply to this
8031
+ # Amazon S3 bucket. You can enable the configuration options in any
8032
+ # combination. For more information about when Amazon S3 considers a
8033
+ # bucket or object public, see [The Meaning of "Public"][1] in the
8034
+ # *Amazon Simple Storage Service Developer Guide*.
8035
+ #
8036
+ #
8037
+ #
8038
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status
7470
8039
  # @return [Types::PublicAccessBlockConfiguration]
7471
8040
  #
7472
8041
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutPublicAccessBlockRequest AWS API Documentation
@@ -7488,7 +8057,7 @@ module Aws::S3
7488
8057
  # {
7489
8058
  # id: "NotificationId",
7490
8059
  # queue_arn: "QueueArn", # required
7491
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
8060
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
7492
8061
  # filter: {
7493
8062
  # key: {
7494
8063
  # filter_rules: [
@@ -7523,7 +8092,7 @@ module Aws::S3
7523
8092
  #
7524
8093
  #
7525
8094
  #
7526
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
8095
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
7527
8096
  # @return [Types::NotificationConfigurationFilter]
7528
8097
  #
7529
8098
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/QueueConfiguration AWS API Documentation
@@ -7541,8 +8110,8 @@ module Aws::S3
7541
8110
  #
7542
8111
  # {
7543
8112
  # id: "NotificationId",
7544
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
7545
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
8113
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
8114
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
7546
8115
  # queue: "QueueArn",
7547
8116
  # }
7548
8117
  #
@@ -7700,7 +8269,7 @@ module Aws::S3
7700
8269
  # destination: { # required
7701
8270
  # bucket: "BucketName", # required
7702
8271
  # account: "AccountId",
7703
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
8272
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
7704
8273
  # access_control_translation: {
7705
8274
  # owner: "Destination", # required, accepts Destination
7706
8275
  # },
@@ -7769,7 +8338,7 @@ module Aws::S3
7769
8338
  # destination: { # required
7770
8339
  # bucket: "BucketName", # required
7771
8340
  # account: "AccountId",
7772
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
8341
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
7773
8342
  # access_control_translation: {
7774
8343
  # owner: "Destination", # required, accepts Destination
7775
8344
  # },
@@ -8076,7 +8645,7 @@ module Aws::S3
8076
8645
  # value: "MetadataValue",
8077
8646
  # },
8078
8647
  # ],
8079
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
8648
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
8080
8649
  # },
8081
8650
  # },
8082
8651
  # },
@@ -8197,7 +8766,7 @@ module Aws::S3
8197
8766
  # value: "MetadataValue",
8198
8767
  # },
8199
8768
  # ],
8200
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
8769
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
8201
8770
  # },
8202
8771
  # },
8203
8772
  # }
@@ -8299,11 +8868,11 @@ module Aws::S3
8299
8868
  # transition: {
8300
8869
  # date: Time.now,
8301
8870
  # days: 1,
8302
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
8871
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
8303
8872
  # },
8304
8873
  # noncurrent_version_transition: {
8305
8874
  # noncurrent_days: 1,
8306
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
8875
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
8307
8876
  # },
8308
8877
  # noncurrent_version_expiration: {
8309
8878
  # noncurrent_days: 1,
@@ -8335,12 +8904,13 @@ module Aws::S3
8335
8904
  #
8336
8905
  # @!attribute [rw] noncurrent_version_transition
8337
8906
  # Container for the transition rule that describes when noncurrent
8338
- # objects transition to the STANDARD\_IA, ONEZONE\_IA, or GLACIER
8339
- # storage class. If your bucket is versioning-enabled (or versioning
8340
- # is suspended), you can set this action to request that Amazon S3
8341
- # transition noncurrent object versions to the STANDARD\_IA,
8342
- # ONEZONE\_IA, or GLACIER storage class at a specific period in the
8343
- # object's lifetime.
8907
+ # objects transition to the STANDARD\_IA, ONEZONE\_IA,
8908
+ # INTELLIGENT\_TIERING, GLACIER or DEEP\_ARCHIVE storage class. If
8909
+ # your bucket is versioning-enabled (or versioning is suspended), you
8910
+ # can set this action to request that Amazon S3 transition noncurrent
8911
+ # object versions to the STANDARD\_IA, ONEZONE\_IA,
8912
+ # INTELLIGENT\_TIERING, GLACIER or DEEP\_ARCHIVE storage class at a
8913
+ # specific period in the object's lifetime.
8344
8914
  # @return [Types::NoncurrentVersionTransition]
8345
8915
  #
8346
8916
  # @!attribute [rw] noncurrent_version_expiration
@@ -8439,7 +9009,7 @@ module Aws::S3
8439
9009
  # value: "MetadataValue",
8440
9010
  # },
8441
9011
  # ],
8442
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
9012
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
8443
9013
  # }
8444
9014
  #
8445
9015
  # @!attribute [rw] bucket_name
@@ -8540,7 +9110,7 @@ module Aws::S3
8540
9110
  #
8541
9111
  #
8542
9112
  #
8543
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectSELECTContent.html
9113
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectSELECTContent.html
8544
9114
  #
8545
9115
  # @note When making an API call, you may pass SelectObjectContentRequest
8546
9116
  # data as a hash:
@@ -8602,7 +9172,7 @@ module Aws::S3
8602
9172
  #
8603
9173
  #
8604
9174
  #
8605
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
9175
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
8606
9176
  # @return [String]
8607
9177
  #
8608
9178
  # @!attribute [rw] sse_customer_key
@@ -8611,7 +9181,7 @@ module Aws::S3
8611
9181
  #
8612
9182
  #
8613
9183
  #
8614
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
9184
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
8615
9185
  # @return [String]
8616
9186
  #
8617
9187
  # @!attribute [rw] sse_customer_key_md5
@@ -8620,7 +9190,7 @@ module Aws::S3
8620
9190
  #
8621
9191
  #
8622
9192
  #
8623
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
9193
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
8624
9194
  # @return [String]
8625
9195
  #
8626
9196
  # @!attribute [rw] expression
@@ -9037,7 +9607,7 @@ module Aws::S3
9037
9607
  # {
9038
9608
  # id: "NotificationId",
9039
9609
  # topic_arn: "TopicArn", # required
9040
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
9610
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
9041
9611
  # filter: {
9042
9612
  # key: {
9043
9613
  # filter_rules: [
@@ -9072,7 +9642,7 @@ module Aws::S3
9072
9642
  #
9073
9643
  #
9074
9644
  #
9075
- # [1]: http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
9645
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
9076
9646
  # @return [Types::NotificationConfigurationFilter]
9077
9647
  #
9078
9648
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/TopicConfiguration AWS API Documentation
@@ -9090,8 +9660,8 @@ module Aws::S3
9090
9660
  #
9091
9661
  # {
9092
9662
  # id: "NotificationId",
9093
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
9094
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
9663
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
9664
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
9095
9665
  # topic: "TopicArn",
9096
9666
  # }
9097
9667
  #
@@ -9129,7 +9699,7 @@ module Aws::S3
9129
9699
  # {
9130
9700
  # date: Time.now,
9131
9701
  # days: 1,
9132
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
9702
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
9133
9703
  # }
9134
9704
  #
9135
9705
  # @!attribute [rw] date
@@ -9259,7 +9829,7 @@ module Aws::S3
9259
9829
  # must use the form bytes=first-last, where the first and last are the
9260
9830
  # zero-based byte offsets to copy. For example, bytes=0-9 indicates
9261
9831
  # that you want to copy the first ten bytes of the source. You can
9262
- # copy a range only if the source object is greater than 5 GB.
9832
+ # copy a range only if the source object is greater than 5 MB.
9263
9833
  # @return [String]
9264
9834
  #
9265
9835
  # @!attribute [rw] key