aws-sdk-s3control 1.70.0 → 1.72.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -994,6 +994,14 @@ module Aws::S3Control
994
994
  # created_after: Time.now,
995
995
  # created_before: Time.now,
996
996
  # object_replication_statuses: ["COMPLETED"], # accepts COMPLETED, FAILED, REPLICA, NONE
997
+ # key_name_constraint: {
998
+ # match_any_prefix: ["NonEmptyMaxLength1024String"],
999
+ # match_any_suffix: ["NonEmptyMaxLength1024String"],
1000
+ # match_any_substring: ["NonEmptyMaxLength1024String"],
1001
+ # },
1002
+ # object_size_greater_than_bytes: 1,
1003
+ # object_size_less_than_bytes: 1,
1004
+ # match_any_storage_class: ["STANDARD"], # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
997
1005
  # },
998
1006
  # enable_manifest_output: false, # required
999
1007
  # },
@@ -1102,6 +1110,122 @@ module Aws::S3Control
1102
1110
  req.send_request(options)
1103
1111
  end
1104
1112
 
1113
+ # Creates a new S3 Storage Lens group and associates it with the
1114
+ # specified Amazon Web Services account ID. An S3 Storage Lens group is
1115
+ # a custom grouping of objects based on prefix, suffix, object tags,
1116
+ # object size, object age, or a combination of these filters. For each
1117
+ # Storage Lens group that you’ve created, you can also optionally add
1118
+ # Amazon Web Services resource tags. For more information about S3
1119
+ # Storage Lens groups, see [Working with S3 Storage Lens groups][1].
1120
+ #
1121
+ # To use this operation, you must have the permission to perform the
1122
+ # `s3:CreateStorageLensGroup` action. If you’re trying to create a
1123
+ # Storage Lens group with Amazon Web Services resource tags, you must
1124
+ # also have permission to perform the `s3:TagResource` action. For more
1125
+ # information about the required Storage Lens Groups permissions, see
1126
+ # [Setting account permissions to use S3 Storage Lens groups][2].
1127
+ #
1128
+ # For information about Storage Lens groups errors, see [List of Amazon
1129
+ # S3 Storage Lens error codes][3].
1130
+ #
1131
+ #
1132
+ #
1133
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups-overview.html
1134
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions
1135
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList
1136
+ #
1137
+ # @option params [String] :account_id
1138
+ # The Amazon Web Services account ID that the Storage Lens group is
1139
+ # created from and associated with.
1140
+ #
1141
+ # @option params [required, Types::StorageLensGroup] :storage_lens_group
1142
+ # The Storage Lens group configuration.
1143
+ #
1144
+ # @option params [Array<Types::Tag>] :tags
1145
+ # The Amazon Web Services resource tags that you're adding to your
1146
+ # Storage Lens group. This parameter is optional.
1147
+ #
1148
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1149
+ #
1150
+ # @example Request syntax with placeholder values
1151
+ #
1152
+ # resp = client.create_storage_lens_group({
1153
+ # account_id: "AccountId",
1154
+ # storage_lens_group: { # required
1155
+ # name: "StorageLensGroupName", # required
1156
+ # filter: { # required
1157
+ # match_any_prefix: ["Prefix"],
1158
+ # match_any_suffix: ["Suffix"],
1159
+ # match_any_tag: [
1160
+ # {
1161
+ # key: "TagKeyString", # required
1162
+ # value: "TagValueString", # required
1163
+ # },
1164
+ # ],
1165
+ # match_object_age: {
1166
+ # days_greater_than: 1,
1167
+ # days_less_than: 1,
1168
+ # },
1169
+ # match_object_size: {
1170
+ # bytes_greater_than: 1,
1171
+ # bytes_less_than: 1,
1172
+ # },
1173
+ # and: {
1174
+ # match_any_prefix: ["Prefix"],
1175
+ # match_any_suffix: ["Suffix"],
1176
+ # match_any_tag: [
1177
+ # {
1178
+ # key: "TagKeyString", # required
1179
+ # value: "TagValueString", # required
1180
+ # },
1181
+ # ],
1182
+ # match_object_age: {
1183
+ # days_greater_than: 1,
1184
+ # days_less_than: 1,
1185
+ # },
1186
+ # match_object_size: {
1187
+ # bytes_greater_than: 1,
1188
+ # bytes_less_than: 1,
1189
+ # },
1190
+ # },
1191
+ # or: {
1192
+ # match_any_prefix: ["Prefix"],
1193
+ # match_any_suffix: ["Suffix"],
1194
+ # match_any_tag: [
1195
+ # {
1196
+ # key: "TagKeyString", # required
1197
+ # value: "TagValueString", # required
1198
+ # },
1199
+ # ],
1200
+ # match_object_age: {
1201
+ # days_greater_than: 1,
1202
+ # days_less_than: 1,
1203
+ # },
1204
+ # match_object_size: {
1205
+ # bytes_greater_than: 1,
1206
+ # bytes_less_than: 1,
1207
+ # },
1208
+ # },
1209
+ # },
1210
+ # storage_lens_group_arn: "StorageLensGroupArn",
1211
+ # },
1212
+ # tags: [
1213
+ # {
1214
+ # key: "TagKeyString", # required
1215
+ # value: "TagValueString", # required
1216
+ # },
1217
+ # ],
1218
+ # })
1219
+ #
1220
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateStorageLensGroup AWS API Documentation
1221
+ #
1222
+ # @overload create_storage_lens_group(params = {})
1223
+ # @param [Hash] params ({})
1224
+ def create_storage_lens_group(params = {}, options = {})
1225
+ req = build_request(:create_storage_lens_group, params)
1226
+ req.send_request(options)
1227
+ end
1228
+
1105
1229
  # Deletes the specified access point.
