aws-sdk-s3control 1.55.0 → 1.57.0

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