aws-sdk-s3control 1.55.0 → 1.57.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '0888382922af503c35cc2a0eec065444e2e1853ce2fbd4c24f101b664e5630f5'
4
- data.tar.gz: 22add45f16d5d8b0ac1620b7586f25d92f2064dd60ac8ff168f1e6dc49b94727
3
+ metadata.gz: 249e149ff332f5b2157ba2569f3a4b71e0dead428fc68e63d4bce15b97bbb98c
4
+ data.tar.gz: 85bcb4b1cf7a07e054f9cbc53d32f53acf873b1c4660fdab9a278ef6f92db080
5
5
  SHA512:
6
- metadata.gz: 14234f72586a2a188db5691028e9d9f3b345f8c826a23660a7c7c311cc34c8aff4b1ddab4d472d88a6c4fb19f981109a48449fb8452b058011361f98fece4d53
7
- data.tar.gz: 72cfaac67663120c2ad90af4388b31ba324e9c14ac275b8f3bb252afae7e8bbe826b516470360cb59bdb914a18f73920905f8da753a88f05d3a36119ea79ee0d
6
+ metadata.gz: 80040ca2e34ad4c49017936d15bc4f293781501e9121a383cd662eb73c1e45ccfb16c484ae805128b0d5dbbed35bdcdae080bf68a1ea53720465c17139eac311
7
+ data.tar.gz: a5eba51c70a65bccc952558714a71b52c50dd4c1fea40bc8916380e5928bd71d2776fe02e87c3063c4e63167f6f97c043ff06d9e156da874c2f3159ed36d8803
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.57.0 (2022-11-29)
5
+ ------------------
6
+
7
+ * Feature - Added two new APIs to support Amazon S3 Multi-Region Access Point failover controls: GetMultiRegionAccessPointRoutes and SubmitMultiRegionAccessPointRoutes. The failover control APIs are supported in the following Regions: us-east-1, us-west-2, eu-west-1, ap-southeast-2, and ap-northeast-1.
8
+
9
+ 1.56.0 (2022-11-17)
10
+ ------------------
11
+
12
+ * Feature - Added 34 new S3 Storage Lens metrics to support additional customer use cases.
13
+
4
14
  1.55.0 (2022-11-02)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.55.0
1
+ 1.57.0
@@ -3163,6 +3163,63 @@ module Aws::S3Control
3163
3163
  req.send_request(options)
3164
3164
  end
3165
3165
 
3166
+ # Returns the routing configuration for a Multi-Region Access Point,
3167
+ # indicating which Regions are active or passive.
3168
+ #
3169
+ # To obtain routing control changes and failover requests, use the
3170
+ # Amazon S3 failover control infrastructure endpoints in these five
3171
+ # Amazon Web Services Regions:
3172
+ #
3173
+ # * `us-east-1`
3174
+ #
3175
+ # * `us-west-2`
3176
+ #
3177
+ # * `ap-southeast-2`
3178
+ #
3179
+ # * `ap-northeast-1`
3180
+ #
3181
+ # * `eu-west-1`
3182
+ #
3183
+ # <note markdown="1"> Your Amazon S3 bucket does not need to be in these five Regions.
3184
+ #
3185
+ # </note>
3186
+ #
3187
+ # @option params [String] :account_id
3188
+ # The Amazon Web Services account ID for the owner of the Multi-Region
3189
+ # Access Point.
3190
+ #
3191
+ # @option params [required, String] :mrap
3192
+ # The Multi-Region Access Point ARN.
3193
+ #
3194
+ # @return [Types::GetMultiRegionAccessPointRoutesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3195
+ #
3196
+ # * {Types::GetMultiRegionAccessPointRoutesResult#mrap #mrap} => String
3197
+ # * {Types::GetMultiRegionAccessPointRoutesResult#routes #routes} => Array&lt;Types::MultiRegionAccessPointRoute&gt;
3198
+ #
3199
+ # @example Request syntax with placeholder values
3200
+ #
3201
+ # resp = client.get_multi_region_access_point_routes({
3202
+ # account_id: "AccountId",
3203
+ # mrap: "MultiRegionAccessPointId", # required
3204
+ # })
3205
+ #
3206
+ # @example Response structure
3207
+ #
3208
+ # resp.mrap #=> String
3209
+ # resp.routes #=> Array
3210
+ # resp.routes[0].bucket #=> String
3211
+ # resp.routes[0].region #=> String
3212
+ # resp.routes[0].traffic_dial_percentage #=> Integer
3213
+ #
3214
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointRoutes AWS API Documentation
3215
+ #
3216
+ # @overload get_multi_region_access_point_routes(params = {})
3217
+ # @param [Hash] params ({})
3218
+ def get_multi_region_access_point_routes(params = {}, options = {})
3219
+ req = build_request(:get_multi_region_access_point_routes, params)
3220
+ req.send_request(options)
3221
+ end
3222
+
3166
3223
  # Retrieves the `PublicAccessBlock` configuration for an Amazon Web