1106
1230
  #
1107
1231
  # All Amazon S3 on Outposts REST API requests for this action require an
@@ -1394,10 +1518,10 @@ module Aws::S3Control
1394
1518
  # the deleted lifecycle configuration. For more information, see [Using
1395
1519
  # Amazon S3 on Outposts][2] in *Amazon S3 User Guide*.
1396
1520
  #
1397
- # To use this action, you must have permission to perform the
1398
- # `s3-outposts:DeleteLifecycleConfiguration` action. By default, the
1399
- # bucket owner has this permission and the Outposts bucket owner can
1400
- # grant this permission to others.
1521
+ # To use this operation, you must have permission to perform the
1522
+ # `s3-outposts:PutLifecycleConfiguration` action. By default, the bucket
1523
+ # owner has this permission and the Outposts bucket owner can grant this
1524
+ # permission to others.
1401
1525
  #
1402
1526
  # All Amazon S3 on Outposts REST API requests for this action require an
1403
1527
  # additional parameter of `x-amz-outpost-id` to be passed with the
@@ -1956,6 +2080,46 @@ module Aws::S3Control
1956
2080
  req.send_request(options)
1957
2081
  end
1958
2082
 
2083
+ # Deletes an existing S3 Storage Lens group.
2084
+ #
2085
+ # To use this operation, you must have the permission to perform the
2086
+ # `s3:DeleteStorageLensGroup` action. For more information about the
2087
+ # required Storage Lens Groups permissions, see [Setting account
2088
+ # permissions to use S3 Storage Lens groups][1].
2089
+ #
2090
+ # For information about Storage Lens groups errors, see [List of Amazon
2091
+ # S3 Storage Lens error codes][2].
2092
+ #
2093
+ #
2094
+ #
2095
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions
2096
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList
2097
+ #
2098
+ # @option params [required, String] :name
2099
+ # The name of the Storage Lens group that you're trying to delete.
2100
+ #
2101
+ # @option params [String] :account_id
2102
+ # The Amazon Web Services account ID used to create the Storage Lens
2103
+ # group that you're trying to delete.
2104
+ #
2105
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2106
+ #
2107
+ # @example Request syntax with placeholder values
2108
+ #
2109
+ # resp = client.delete_storage_lens_group({
2110
+ # name: "StorageLensGroupName", # required
2111
+ # account_id: "AccountId",
2112
+ # })
2113
+ #
2114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteStorageLensGroup AWS API Documentation
2115
+ #
2116
+ # @overload delete_storage_lens_group(params = {})
2117
+ # @param [Hash] params ({})
2118
+ def delete_storage_lens_group(params = {}, options = {})
2119
+ req = build_request(:delete_storage_lens_group, params)
2120
+ req.send_request(options)
2121
+ end
2122
+
1959
2123
  # Retrieves the configuration parameters and status for a Batch
