aws-sdk-s3control 1.70.0 → 1.72.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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