3167
3224
  # Services account. For more information, see [ Using Amazon S3 block
3168
3225
  # public access][1].
@@ -3211,11 +3268,13 @@ module Aws::S3Control
3211
3268
 
3212
3269
  # Gets the Amazon S3 Storage Lens configuration. For more information,
3213
3270
  # see [Assessing your storage activity and usage with Amazon S3 Storage
3214
- # Lens ][1] in the *Amazon S3 User Guide*.
3271
+ # Lens ][1] in the *Amazon S3 User Guide*. For a complete list of S3
3272
+ # Storage Lens metrics, see [S3 Storage Lens metrics glossary][2] in the
3273
+ # *Amazon S3 User Guide*.
3215
3274
  #
3216
3275
  # <note markdown="1"> To use this action, you must have permission to perform the
3217
3276
  # `s3:GetStorageLensConfiguration` action. For more information, see
3218
- # [Setting permissions to use Amazon S3 Storage Lens][2] in the *Amazon
3277
+ # [Setting permissions to use Amazon S3 Storage Lens][3] in the *Amazon
3219
3278
  # S3 User Guide*.
3220
3279
  #
3221
3280
  # </note>
@@ -3223,7 +3282,8 @@ module Aws::S3Control
3223
3282
  #
3224
3283
  #
3225
3284
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html
3226
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html
3285
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html
3286
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html
3227
3287
  #
3228
3288
  # @option params [required, String] :config_id
3229
3289
  # The ID of the Amazon S3 Storage Lens configuration.
@@ -3251,6 +3311,12 @@ module Aws::S3Control
3251
3311
  # resp.storage_lens_configuration.account_level.bucket_level.prefix_level.storage_metrics.selection_criteria.delimiter #=> String
3252
3312
  # resp.storage_lens_configuration.account_level.bucket_level.prefix_level.storage_metrics.selection_criteria.max_depth #=> Integer
3253
3313
  # resp.storage_lens_configuration.account_level.bucket_level.prefix_level.storage_metrics.selection_criteria.min_storage_bytes_percentage #=> Float
3314
+ # resp.storage_lens_configuration.account_level.bucket_level.advanced_cost_optimization_metrics.is_enabled #=> Boolean
3315
+ # resp.storage_lens_configuration.account_level.bucket_level.advanced_data_protection_metrics.is_enabled #=> Boolean
3316
+ # resp.storage_lens_configuration.account_level.bucket_level.detailed_status_codes_metrics.is_enabled #=> Boolean
3317
+ # resp.storage_lens_configuration.account_level.advanced_cost_optimization_metrics.is_enabled #=> Boolean
3318
+ # resp.storage_lens_configuration.account_level.advanced_data_protection_metrics.is_enabled #=> Boolean
3319
+ # resp.storage_lens_configuration.account_level.detailed_status_codes_metrics.is_enabled #=> Boolean
3254
3320
  # resp.storage_lens_configuration.include.buckets #=> Array
3255
3321
  # resp.storage_lens_configuration.include.buckets[0] #=> String
3256
3322
  # resp.storage_lens_configuration.include.regions #=> Array
@@ -4627,11 +4693,13 @@ module Aws::S3Control
4627
4693
 
4628
4694
  # Puts an Amazon S3 Storage Lens configuration. For more information
4629
4695
  # about S3 Storage Lens, see [Working with Amazon S3 Storage Lens][1] in
4630
- # the *Amazon S3 User Guide*.
4696
+ # the *Amazon S3 User Guide*. For a complete list of S3 Storage Lens
4697
+ # metrics, see [S3 Storage Lens metrics glossary][2] in the *Amazon S3
4698
+ # User Guide*.
4631
4699
  #
4632
4700
  # <note markdown="1"> To use this action, you must have permission to perform the
4633
4701
  # `s3:PutStorageLensConfiguration` action. For more information, see