1960
2124
  # Operations job. For more information, see [S3 Batch Operations][1] in
1961
2125
  # the *Amazon S3 User Guide*.
@@ -2095,6 +2259,16 @@ module Aws::S3Control
2095
2259
  # resp.job.manifest_generator.s3_job_manifest_generator.filter.created_before #=> Time
2096
2260
  # resp.job.manifest_generator.s3_job_manifest_generator.filter.object_replication_statuses #=> Array
2097
2261
  # resp.job.manifest_generator.s3_job_manifest_generator.filter.object_replication_statuses[0] #=> String, one of "COMPLETED", "FAILED", "REPLICA", "NONE"
2262
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.key_name_constraint.match_any_prefix #=> Array
2263
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.key_name_constraint.match_any_prefix[0] #=> String
2264
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.key_name_constraint.match_any_suffix #=> Array
2265
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.key_name_constraint.match_any_suffix[0] #=> String
2266
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.key_name_constraint.match_any_substring #=> Array
2267
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.key_name_constraint.match_any_substring[0] #=> String
2268
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.object_size_greater_than_bytes #=> Integer
2269
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.object_size_less_than_bytes #=> Integer
2270
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.match_any_storage_class #=> Array
2271
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.match_any_storage_class[0] #=> String, one of "STANDARD", "STANDARD_IA", "ONEZONE_IA", "GLACIER", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "GLACIER_IR"
2098
2272
  # resp.job.manifest_generator.s3_job_manifest_generator.enable_manifest_output #=> Boolean
2099
2273
  # resp.job.generated_manifest_descriptor.format #=> String, one of "S3InventoryReport_CSV_20211130"
2100
2274
  # resp.job.generated_manifest_descriptor.location.object_arn #=> String
@@ -3580,6 +3754,10 @@ module Aws::S3Control
3580
3754
  # resp.storage_lens_configuration.account_level.advanced_cost_optimization_metrics.is_enabled #=> Boolean
3581
3755
  # resp.storage_lens_configuration.account_level.advanced_data_protection_metrics.is_enabled #=> Boolean
3582
3756
  # resp.storage_lens_configuration.account_level.detailed_status_codes_metrics.is_enabled #=> Boolean
3757
+ # resp.storage_lens_configuration.account_level.storage_lens_group_level.selection_criteria.include #=> Array
3758
+ # resp.storage_lens_configuration.account_level.storage_lens_group_level.selection_criteria.include[0] #=> String
3759
+ # resp.storage_lens_configuration.account_level.storage_lens_group_level.selection_criteria.exclude #=> Array
3760
+ # resp.storage_lens_configuration.account_level.storage_lens_group_level.selection_criteria.exclude[0] #=> String
3583
3761
  # resp.storage_lens_configuration.include.buckets #=> Array
3584
3762
  # resp.storage_lens_configuration.include.buckets[0] #=> String
3585
3763
  # resp.storage_lens_configuration.include.regions #=> Array
@@ -3657,6 +3835,87 @@ module Aws::S3Control
3657
3835
  req.send_request(options)
3658
3836
  end
3659
3837
 
3838
+ # Retrieves the Storage Lens group configuration details.
3839
+ #
3840
+ # To use this operation, you must have the permission to perform the
3841
+ # `s3:GetStorageLensGroup` action. For more information about the
3842
+ # required Storage Lens Groups permissions, see [Setting account
3843
+ # permissions to use S3 Storage Lens groups][1].
3844
+ #
3845
+ # For information about Storage Lens groups errors, see [List of Amazon
3846
+ # S3 Storage Lens error codes][2].
3847
+ #
3848
+ #
3849
+ #
3850
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions
3851
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList
3852
+ #
3853
+ # @option params [required, String] :name
3854
+ # The name of the Storage Lens group that you're trying to retrieve the
3855
+ # configuration details for.
3856
+ #
3857
+ # @option params [String] :account_id
3858
+ # The Amazon Web Services account ID associated with the Storage Lens
3859
+ # group that you're trying to retrieve the details for.
3860
+ #
3861
+ # @return [Types::GetStorageLensGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3862
+ #
3863
+ # * {Types::GetStorageLensGroupResult#storage_lens_group #storage_lens_group} => Types::StorageLensGroup
3864
+ #
3865
+ # @example Request syntax with placeholder values
3866
+ #
3867
+ # resp = client.get_storage_lens_group({
3868
+ # name: "StorageLensGroupName", # required
3869
+ # account_id: "AccountId",
3870
+ # })
3871
+ #
3872
+ # @example Response structure
3873
+ #
3874
+ # resp.storage_lens_group.name #=> String
3875
+ # resp.storage_lens_group.filter.match_any_prefix #=> Array
3876
+ # resp.storage_lens_group.filter.match_any_prefix[0] #=> String
3877
+ # resp.storage_lens_group.filter.match_any_suffix #=> Array
3878
+ # resp.storage_lens_group.filter.match_any_suffix[0] #=> String
3879
+ # resp.storage_lens_group.filter.match_any_tag #=> Array
3880
+ # resp.storage_lens_group.filter.match_any_tag[0].key #=> String
3881
+ # resp.storage_lens_group.filter.match_any_tag[0].value #=> String
3882
+ # resp.storage_lens_group.filter.match_object_age.days_greater_than #=> Integer
3883
+ # resp.storage_lens_group.filter.match_object_age.days_less_than #=> Integer
3884
+ # resp.storage_lens_group.filter.match_object_size.bytes_greater_than #=> Integer
3885
+ # resp.storage_lens_group.filter.match_object_size.bytes_less_than #=> Integer
3886
+ # resp.storage_lens_group.filter.and.match_any_prefix #=> Array
3887
+ # resp.storage_lens_group.filter.and.match_any_prefix[0] #=> String
3888
+ # resp.storage_lens_group.filter.and.match_any_suffix #=> Array
3889
+ # resp.storage_lens_group.filter.and.match_any_suffix[0] #=> String
3890
+ # resp.storage_lens_group.filter.and.match_any_tag #=> Array
3891
+ # resp.storage_lens_group.filter.and.match_any_tag[0].key #=> String
3892
+ # resp.storage_lens_group.filter.and.match_any_tag[0].value #=> String
3893
+ # resp.storage_lens_group.filter.and.match_object_age.days_greater_than #=> Integer
3894
+ # resp.storage_lens_group.filter.and.match_object_age.days_less_than #=> Integer
3895
+ # resp.storage_lens_group.filter.and.match_object_size.bytes_greater_than #=> Integer
3896
+ # resp.storage_lens_group.filter.and.match_object_size.bytes_less_than #=> Integer
3897
+ # resp.storage_lens_group.filter.or.match_any_prefix #=> Array
3898
+ # resp.storage_lens_group.filter.or.match_any_prefix[0] #=> String
3899
+ # resp.storage_lens_group.filter.or.match_any_suffix #=> Array
3900
+ # resp.storage_lens_group.filter.or.match_any_suffix[0] #=> String
3901
+ # resp.storage_lens_group.filter.or.match_any_tag #=> Array
3902
+ # resp.storage_lens_group.filter.or.match_any_tag[0].key #=> String
3903
+ # resp.storage_lens_group.filter.or.match_any_tag[0].value #=> String
3904
+ # resp.storage_lens_group.filter.or.match_object_age.days_greater_than #=> Integer
3905
+ # resp.storage_lens_group.filter.or.match_object_age.days_less_than #=> Integer
3906
+ # resp.storage_lens_group.filter.or.match_object_size.bytes_greater_than #=> Integer
3907
+ # resp.storage_lens_group.filter.or.match_object_size.bytes_less_than #=> Integer
3908
+ # resp.storage_lens_group.storage_lens_group_arn #=> String
3909
+ #
3910
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetStorageLensGroup AWS API Documentation
3911
+ #
3912
+ # @overload get_storage_lens_group(params = {})
3913
+ # @param [Hash] params ({})
3914
+ def get_storage_lens_group(params = {}, options = {})
3915
+ req = build_request(:get_storage_lens_group, params)
3916
+ req.send_request(options)
3917
+ end
3918
+
3660
3919
  # Returns a list of the access points that are owned by the current