4634
- # [Setting permissions to use Amazon S3 Storage Lens][2] in the *Amazon
4702
+ # [Setting permissions to use Amazon S3 Storage Lens][3] in the *Amazon
4635
4703
  # S3 User Guide*.
4636
4704
  #
4637
4705
  # </note>
@@ -4639,7 +4707,8 @@ module Aws::S3Control
4639
4707
  #
4640
4708
  #
4641
4709
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens.html
4642
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html
4710
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html
4711
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage_lens_iam_permissions.html
4643
4712
  #
4644
4713
  # @option params [required, String] :config_id
4645
4714
  # The ID of the S3 Storage Lens configuration.
@@ -4684,6 +4753,24 @@ module Aws::S3Control
4684
4753
  # },
4685
4754
  # },
4686
4755
  # },
4756
+ # advanced_cost_optimization_metrics: {
4757
+ # is_enabled: false,
4758
+ # },
4759
+ # advanced_data_protection_metrics: {
4760
+ # is_enabled: false,
4761
+ # },
4762
+ # detailed_status_codes_metrics: {
4763
+ # is_enabled: false,
4764
+ # },
4765
+ # },
4766
+ # advanced_cost_optimization_metrics: {
4767
+ # is_enabled: false,
4768
+ # },
4769
+ # advanced_data_protection_metrics: {
4770
+ # is_enabled: false,
4771
+ # },
4772
+ # detailed_status_codes_metrics: {
4773
+ # is_enabled: false,
4687
4774
  # },
4688
4775
  # },
4689
4776
  # include: {
@@ -4790,6 +4877,80 @@ module Aws::S3Control
4790
4877
  req.send_request(options)
4791
4878
  end
4792
4879
 
4880
+ # Submits an updated route configuration for a Multi-Region Access
4881
+ # Point. This API operation updates the routing status for the specified
4882
+ # Regions from active to passive, or from passive to active. A value of
4883
+ # `0` indicates a passive status, which means that traffic won't be
4884
+ # routed to the specified Region. A value of `100` indicates an active
4885
+ # status, which means that traffic will be routed to the specified
4886
+ # Region. At least one Region must be active at all times.
4887
+ #
4888
+ # When the routing configuration is changed, any in-progress operations
4889
+ # (uploads, copies, deletes, and so on) to formerly active Regions will
4890
+ # continue to run to their final completion state (success or failure).
4891
+ # The routing configurations of any Regions that aren’t specified remain
4892
+ # unchanged.
4893
+ #
4894
+ # <note markdown="1"> Updated routing configurations might not be immediately applied. It
4895
+ # can take up to 2 minutes for your changes to take effect.
4896
+ #
4897
+ # </note>
4898
+ #
4899
+ # To submit routing control changes and failover requests, use the
4900
+ # Amazon S3 failover control infrastructure endpoints in these five
4901
+ # Amazon Web Services Regions:
4902
+ #
4903
+ # * `us-east-1`
4904
+ #
4905
+ # * `us-west-2`
4906
+ #
4907
+ # * `ap-southeast-2`
4908
+ #
4909
+ # * `ap-northeast-1`
4910
+ #
4911
+ # * `eu-west-1`
4912
+ #
4913
+ # <note markdown="1"> Your Amazon S3 bucket does not need to be in these five Regions.
4914
+ #
4915
+ # </note>
4916
+ #
4917
+ # @option params [String] :account_id
4918
+ # The Amazon Web Services account ID for the owner of the Multi-Region
4919
+ # Access Point.
4920
+ #
4921
+ # @option params [required, String] :mrap
4922
+ # The Multi-Region Access Point ARN.
4923
+ #
4924
+ # @option params [required, Array<Types::MultiRegionAccessPointRoute>] :route_updates
4925
+ # The different routes that make up the new route configuration. Active
4926
+ # routes return a value of `100`, and passive routes return a value of
4927
+ # `0`.
4928
+ #
4929
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4930
+ #
4931
+ # @example Request syntax with placeholder values
4932
+ #
4933
+ # resp = client.submit_multi_region_access_point_routes({
4934
+ # account_id: "AccountId",
4935
+ # mrap: "MultiRegionAccessPointId", # required
4936
+ # route_updates: [ # required
4937
+ # {
4938
+ # bucket: "BucketName",
4939
+ # region: "RegionName",
4940
+ # traffic_dial_percentage: 1, # required
4941
+ # },
4942
+ # ],
4943
+ # })
4944
+ #
4945
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SubmitMultiRegionAccessPointRoutes AWS API Documentation
4946
+ #
4947
+ # @overload submit_multi_region_access_point_routes(params = {})
4948
+ # @param [Hash] params ({})
4949
+ def submit_multi_region_access_point_routes(params = {}, options = {})
4950
+ req = build_request(:submit_multi_region_access_point_routes, params)
4951
+ req.send_request(options)
4952
+ end
4953
+
4793
4954
  # Updates an existing S3 Batch Operations job's priority. For more
4794
4955
  # information, see [S3 Batch Operations][1] in the *Amazon S3 User
4795
4956
  # Guide*.
@@ -4933,7 +5094,7 @@ module Aws::S3Control
4933
5094
  params: params,
4934
5095
  config: config)
4935
5096
  context[:gem_name] = 'aws-sdk-s3control'
4936
- context[:gem_version] = '1.55.0'
5097
+ context[:gem_version] = '1.57.0'
4937
5098
  Seahorse::Client::Request.new(handlers, context)
4938
5099
  end
4939
5100
 
@@ -20,6 +20,8 @@ module Aws::S3Control
20
20
  AccountId = Shapes::StringShape.new(name: 'AccountId')
21
21
  AccountLevel = Shapes::StructureShape.new(name: 'AccountLevel')
22
22
  ActivityMetrics = Shapes::StructureShape.new(name: 'ActivityMetrics')
23
+ AdvancedCostOptimizationMetrics = Shapes::StructureShape.new(name: 'AdvancedCostOptimizationMetrics')
24
+ AdvancedDataProtectionMetrics = Shapes::StructureShape.new(name: 'AdvancedDataProtectionMetrics')
23
25
  Alias = Shapes::StringShape.new(name: 'Alias')
24
26
  AsyncCreationTimestamp = Shapes::TimestampShape.new(name: 'AsyncCreationTimestamp')
25
27
  AsyncErrorDetails = Shapes::StructureShape.new(name: 'AsyncErrorDetails')
@@ -85,6 +87,7 @@ module Aws::S3Control
85
87
  DescribeJobResult = Shapes::StructureShape.new(name: 'DescribeJobResult')
86
88
  DescribeMultiRegionAccessPointOperationRequest = Shapes::StructureShape.new(name: 'DescribeMultiRegionAccessPointOperationRequest')
87
89
  DescribeMultiRegionAccessPointOperationResult = Shapes::StructureShape.new(name: 'DescribeMultiRegionAccessPointOperationResult')
90
+ DetailedStatusCodesMetrics = Shapes::StructureShape.new(name: 'DetailedStatusCodesMetrics')
88
91
  Endpoints = Shapes::MapShape.new(name: 'Endpoints')
89
92
  EstablishedMultiRegionAccessPointPolicy = Shapes::StructureShape.new(name: 'EstablishedMultiRegionAccessPointPolicy')
90
93
  ExceptionMessage = Shapes::StringShape.new(name: 'ExceptionMessage')
@@ -127,6 +130,8 @@ module Aws::S3Control
127
130
  GetMultiRegionAccessPointPolicyStatusResult = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointPolicyStatusResult')
128
131
  GetMultiRegionAccessPointRequest = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointRequest')
129
132
  GetMultiRegionAccessPointResult = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointResult')
133
+ GetMultiRegionAccessPointRoutesRequest = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointRoutesRequest')
134
+ GetMultiRegionAccessPointRoutesResult = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointRoutesResult')
130
135
  GetPublicAccessBlockOutput = Shapes::StructureShape.new(name: 'GetPublicAccessBlockOutput')
131
136
  GetPublicAccessBlockRequest = Shapes::StructureShape.new(name: 'GetPublicAccessBlockRequest')
132
137
  GetStorageLensConfigurationRequest = Shapes::StructureShape.new(name: 'GetStorageLensConfigurationRequest')
@@ -212,12 +217,14 @@ module Aws::S3Control
212
217
  MinStorageBytesPercentage = Shapes::FloatShape.new(name: 'MinStorageBytesPercentage')
213
218
  MultiRegionAccessPointAlias = Shapes::StringShape.new(name: 'MultiRegionAccessPointAlias')
214
219
  MultiRegionAccessPointClientToken = Shapes::StringShape.new(name: 'MultiRegionAccessPointClientToken')
220
+ MultiRegionAccessPointId = Shapes::StringShape.new(name: 'MultiRegionAccessPointId')
215
221
  MultiRegionAccessPointName = Shapes::StringShape.new(name: 'MultiRegionAccessPointName')