3661
3920
  # account that's associated with the specified bucket. You can retrieve
3662
3921
  # up to 1000 access points per call. If the specified bucket has more
@@ -4112,6 +4371,113 @@ module Aws::S3Control
4112
4371
  req.send_request(options)
4113
4372
  end
4114
4373
 
4374
+ # Lists all the Storage Lens groups in the specified home Region.
4375
+ #
4376
+ # To use this operation, you must have the permission to perform the
4377
+ # `s3:ListStorageLensGroups` action. For more information about the
4378
+ # required Storage Lens Groups permissions, see [Setting account
4379
+ # permissions to use S3 Storage Lens groups][1].
4380
+ #
4381
+ # For information about Storage Lens groups errors, see [List of Amazon
4382
+ # S3 Storage Lens error codes][2].
4383
+ #
4384
+ #
4385
+ #
4386
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions
4387
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList
4388
+ #
4389
+ # @option params [String] :account_id
4390
+ # The Amazon Web Services account ID that owns the Storage Lens groups.
4391
+ #
4392
+ # @option params [String] :next_token
4393
+ # The token for the next set of results, or `null` if there are no more
4394
+ # results.
4395
+ #
4396
+ # @return [Types::ListStorageLensGroupsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4397
+ #
4398
+ # * {Types::ListStorageLensGroupsResult#next_token #next_token} => String
4399
+ # * {Types::ListStorageLensGroupsResult#storage_lens_group_list #storage_lens_group_list} => Array&lt;Types::ListStorageLensGroupEntry&gt;
4400
+ #
4401
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4402
+ #
4403
+ # @example Request syntax with placeholder values
4404
+ #
4405
+ # resp = client.list_storage_lens_groups({
4406
+ # account_id: "AccountId",
4407
+ # next_token: "ContinuationToken",
4408
+ # })
4409
+ #
4410
+ # @example Response structure
4411
+ #
4412
+ # resp.next_token #=> String
4413
+ # resp.storage_lens_group_list #=> Array
4414
+ # resp.storage_lens_group_list[0].name #=> String
4415
+ # resp.storage_lens_group_list[0].storage_lens_group_arn #=> String
4416
+ # resp.storage_lens_group_list[0].home_region #=> String
4417
+ #
4418
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListStorageLensGroups AWS API Documentation
4419
+ #
4420
+ # @overload list_storage_lens_groups(params = {})
4421
+ # @param [Hash] params ({})
4422
+ def list_storage_lens_groups(params = {}, options = {})
4423
+ req = build_request(:list_storage_lens_groups, params)
4424
+ req.send_request(options)
4425
+ end
4426
+
4427
+ # This operation allows you to list all the Amazon Web Services resource
4428
+ # tags for the specified resource.
4429
+ #
4430
+ # To use this operation, you must have the permission to perform the
4431
+ # `s3:ListTagsForResource` action. For more information about the
4432
+ # required Storage Lens Groups permissions, see [Setting account
4433
+ # permissions to use S3 Storage Lens groups][1].
4434
+ #
4435
+ # For information about S3 Tagging errors, see [List of Amazon S3
4436
+ # Tagging error codes][2].
4437
+ #
4438
+ # <note markdown="1"> This operation is only supported for [S3 Storage Lens groups][3].
4439
+ #
4440
+ # </note>
4441
+ #
4442
+ #
4443
+ #
4444
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions
4445
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList
4446
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html
4447
+ #
4448
+ # @option params [String] :account_id
4449
+ # The Amazon Web Services account ID of the resource owner.
4450
+ #
4451
+ # @option params [required, String] :resource_arn
4452
+ # The Amazon Resource Name (ARN) of the S3 resource that you want to
4453
+ # list the tags for.
4454
+ #
4455
+ # @return [Types::ListTagsForResourceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4456
+ #
4457
+ # * {Types::ListTagsForResourceResult#tags #tags} => Array&lt;Types::Tag&gt;
4458
+ #
4459
+ # @example Request syntax with placeholder values
4460
+ #
4461
+ # resp = client.list_tags_for_resource({
4462
+ # account_id: "AccountId",
4463
+ # resource_arn: "S3ResourceArn", # required
4464
+ # })
4465
+ #
4466
+ # @example Response structure
4467
+ #
4468
+ # resp.tags #=> Array
4469
+ # resp.tags[0].key #=> String
4470
+ # resp.tags[0].value #=> String
4471
+ #
4472
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListTagsForResource AWS API Documentation
4473
+ #
4474
+ # @overload list_tags_for_resource(params = {})
4475
+ # @param [Hash] params ({})
4476
+ def list_tags_for_resource(params = {}, options = {})
4477
+ req = build_request(:list_tags_for_resource, params)
4478
+ req.send_request(options)
4479
+ end
4480
+
4115
4481
  # Replaces configuration for an Object Lambda Access Point.