216
222
  MultiRegionAccessPointPolicyDocument = Shapes::StructureShape.new(name: 'MultiRegionAccessPointPolicyDocument')
217
223
  MultiRegionAccessPointRegionalResponse = Shapes::StructureShape.new(name: 'MultiRegionAccessPointRegionalResponse')
218
224
  MultiRegionAccessPointRegionalResponseList = Shapes::ListShape.new(name: 'MultiRegionAccessPointRegionalResponseList')
219
225
  MultiRegionAccessPointReport = Shapes::StructureShape.new(name: 'MultiRegionAccessPointReport')
220
226
  MultiRegionAccessPointReportList = Shapes::ListShape.new(name: 'MultiRegionAccessPointReportList')
227
+ MultiRegionAccessPointRoute = Shapes::StructureShape.new(name: 'MultiRegionAccessPointRoute')
221
228
  MultiRegionAccessPointStatus = Shapes::StringShape.new(name: 'MultiRegionAccessPointStatus')
222
229
  MultiRegionAccessPointsAsyncResponse = Shapes::StructureShape.new(name: 'MultiRegionAccessPointsAsyncResponse')
223
230
  NetworkOrigin = Shapes::StringShape.new(name: 'NetworkOrigin')
@@ -288,6 +295,7 @@ module Aws::S3Control
288
295
  ReplicationStatusFilterList = Shapes::ListShape.new(name: 'ReplicationStatusFilterList')
289
296
  ReportPrefixString = Shapes::StringShape.new(name: 'ReportPrefixString')
290
297
  RequestedJobStatus = Shapes::StringShape.new(name: 'RequestedJobStatus')
298
+ RouteList = Shapes::ListShape.new(name: 'RouteList')
291
299
  S3AWSRegion = Shapes::StringShape.new(name: 'S3AWSRegion')
292
300
  S3AccessControlList = Shapes::StructureShape.new(name: 'S3AccessControlList')
293
301
  S3AccessControlPolicy = Shapes::StructureShape.new(name: 'S3AccessControlPolicy')
@@ -349,6 +357,8 @@ module Aws::S3Control
349
357
  StorageLensTag = Shapes::StructureShape.new(name: 'StorageLensTag')
350
358
  StorageLensTags = Shapes::ListShape.new(name: 'StorageLensTags')
351
359
  StringForNextToken = Shapes::StringShape.new(name: 'StringForNextToken')
360
+ SubmitMultiRegionAccessPointRoutesRequest = Shapes::StructureShape.new(name: 'SubmitMultiRegionAccessPointRoutesRequest')
361
+ SubmitMultiRegionAccessPointRoutesResult = Shapes::StructureShape.new(name: 'SubmitMultiRegionAccessPointRoutesResult')
352
362
  SuspendedCause = Shapes::StringShape.new(name: 'SuspendedCause')
353
363
  SuspendedDate = Shapes::TimestampShape.new(name: 'SuspendedDate')
354
364
  TagKeyString = Shapes::StringShape.new(name: 'TagKeyString')
@@ -357,6 +367,7 @@ module Aws::S3Control
357
367
  TimeStamp = Shapes::TimestampShape.new(name: 'TimeStamp')
358
368
  TooManyRequestsException = Shapes::StructureShape.new(name: 'TooManyRequestsException')
359
369
  TooManyTagsException = Shapes::StructureShape.new(name: 'TooManyTagsException')
370
+ TrafficDialPercentage = Shapes::IntegerShape.new(name: 'TrafficDialPercentage')
360
371
  Transition = Shapes::StructureShape.new(name: 'Transition')
361
372
  TransitionList = Shapes::ListShape.new(name: 'TransitionList')
362
373
  TransitionStorageClass = Shapes::StringShape.new(name: 'TransitionStorageClass')
@@ -383,11 +394,20 @@ module Aws::S3Control
383
394
 
384
395
  AccountLevel.add_member(:activity_metrics, Shapes::ShapeRef.new(shape: ActivityMetrics, location_name: "ActivityMetrics"))
385
396
  AccountLevel.add_member(:bucket_level, Shapes::ShapeRef.new(shape: BucketLevel, required: true, location_name: "BucketLevel"))