4116
4482
  #
4117
4483
  # The following actions are related to
@@ -5246,6 +5612,12 @@ module Aws::S3Control
5246
5612
  # detailed_status_codes_metrics: {
5247
5613
  # is_enabled: false,
5248
5614
  # },
5615
+ # storage_lens_group_level: {
5616
+ # selection_criteria: {
5617
+ # include: ["StorageLensGroupArn"],
5618
+ # exclude: ["StorageLensGroupArn"],
5619
+ # },
5620
+ # },
5249
5621
  # },
5250
5622
  # include: {
5251
5623
  # buckets: ["S3BucketArnString"],
@@ -5425,6 +5797,115 @@ module Aws::S3Control
5425
5797
  req.send_request(options)
5426
5798
  end
5427
5799
 
5800
+ # Creates a new Amazon Web Services resource tag or updates an existing
5801
+ # resource tag. You can add up to 50 Amazon Web Services resource tags
5802
+ # for each S3 resource.
5803
+ #
5804
+ # To use this operation, you must have the permission to perform the
5805
+ # `s3:TagResource` action. For more information about the required
5806
+ # Storage Lens Groups permissions, see [Setting account permissions to
5807
+ # use S3 Storage Lens groups][1].
5808
+ #
5809
+ # For information about S3 Tagging errors, see [List of Amazon S3
5810
+ # Tagging error codes][2].
5811
+ #
5812
+ # <note markdown="1"> This operation is only supported for [S3 Storage Lens groups][3].
5813
+ #
5814
+ # </note>
5815
+ #
5816
+ #
5817
+ #
5818
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions
5819
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList
5820
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html
5821
+ #
5822
+ # @option params [String] :account_id
5823
+ # The Amazon Web Services account ID that created the S3 resource that
5824
+ # you're trying to add tags to.
5825
+ #
5826
+ # @option params [required, String] :resource_arn
5827
+ # The Amazon Resource Name (ARN) of the S3 resource that you're trying
5828
+ # to add tags to.
5829
+ #
5830
+ # @option params [required, Array<Types::Tag>] :tags
5831
+ # The Amazon Web Services resource tags that you want to add to the
5832
+ # specified S3 resource.
5833
+ #
5834
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5835
+ #
5836
+ # @example Request syntax with placeholder values
5837
+ #
5838
+ # resp = client.tag_resource({
5839
+ # account_id: "AccountId",
5840
+ # resource_arn: "S3ResourceArn", # required
5841
+ # tags: [ # required
5842
+ # {
5843
+ # key: "TagKeyString", # required
5844
+ # value: "TagValueString", # required
5845
+ # },
5846
+ # ],
5847
+ # })
5848
+ #
5849
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/TagResource AWS API Documentation
5850
+ #
5851
+ # @overload tag_resource(params = {})
5852
+ # @param [Hash] params ({})
5853
+ def tag_resource(params = {}, options = {})
5854
+ req = build_request(:tag_resource, params)
5855
+ req.send_request(options)
5856
+ end
5857
+
5858
+ # This operation removes the specified Amazon Web Services resource tags
5859
+ # from an S3 resource.
5860
+ #
5861
+ # To use this operation, you must have the permission to perform the
5862
+ # `s3:UntagResource` action. For more information about the required
5863
+ # Storage Lens Groups permissions, see [Setting account permissions to
5864
+ # use S3 Storage Lens groups][1].
5865
+ #
5866
+ # For information about S3 Tagging errors, see [List of Amazon S3
5867
+ # Tagging error codes][2].
5868
+ #
5869
+ # <note markdown="1"> This operation is only supported for [S3 Storage Lens groups][3].
5870
+ #
5871
+ # </note>
5872
+ #
5873
+ #
5874
+ #
5875
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions
5876
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3TaggingErrorCodeList
5877
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html
5878
+ #
5879
+ # @option params [String] :account_id
5880
+ # The Amazon Web Services account ID that owns the resource that you're
5881
+ # trying to remove the tags from.
5882
+ #
5883
+ # @option params [required, String] :resource_arn
5884
+ # The Amazon Resource Name (ARN) of the S3 resource that you want to
5885
+ # remove the resource tags from.
5886
+ #
5887
+ # @option params [required, Array<String>] :tag_keys
5888
+ # The tag key pair of the S3 resource tag that you're trying to remove.
5889
+ #
5890
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5891
+ #
5892
+ # @example Request syntax with placeholder values
5893
+ #
5894
+ # resp = client.untag_resource({
5895
+ # account_id: "AccountId",
5896
+ # resource_arn: "S3ResourceArn", # required
5897
+ # tag_keys: ["TagKeyString"], # required
5898
+ # })
5899
+ #
5900
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UntagResource AWS API Documentation
5901
+ #
5902
+ # @overload untag_resource(params = {})
5903
+ # @param [Hash] params ({})
5904
+ def untag_resource(params = {}, options = {})
5905
+ req = build_request(:untag_resource, params)
5906
+ req.send_request(options)
5907
+ end
5908
+
5428
5909
  # Updates an existing S3 Batch Operations job's priority. For more