397
+ AccountLevel.add_member(:advanced_cost_optimization_metrics, Shapes::ShapeRef.new(shape: AdvancedCostOptimizationMetrics, location_name: "AdvancedCostOptimizationMetrics"))
398
+ AccountLevel.add_member(:advanced_data_protection_metrics, Shapes::ShapeRef.new(shape: AdvancedDataProtectionMetrics, location_name: "AdvancedDataProtectionMetrics"))
399
+ AccountLevel.add_member(:detailed_status_codes_metrics, Shapes::ShapeRef.new(shape: DetailedStatusCodesMetrics, location_name: "DetailedStatusCodesMetrics"))
386
400
  AccountLevel.struct_class = Types::AccountLevel
387
401
 
388
402
  ActivityMetrics.add_member(:is_enabled, Shapes::ShapeRef.new(shape: IsEnabled, location_name: "IsEnabled"))
389
403
  ActivityMetrics.struct_class = Types::ActivityMetrics
390
404
 
405
+ AdvancedCostOptimizationMetrics.add_member(:is_enabled, Shapes::ShapeRef.new(shape: IsEnabled, location_name: "IsEnabled"))
406
+ AdvancedCostOptimizationMetrics.struct_class = Types::AdvancedCostOptimizationMetrics
407
+
408
+ AdvancedDataProtectionMetrics.add_member(:is_enabled, Shapes::ShapeRef.new(shape: IsEnabled, location_name: "IsEnabled"))
409
+ AdvancedDataProtectionMetrics.struct_class = Types::AdvancedDataProtectionMetrics
410
+
391
411
  AsyncErrorDetails.add_member(:code, Shapes::ShapeRef.new(shape: MaxLength1024String, location_name: "Code"))
392
412
  AsyncErrorDetails.add_member(:message, Shapes::ShapeRef.new(shape: MaxLength1024String, location_name: "Message"))
393
413
  AsyncErrorDetails.add_member(:resource, Shapes::ShapeRef.new(shape: MaxLength1024String, location_name: "Resource"))
@@ -424,6 +444,9 @@ module Aws::S3Control
424
444
 
425
445
  BucketLevel.add_member(:activity_metrics, Shapes::ShapeRef.new(shape: ActivityMetrics, location_name: "ActivityMetrics"))
426
446
  BucketLevel.add_member(:prefix_level, Shapes::ShapeRef.new(shape: PrefixLevel, location_name: "PrefixLevel"))
447
+ BucketLevel.add_member(:advanced_cost_optimization_metrics, Shapes::ShapeRef.new(shape: AdvancedCostOptimizationMetrics, location_name: "AdvancedCostOptimizationMetrics"))
448
+ BucketLevel.add_member(:advanced_data_protection_metrics, Shapes::ShapeRef.new(shape: AdvancedDataProtectionMetrics, location_name: "AdvancedDataProtectionMetrics"))
449
+ BucketLevel.add_member(:detailed_status_codes_metrics, Shapes::ShapeRef.new(shape: DetailedStatusCodesMetrics, location_name: "DetailedStatusCodesMetrics"))
427
450
  BucketLevel.struct_class = Types::BucketLevel
428
451
 
429
452
  Buckets.member = Shapes::ShapeRef.new(shape: S3BucketArnString, location_name: "Arn")
@@ -576,6 +599,9 @@ module Aws::S3Control
576
599
  DescribeMultiRegionAccessPointOperationResult.add_member(:async_operation, Shapes::ShapeRef.new(shape: AsyncOperation, location_name: "AsyncOperation"))
577
600
  DescribeMultiRegionAccessPointOperationResult.struct_class = Types::DescribeMultiRegionAccessPointOperationResult
578
601
 
602
+ DetailedStatusCodesMetrics.add_member(:is_enabled, Shapes::ShapeRef.new(shape: IsEnabled, location_name: "IsEnabled"))
603
+ DetailedStatusCodesMetrics.struct_class = Types::DetailedStatusCodesMetrics
604
+
579
605
  Endpoints.key = Shapes::ShapeRef.new(shape: NonEmptyMaxLength64String)
580
606
  Endpoints.value = Shapes::ShapeRef.new(shape: NonEmptyMaxLength1024String)
581
607
 
@@ -715,6 +741,14 @@ module Aws::S3Control
715
741
  GetMultiRegionAccessPointResult.add_member(:access_point, Shapes::ShapeRef.new(shape: MultiRegionAccessPointReport, location_name: "AccessPoint"))
716
742
  GetMultiRegionAccessPointResult.struct_class = Types::GetMultiRegionAccessPointResult
717
743
 