5429
5910
  # information, see [S3 Batch Operations][1] in the *Amazon S3 User
5430
5911
  # Guide*.
@@ -5555,6 +6036,106 @@ module Aws::S3Control
5555
6036
  req.send_request(options)
5556
6037
  end
5557
6038
 
6039
+ # Updates the existing Storage Lens group.
6040
+ #
6041
+ # To use this operation, you must have the permission to perform the
6042
+ # `s3:UpdateStorageLensGroup` action. For more information about the
6043
+ # required Storage Lens Groups permissions, see [Setting account
6044
+ # permissions to use S3 Storage Lens groups][1].
6045
+ #
6046
+ # For information about Storage Lens groups errors, see [List of Amazon
6047
+ # S3 Storage Lens error codes][2].
6048
+ #
6049
+ #
6050
+ #
6051
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html#storage_lens_groups_permissions
6052
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#S3LensErrorCodeList
6053
+ #
6054
+ # @option params [required, String] :name
6055
+ # The name of the Storage Lens group that you want to update.
6056
+ #
6057
+ # @option params [String] :account_id
6058
+ # The Amazon Web Services account ID of the Storage Lens group owner.
6059
+ #
6060
+ # @option params [required, Types::StorageLensGroup] :storage_lens_group
6061
+ # The JSON file that contains the Storage Lens group configuration.
6062
+ #
6063
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6064
+ #
6065
+ # @example Request syntax with placeholder values
6066
+ #
6067
+ # resp = client.update_storage_lens_group({
6068
+ # name: "StorageLensGroupName", # required
6069
+ # account_id: "AccountId",
6070
+ # storage_lens_group: { # required
6071
+ # name: "StorageLensGroupName", # required
6072
+ # filter: { # required
6073
+ # match_any_prefix: ["Prefix"],
6074
+ # match_any_suffix: ["Suffix"],
6075
+ # match_any_tag: [
6076
+ # {
6077
+ # key: "TagKeyString", # required
6078
+ # value: "TagValueString", # required
6079
+ # },
6080
+ # ],
6081
+ # match_object_age: {
6082
+ # days_greater_than: 1,
6083
+ # days_less_than: 1,
6084
+ # },
6085
+ # match_object_size: {
6086
+ # bytes_greater_than: 1,
6087
+ # bytes_less_than: 1,
6088
+ # },
6089
+ # and: {
6090
+ # match_any_prefix: ["Prefix"],
6091
+ # match_any_suffix: ["Suffix"],
6092
+ # match_any_tag: [
6093
+ # {
6094
+ # key: "TagKeyString", # required
6095
+ # value: "TagValueString", # required
6096
+ # },
6097
+ # ],
6098
+ # match_object_age: {
6099
+ # days_greater_than: 1,
6100
+ # days_less_than: 1,
6101
+ # },
6102
+ # match_object_size: {
6103
+ # bytes_greater_than: 1,
6104
+ # bytes_less_than: 1,
6105
+ # },
6106
+ # },
6107
+ # or: {
6108
+ # match_any_prefix: ["Prefix"],
6109
+ # match_any_suffix: ["Suffix"],
6110
+ # match_any_tag: [
6111
+ # {
6112
+ # key: "TagKeyString", # required
6113
+ # value: "TagValueString", # required
6114
+ # },
6115
+ # ],
6116
+ # match_object_age: {
6117
+ # days_greater_than: 1,
6118
+ # days_less_than: 1,
6119
+ # },
6120
+ # match_object_size: {
6121
+ # bytes_greater_than: 1,
6122
+ # bytes_less_than: 1,
6123
+ # },
6124
+ # },
6125
+ # },
6126
+ # storage_lens_group_arn: "StorageLensGroupArn",
6127
+ # },
6128
+ # })
6129
+ #
6130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/UpdateStorageLensGroup AWS API Documentation
6131
+ #
6132
+ # @overload update_storage_lens_group(params = {})
6133
+ # @param [Hash] params ({})
6134
+ def update_storage_lens_group(params = {}, options = {})
6135
+ req = build_request(:update_storage_lens_group, params)
6136
+ req.send_request(options)
6137
+ end
6138
+
5558
6139
  # @!endgroup
5559
6140
 
5560
6141
  # @param params ({})
@@ -5568,7 +6149,7 @@ module Aws::S3Control
5568
6149
  params: params,
5569
6150
  config: config)
5570
6151
  context[:gem_name] = 'aws-sdk-s3control'
5571
- context[:gem_version] = '1.70.0'
6152
+ context[:gem_version] = '1.72.0'
5572
6153
  Seahorse::Client::Request.new(handlers, context)
5573
6154
  end
5574
6155