744
+ GetMultiRegionAccessPointRoutesRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-account-id", metadata: {"contextParam"=>{"name"=>"AccountId"}}))
745
+ GetMultiRegionAccessPointRoutesRequest.add_member(:mrap, Shapes::ShapeRef.new(shape: MultiRegionAccessPointId, required: true, location: "uri", location_name: "mrap"))
746
+ GetMultiRegionAccessPointRoutesRequest.struct_class = Types::GetMultiRegionAccessPointRoutesRequest
747
+
748
+ GetMultiRegionAccessPointRoutesResult.add_member(:mrap, Shapes::ShapeRef.new(shape: MultiRegionAccessPointId, location_name: "Mrap"))
749
+ GetMultiRegionAccessPointRoutesResult.add_member(:routes, Shapes::ShapeRef.new(shape: RouteList, location_name: "Routes"))
750
+ GetMultiRegionAccessPointRoutesResult.struct_class = Types::GetMultiRegionAccessPointRoutesResult
751
+
718
752
  GetPublicAccessBlockOutput.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, location_name: "PublicAccessBlockConfiguration"))
719
753
  GetPublicAccessBlockOutput.struct_class = Types::GetPublicAccessBlockOutput
720
754
  GetPublicAccessBlockOutput[:payload] = :public_access_block_configuration
@@ -971,6 +1005,11 @@ module Aws::S3Control
971
1005
 
972
1006
  MultiRegionAccessPointReportList.member = Shapes::ShapeRef.new(shape: MultiRegionAccessPointReport, location_name: "AccessPoint")
973
1007
 
1008
+ MultiRegionAccessPointRoute.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, location_name: "Bucket"))
1009
+ MultiRegionAccessPointRoute.add_member(:region, Shapes::ShapeRef.new(shape: RegionName, location_name: "Region"))
1010
+ MultiRegionAccessPointRoute.add_member(:traffic_dial_percentage, Shapes::ShapeRef.new(shape: TrafficDialPercentage, required: true, location_name: "TrafficDialPercentage"))
1011
+ MultiRegionAccessPointRoute.struct_class = Types::MultiRegionAccessPointRoute
1012
+
974
1013
  MultiRegionAccessPointsAsyncResponse.add_member(:regions, Shapes::ShapeRef.new(shape: MultiRegionAccessPointRegionalResponseList, location_name: "Regions"))
975
1014
  MultiRegionAccessPointsAsyncResponse.struct_class = Types::MultiRegionAccessPointsAsyncResponse
976
1015
 
@@ -1142,6 +1181,8 @@ module Aws::S3Control
1142
1181
 
1143
1182
  ReplicationStatusFilterList.member = Shapes::ShapeRef.new(shape: ReplicationStatus)
1144
1183
 
1184
+ RouteList.member = Shapes::ShapeRef.new(shape: MultiRegionAccessPointRoute, location_name: "Route")
1185
+
1145
1186
  S3AccessControlList.add_member(:owner, Shapes::ShapeRef.new(shape: S3ObjectOwner, required: true, location_name: "Owner"))
1146
1187
  S3AccessControlList.add_member(:grants, Shapes::ShapeRef.new(shape: S3GrantList, location_name: "Grants"))
1147
1188
  S3AccessControlList.struct_class = Types::S3AccessControlList
@@ -1305,6 +1346,13 @@ module Aws::S3Control
1305
1346
 
1306
1347
  StorageLensTags.member = Shapes::ShapeRef.new(shape: StorageLensTag, location_name: "Tag")
1307
1348
 
1349
+ SubmitMultiRegionAccessPointRoutesRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-account-id", metadata: {"contextParam"=>{"name"=>"AccountId"}}))
1350
+ SubmitMultiRegionAccessPointRoutesRequest.add_member(:mrap, Shapes::ShapeRef.new(shape: MultiRegionAccessPointId, required: true, location: "uri", location_name: "mrap"))
1351
+ SubmitMultiRegionAccessPointRoutesRequest.add_member(:route_updates, Shapes::ShapeRef.new(shape: RouteList, required: true, location_name: "RouteUpdates"))
1352
+ SubmitMultiRegionAccessPointRoutesRequest.struct_class = Types::SubmitMultiRegionAccessPointRoutesRequest
1353
+
1354
+ SubmitMultiRegionAccessPointRoutesResult.struct_class = Types::SubmitMultiRegionAccessPointRoutesResult
1355
+
1308
1356
  Tagging.add_member(:tag_set, Shapes::ShapeRef.new(shape: S3TagSet, required: true, location_name: "TagSet"))
1309
1357
  Tagging.struct_class = Types::Tagging
1310
1358
 
@@ -1741,7 +1789,7 @@ module Aws::S3Control
1741
1789
  api.add_operation(:get_multi_region_access_point, Seahorse::Model::Operation.new.tap do |o|
1742
1790
  o.name = "GetMultiRegionAccessPoint"
1743
1791
  o.http_method = "GET"
1744
- o.http_request_uri = "/v20180820/mrap/instances/{name}"
1792
+ o.http_request_uri = "/v20180820/mrap/instances/{name+}"
1745
1793
  o.http_checksum_required = true
1746
1794
  o.endpoint_pattern = {
1747
1795
  }
@@ -1752,7 +1800,7 @@ module Aws::S3Control
1752
1800
  api.add_operation(:get_multi_region_access_point_policy, Seahorse::Model::Operation.new.tap do |o|
1753
1801
  o.name = "GetMultiRegionAccessPointPolicy"
1754
1802
  o.http_method = "GET"
1755
- o.http_request_uri = "/v20180820/mrap/instances/{name}/policy"
1803
+ o.http_request_uri = "/v20180820/mrap/instances/{name+}/policy"
1756
1804
  o.http_checksum_required = true
1757
1805
  o.endpoint_pattern = {
1758
1806
  }
@@ -1763,7 +1811,7 @@ module Aws::S3Control
1763
1811
  api.add_operation(:get_multi_region_access_point_policy_status, Seahorse::Model::Operation.new.tap do |o|
1764
1812
  o.name = "GetMultiRegionAccessPointPolicyStatus"
1765
1813
  o.http_method = "GET"
1766
- o.http_request_uri = "/v20180820/mrap/instances/{name}/policystatus"
1814
+ o.http_request_uri = "/v20180820/mrap/instances/{name+}/policystatus"
1767
1815
  o.http_checksum_required = true
1768
1816
  o.endpoint_pattern = {
1769
1817
  }
@@ -1771,6 +1819,17 @@ module Aws::S3Control
1771
1819
  o.output = Shapes::ShapeRef.new(shape: GetMultiRegionAccessPointPolicyStatusResult)
1772
1820
  end)
1773
1821
 
1822
+ api.add_operation(:get_multi_region_access_point_routes, Seahorse::Model::Operation.new.tap do |o|
1823
+ o.name = "GetMultiRegionAccessPointRoutes"
1824
+ o.http_method = "GET"
1825
+ o.http_request_uri = "/v20180820/mrap/instances/{mrap+}/routes"
1826
+ o.http_checksum_required = true
1827
+ o.endpoint_pattern = {
1828
+ }
1829
+ o.input = Shapes::ShapeRef.new(shape: GetMultiRegionAccessPointRoutesRequest)
1830
+ o.output = Shapes::ShapeRef.new(shape: GetMultiRegionAccessPointRoutesResult)
1831
+ end)
1832
+
1774
1833
  api.add_operation(:get_public_access_block, Seahorse::Model::Operation.new.tap do |o|
1775
1834
  o.name = "GetPublicAccessBlock"
1776
1835
  o.http_method = "GET"
@@ -2070,6 +2129,22 @@ module Aws::S3Control
2070
2129
  o.output = Shapes::ShapeRef.new(shape: PutStorageLensConfigurationTaggingResult)
2071
2130
  end)
2072
2131
 
2132
+ api.add_operation(:submit_multi_region_access_point_routes, Seahorse::Model::Operation.new.tap do |o|
2133
+ o.name = "SubmitMultiRegionAccessPointRoutes"
2134
+ o.http_method = "PATCH"
2135
+ o.http_request_uri = "/v20180820/mrap/instances/{mrap+}/routes"
2136
+ o.http_checksum_required = true
2137
+ o.endpoint_pattern = {
2138
+ }
2139
+ o.input = Shapes::ShapeRef.new(shape: SubmitMultiRegionAccessPointRoutesRequest,
2140
+ location_name: "SubmitMultiRegionAccessPointRoutesRequest",
2141
+ metadata: {
2142
+ "xmlNamespace" => {"uri"=>"http://awss3control.amazonaws.com/doc/2018-08-20/"}
2143
+ }
2144
+ )
2145
+ o.output = Shapes::ShapeRef.new(shape: SubmitMultiRegionAccessPointRoutesResult)
2146
+ end)
2147
+
2073
2148
  api.add_operation(:update_job_priority, Seahorse::Model::Operation.new.tap do |o|
2074
2149
  o.name = "UpdateJobPriority"
2075
2150
  o.http_method = "POST"