aws-sdk-s3control 1.56.0 → 1.58.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: 0af62c49847da4df3b44e80e2722a53820f16e9c5fbd7a1874100c443f2df7e3
4
- data.tar.gz: e793fcc46c3447ee5d655e3118422dd0b18752b0712c416ca3e60221db1d6c13
3
+ metadata.gz: 12a8a9dde620ef37092fbee32c73b60e12fe5d74467ae141325242423d930dd8
4
+ data.tar.gz: 91aede4b238d920fa969016441baedf016c8b526c843b5fc30a8789a1e3f6c00
5
5
  SHA512:
6
- metadata.gz: aa0fec0b6884898b4dd840c9cee1e915a413c1a06534416316e2b2c3e1e31c622e7207cfc2bf46021c64eb7718c3eb53eb6ee4c4fb8669556e442ca7d4fe5404
7
- data.tar.gz: 1835481b9f33f429145f70102d0f9e0c743afc98a4ed8f777496499b7fc87c2555d50f13b5a467fe2198fce43874e5dae5dbd3a9b22ce27d8b842c7ea34e2217
6
+ metadata.gz: 6e457660a12e09720f2c1eed456e60346414e9594a746c0be12b72a5aff7c2660a1ac28e525664ecffbe761072ea5c34a2b025c3b5fdedb65bd5c9e1f13fd80e
7
+ data.tar.gz: d64a2a1351deaba4d977ace39bb7d42f4df70dc53e405863c06ff238fc7f70c1aba4c9337ba753aabe72986d056db337bbfd4e70247d747854c97c7adbcc8b66
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.58.0 (2022-11-30)
5
+ ------------------
6
+
7
+ * Feature - Amazon S3 now supports cross-account access points. S3 bucket owners can now allow trusted AWS accounts to create access points associated with their bucket.
8
+
9
+ 1.57.0 (2022-11-29)
10
+ ------------------
11
+
12
+ * 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.
13
+
4
14
  1.56.0 (2022-11-17)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.56.0
1
+ 1.58.0
@@ -422,8 +422,8 @@ module Aws::S3Control
422
422
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPoints.html
423
423
  #
424
424
  # @option params [String] :account_id
425
- # The Amazon Web Services account ID for the owner of the bucket for
426
- # which you want to create an access point.
425
+ # The Amazon Web Services account ID for the account that owns the
426
+ # specified access point.
427
427
  #
428
428
  # @option params [required, String] :name
429
429
  # The name you want to assign to this access point.
@@ -458,6 +458,10 @@ module Aws::S3Control
458
458
  # The `PublicAccessBlock` configuration that you want to apply to the
459
459
  # access point.
460
460
  #
461
+ # @option params [String] :bucket_account_id
462
+ # The Amazon Web Services account ID associated with the S3 bucket
463
+ # associated with this access point.
464
+ #
461
465
  # @return [Types::CreateAccessPointResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
462
466
  #
463
467
  # * {Types::CreateAccessPointResult#access_point_arn #access_point_arn} => String
@@ -478,6 +482,7 @@ module Aws::S3Control
478
482
  # block_public_policy: false,
479
483
  # restrict_public_buckets: false,
480
484
  # },
485
+ # bucket_account_id: "AccountId",
481
486
  # })
482
487
  #
483
488
  # @example Response structure
@@ -1099,7 +1104,8 @@ module Aws::S3Control
1099
1104
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPoints.html
1100
1105
  #
1101
1106
  # @option params [String] :account_id
1102
- # The account ID for the account that owns the specified access point.
1107
+ # The Amazon Web Services account ID for the account that owns the
1108
+ # specified access point.
1103
1109
  #
1104
1110
  # @option params [required, String] :name
1105
1111
  # The name of the access point you want to delete.
@@ -2092,7 +2098,8 @@ module Aws::S3Control
2092
2098
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPoints.html
2093
2099
  #
2094
2100
  # @option params [String] :account_id
2095
- # The account ID for the account that owns the specified access point.
2101
+ # The Amazon Web Services account ID for the account that owns the
2102
+ # specified access point.
2096
2103
  #
2097
2104
  # @option params [required, String] :name
2098
2105
  # The name of the access point whose configuration information you want
@@ -2122,6 +2129,7 @@ module Aws::S3Control
2122
2129
  # * {Types::GetAccessPointResult#alias #alias} => String
2123
2130
  # * {Types::GetAccessPointResult#access_point_arn #access_point_arn} => String
2124
2131
  # * {Types::GetAccessPointResult#endpoints #endpoints} => Hash<String,String>
2132
+ # * {Types::GetAccessPointResult#bucket_account_id #bucket_account_id} => String
2125
2133
  #
2126
2134
  # @example Request syntax with placeholder values
2127
2135
  #
@@ -2145,6 +2153,7 @@ module Aws::S3Control
2145
2153
  # resp.access_point_arn #=> String
2146
2154
  # resp.endpoints #=> Hash
2147
2155
  # resp.endpoints["NonEmptyMaxLength64String"] #=> String
2156
+ # resp.bucket_account_id #=> String
2148
2157
  #
2149
2158
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPoint AWS API Documentation
2150
2159
  #
@@ -3163,6 +3172,63 @@ module Aws::S3Control
3163
3172
  req.send_request(options)
3164
3173
  end
3165
3174
 
3175
+ # Returns the routing configuration for a Multi-Region Access Point,
3176
+ # indicating which Regions are active or passive.
3177
+ #
3178
+ # To obtain routing control changes and failover requests, use the
3179
+ # Amazon S3 failover control infrastructure endpoints in these five
3180
+ # Amazon Web Services Regions:
3181
+ #
3182
+ # * `us-east-1`
3183
+ #
3184
+ # * `us-west-2`
3185
+ #
3186
+ # * `ap-southeast-2`
3187
+ #
3188
+ # * `ap-northeast-1`
3189
+ #
3190
+ # * `eu-west-1`
3191
+ #
3192
+ # <note markdown="1"> Your Amazon S3 bucket does not need to be in these five Regions.
3193
+ #
3194
+ # </note>
3195
+ #
3196
+ # @option params [String] :account_id
3197
+ # The Amazon Web Services account ID for the owner of the Multi-Region
3198
+ # Access Point.
3199
+ #
3200
+ # @option params [required, String] :mrap
3201
+ # The Multi-Region Access Point ARN.
3202
+ #
3203
+ # @return [Types::GetMultiRegionAccessPointRoutesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3204
+ #
3205
+ # * {Types::GetMultiRegionAccessPointRoutesResult#mrap #mrap} => String
3206
+ # * {Types::GetMultiRegionAccessPointRoutesResult#routes #routes} => Array&lt;Types::MultiRegionAccessPointRoute&gt;
3207
+ #
3208
+ # @example Request syntax with placeholder values
3209
+ #
3210
+ # resp = client.get_multi_region_access_point_routes({
3211
+ # account_id: "AccountId",
3212
+ # mrap: "MultiRegionAccessPointId", # required
3213
+ # })
3214
+ #
3215
+ # @example Response structure
3216
+ #
3217
+ # resp.mrap #=> String
3218
+ # resp.routes #=> Array
3219
+ # resp.routes[0].bucket #=> String
3220
+ # resp.routes[0].region #=> String
3221
+ # resp.routes[0].traffic_dial_percentage #=> Integer
3222
+ #
3223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetMultiRegionAccessPointRoutes AWS API Documentation
3224
+ #
3225
+ # @overload get_multi_region_access_point_routes(params = {})
3226
+ # @param [Hash] params ({})
3227
+ def get_multi_region_access_point_routes(params = {}, options = {})
3228
+ req = build_request(:get_multi_region_access_point_routes, params)
3229
+ req.send_request(options)
3230
+ end
3231
+
3166
3232
  # Retrieves the `PublicAccessBlock` configuration for an Amazon Web
3167
3233
  # Services account. For more information, see [ Using Amazon S3 block
3168
3234
  # public access][1].
@@ -3337,12 +3403,12 @@ module Aws::S3Control
3337
3403
  req.send_request(options)
3338
3404
  end
3339
3405
 
3340
- # Returns a list of the access points currently associated with the
3341
- # specified bucket. You can retrieve up to 1000 access points per call.
3342
- # If the specified bucket has more than 1,000 access points (or the
3343
- # number specified in `maxResults`, whichever is less), the response
3344
- # will include a continuation token that you can use to list the
3345
- # additional access points.
3406
+ # Returns a list of the access points owned by the current account
3407
+ # associated with the specified bucket. You can retrieve up to 1000
3408
+ # access points per call. If the specified bucket has more than 1,000
3409
+ # access points (or the number specified in `maxResults`, whichever is
3410
+ # less), the response will include a continuation token that you can use
3411
+ # to list the additional access points.
3346
3412
  #
3347
3413
  #
3348
3414
  #
@@ -3370,8 +3436,8 @@ module Aws::S3Control
3370
3436
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPoint.html
3371
3437
  #
3372
3438
  # @option params [String] :account_id
3373
- # The Amazon Web Services account ID for owner of the bucket whose
3374
- # access points you want to list.
3439
+ # The Amazon Web Services account ID for the account that owns the
3440
+ # specified access points.
3375
3441
  #
3376
3442
  # @option params [String] :bucket
3377
3443
  # The name of the bucket whose associated access points you want to
@@ -3427,6 +3493,7 @@ module Aws::S3Control
3427
3493
  # resp.access_point_list[0].bucket #=> String
3428
3494
  # resp.access_point_list[0].access_point_arn #=> String
3429
3495
  # resp.access_point_list[0].alias #=> String
3496
+ # resp.access_point_list[0].bucket_account_id #=> String
3430
3497
  # resp.next_token #=> String
3431
3498
  #
3432
3499
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessPoints AWS API Documentation
@@ -4820,6 +4887,80 @@ module Aws::S3Control
4820
4887
  req.send_request(options)
4821
4888
  end
4822
4889
 
4890
+ # Submits an updated route configuration for a Multi-Region Access
4891
+ # Point. This API operation updates the routing status for the specified
4892
+ # Regions from active to passive, or from passive to active. A value of
4893
+ # `0` indicates a passive status, which means that traffic won't be
4894
+ # routed to the specified Region. A value of `100` indicates an active
4895
+ # status, which means that traffic will be routed to the specified
4896
+ # Region. At least one Region must be active at all times.
4897
+ #
4898
+ # When the routing configuration is changed, any in-progress operations
4899
+ # (uploads, copies, deletes, and so on) to formerly active Regions will
4900
+ # continue to run to their final completion state (success or failure).
4901
+ # The routing configurations of any Regions that aren’t specified remain
4902
+ # unchanged.
4903
+ #
4904
+ # <note markdown="1"> Updated routing configurations might not be immediately applied. It
4905
+ # can take up to 2 minutes for your changes to take effect.
4906
+ #
4907
+ # </note>
4908
+ #
4909
+ # To submit routing control changes and failover requests, use the
4910
+ # Amazon S3 failover control infrastructure endpoints in these five
4911
+ # Amazon Web Services Regions:
4912
+ #
4913
+ # * `us-east-1`
4914
+ #
4915
+ # * `us-west-2`
4916
+ #
4917
+ # * `ap-southeast-2`
4918
+ #
4919
+ # * `ap-northeast-1`
4920
+ #
4921
+ # * `eu-west-1`
4922
+ #
4923
+ # <note markdown="1"> Your Amazon S3 bucket does not need to be in these five Regions.
4924
+ #
4925
+ # </note>
4926
+ #
4927
+ # @option params [String] :account_id
4928
+ # The Amazon Web Services account ID for the owner of the Multi-Region
4929
+ # Access Point.
4930
+ #
4931
+ # @option params [required, String] :mrap
4932
+ # The Multi-Region Access Point ARN.
4933
+ #
4934
+ # @option params [required, Array<Types::MultiRegionAccessPointRoute>] :route_updates
4935
+ # The different routes that make up the new route configuration. Active
4936
+ # routes return a value of `100`, and passive routes return a value of
4937
+ # `0`.
4938
+ #
4939
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4940
+ #
4941
+ # @example Request syntax with placeholder values
4942
+ #
4943
+ # resp = client.submit_multi_region_access_point_routes({
4944
+ # account_id: "AccountId",
4945
+ # mrap: "MultiRegionAccessPointId", # required
4946
+ # route_updates: [ # required
4947
+ # {
4948
+ # bucket: "BucketName",
4949
+ # region: "RegionName",
4950
+ # traffic_dial_percentage: 1, # required
4951
+ # },
4952
+ # ],
4953
+ # })
4954
+ #
4955
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SubmitMultiRegionAccessPointRoutes AWS API Documentation
4956
+ #
4957
+ # @overload submit_multi_region_access_point_routes(params = {})
4958
+ # @param [Hash] params ({})
4959
+ def submit_multi_region_access_point_routes(params = {}, options = {})
4960
+ req = build_request(:submit_multi_region_access_point_routes, params)
4961
+ req.send_request(options)
4962
+ end
4963
+
4823
4964
  # Updates an existing S3 Batch Operations job's priority. For more
4824
4965
  # information, see [S3 Batch Operations][1] in the *Amazon S3 User
4825
4966
  # Guide*.
@@ -4963,7 +5104,7 @@ module Aws::S3Control
4963
5104
  params: params,
4964
5105
  config: config)
4965
5106
  context[:gem_name] = 'aws-sdk-s3control'
4966
- context[:gem_version] = '1.56.0'
5107
+ context[:gem_version] = '1.58.0'
4967
5108
  Seahorse::Client::Request.new(handlers, context)
4968
5109
  end
4969
5110
 
@@ -130,6 +130,8 @@ module Aws::S3Control
130
130
  GetMultiRegionAccessPointPolicyStatusResult = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointPolicyStatusResult')
131
131
  GetMultiRegionAccessPointRequest = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointRequest')
132
132
  GetMultiRegionAccessPointResult = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointResult')
133
+ GetMultiRegionAccessPointRoutesRequest = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointRoutesRequest')
134
+ GetMultiRegionAccessPointRoutesResult = Shapes::StructureShape.new(name: 'GetMultiRegionAccessPointRoutesResult')
133
135
  GetPublicAccessBlockOutput = Shapes::StructureShape.new(name: 'GetPublicAccessBlockOutput')
134
136
  GetPublicAccessBlockRequest = Shapes::StructureShape.new(name: 'GetPublicAccessBlockRequest')
135
137
  GetStorageLensConfigurationRequest = Shapes::StructureShape.new(name: 'GetStorageLensConfigurationRequest')
@@ -215,12 +217,14 @@ module Aws::S3Control
215
217
  MinStorageBytesPercentage = Shapes::FloatShape.new(name: 'MinStorageBytesPercentage')
216
218
  MultiRegionAccessPointAlias = Shapes::StringShape.new(name: 'MultiRegionAccessPointAlias')
217
219
  MultiRegionAccessPointClientToken = Shapes::StringShape.new(name: 'MultiRegionAccessPointClientToken')
220
+ MultiRegionAccessPointId = Shapes::StringShape.new(name: 'MultiRegionAccessPointId')
218
221
  MultiRegionAccessPointName = Shapes::StringShape.new(name: 'MultiRegionAccessPointName')
219
222
  MultiRegionAccessPointPolicyDocument = Shapes::StructureShape.new(name: 'MultiRegionAccessPointPolicyDocument')
220
223
  MultiRegionAccessPointRegionalResponse = Shapes::StructureShape.new(name: 'MultiRegionAccessPointRegionalResponse')
221
224
  MultiRegionAccessPointRegionalResponseList = Shapes::ListShape.new(name: 'MultiRegionAccessPointRegionalResponseList')
222
225
  MultiRegionAccessPointReport = Shapes::StructureShape.new(name: 'MultiRegionAccessPointReport')
223
226
  MultiRegionAccessPointReportList = Shapes::ListShape.new(name: 'MultiRegionAccessPointReportList')
227
+ MultiRegionAccessPointRoute = Shapes::StructureShape.new(name: 'MultiRegionAccessPointRoute')
224
228
  MultiRegionAccessPointStatus = Shapes::StringShape.new(name: 'MultiRegionAccessPointStatus')
225
229
  MultiRegionAccessPointsAsyncResponse = Shapes::StructureShape.new(name: 'MultiRegionAccessPointsAsyncResponse')
226
230
  NetworkOrigin = Shapes::StringShape.new(name: 'NetworkOrigin')
@@ -291,6 +295,7 @@ module Aws::S3Control
291
295
  ReplicationStatusFilterList = Shapes::ListShape.new(name: 'ReplicationStatusFilterList')
292
296
  ReportPrefixString = Shapes::StringShape.new(name: 'ReportPrefixString')
293
297
  RequestedJobStatus = Shapes::StringShape.new(name: 'RequestedJobStatus')
298
+ RouteList = Shapes::ListShape.new(name: 'RouteList')
294
299
  S3AWSRegion = Shapes::StringShape.new(name: 'S3AWSRegion')
295
300
  S3AccessControlList = Shapes::StructureShape.new(name: 'S3AccessControlList')
296
301
  S3AccessControlPolicy = Shapes::StructureShape.new(name: 'S3AccessControlPolicy')
@@ -352,6 +357,8 @@ module Aws::S3Control
352
357
  StorageLensTag = Shapes::StructureShape.new(name: 'StorageLensTag')
353
358
  StorageLensTags = Shapes::ListShape.new(name: 'StorageLensTags')
354
359
  StringForNextToken = Shapes::StringShape.new(name: 'StringForNextToken')
360
+ SubmitMultiRegionAccessPointRoutesRequest = Shapes::StructureShape.new(name: 'SubmitMultiRegionAccessPointRoutesRequest')
361
+ SubmitMultiRegionAccessPointRoutesResult = Shapes::StructureShape.new(name: 'SubmitMultiRegionAccessPointRoutesResult')
355
362
  SuspendedCause = Shapes::StringShape.new(name: 'SuspendedCause')
356
363
  SuspendedDate = Shapes::TimestampShape.new(name: 'SuspendedDate')
357
364
  TagKeyString = Shapes::StringShape.new(name: 'TagKeyString')
@@ -360,6 +367,7 @@ module Aws::S3Control
360
367
  TimeStamp = Shapes::TimestampShape.new(name: 'TimeStamp')
361
368
  TooManyRequestsException = Shapes::StructureShape.new(name: 'TooManyRequestsException')
362
369
  TooManyTagsException = Shapes::StructureShape.new(name: 'TooManyTagsException')
370
+ TrafficDialPercentage = Shapes::IntegerShape.new(name: 'TrafficDialPercentage')
363
371
  Transition = Shapes::StructureShape.new(name: 'Transition')
364
372
  TransitionList = Shapes::ListShape.new(name: 'TransitionList')
365
373
  TransitionStorageClass = Shapes::StringShape.new(name: 'TransitionStorageClass')
@@ -380,6 +388,7 @@ module Aws::S3Control
380
388
  AccessPoint.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location_name: "Bucket"))
381
389
  AccessPoint.add_member(:access_point_arn, Shapes::ShapeRef.new(shape: S3AccessPointArn, location_name: "AccessPointArn"))
382
390
  AccessPoint.add_member(:alias, Shapes::ShapeRef.new(shape: Alias, location_name: "Alias"))
391
+ AccessPoint.add_member(:bucket_account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "BucketAccountId"))
383
392
  AccessPoint.struct_class = Types::AccessPoint
384
393
 
385
394
  AccessPointList.member = Shapes::ShapeRef.new(shape: AccessPoint, location_name: "AccessPoint")
@@ -459,6 +468,7 @@ module Aws::S3Control
459
468
  CreateAccessPointRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
460
469
  CreateAccessPointRequest.add_member(:vpc_configuration, Shapes::ShapeRef.new(shape: VpcConfiguration, location_name: "VpcConfiguration"))
461
470
  CreateAccessPointRequest.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, location_name: "PublicAccessBlockConfiguration"))
471
+ CreateAccessPointRequest.add_member(:bucket_account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "BucketAccountId"))
462
472
  CreateAccessPointRequest.struct_class = Types::CreateAccessPointRequest
463
473
 
464
474
  CreateAccessPointResult.add_member(:access_point_arn, Shapes::ShapeRef.new(shape: S3AccessPointArn, location_name: "AccessPointArn"))
@@ -665,6 +675,7 @@ module Aws::S3Control
665
675
  GetAccessPointResult.add_member(:alias, Shapes::ShapeRef.new(shape: Alias, location_name: "Alias"))
666
676
  GetAccessPointResult.add_member(:access_point_arn, Shapes::ShapeRef.new(shape: S3AccessPointArn, location_name: "AccessPointArn"))
667
677
  GetAccessPointResult.add_member(:endpoints, Shapes::ShapeRef.new(shape: Endpoints, location_name: "Endpoints"))
678
+ GetAccessPointResult.add_member(:bucket_account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "BucketAccountId"))
668
679
  GetAccessPointResult.struct_class = Types::GetAccessPointResult
669
680
 
670
681
  GetBucketLifecycleConfigurationRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-account-id", metadata: {"contextParam"=>{"name"=>"AccountId"}}))
@@ -733,6 +744,14 @@ module Aws::S3Control
733
744
  GetMultiRegionAccessPointResult.add_member(:access_point, Shapes::ShapeRef.new(shape: MultiRegionAccessPointReport, location_name: "AccessPoint"))
734
745
  GetMultiRegionAccessPointResult.struct_class = Types::GetMultiRegionAccessPointResult
735
746
 
747
+ GetMultiRegionAccessPointRoutesRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-account-id", metadata: {"contextParam"=>{"name"=>"AccountId"}}))
748
+ GetMultiRegionAccessPointRoutesRequest.add_member(:mrap, Shapes::ShapeRef.new(shape: MultiRegionAccessPointId, required: true, location: "uri", location_name: "mrap"))
749
+ GetMultiRegionAccessPointRoutesRequest.struct_class = Types::GetMultiRegionAccessPointRoutesRequest
750
+
751
+ GetMultiRegionAccessPointRoutesResult.add_member(:mrap, Shapes::ShapeRef.new(shape: MultiRegionAccessPointId, location_name: "Mrap"))
752
+ GetMultiRegionAccessPointRoutesResult.add_member(:routes, Shapes::ShapeRef.new(shape: RouteList, location_name: "Routes"))
753
+ GetMultiRegionAccessPointRoutesResult.struct_class = Types::GetMultiRegionAccessPointRoutesResult
754
+
736
755
  GetPublicAccessBlockOutput.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, location_name: "PublicAccessBlockConfiguration"))
737
756
  GetPublicAccessBlockOutput.struct_class = Types::GetPublicAccessBlockOutput
738
757
  GetPublicAccessBlockOutput[:payload] = :public_access_block_configuration
@@ -989,6 +1008,11 @@ module Aws::S3Control
989
1008
 
990
1009
  MultiRegionAccessPointReportList.member = Shapes::ShapeRef.new(shape: MultiRegionAccessPointReport, location_name: "AccessPoint")
991
1010
 
1011
+ MultiRegionAccessPointRoute.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, location_name: "Bucket"))
1012
+ MultiRegionAccessPointRoute.add_member(:region, Shapes::ShapeRef.new(shape: RegionName, location_name: "Region"))
1013
+ MultiRegionAccessPointRoute.add_member(:traffic_dial_percentage, Shapes::ShapeRef.new(shape: TrafficDialPercentage, required: true, location_name: "TrafficDialPercentage"))
1014
+ MultiRegionAccessPointRoute.struct_class = Types::MultiRegionAccessPointRoute
1015
+
992
1016
  MultiRegionAccessPointsAsyncResponse.add_member(:regions, Shapes::ShapeRef.new(shape: MultiRegionAccessPointRegionalResponseList, location_name: "Regions"))
993
1017
  MultiRegionAccessPointsAsyncResponse.struct_class = Types::MultiRegionAccessPointsAsyncResponse
994
1018
 
@@ -1160,6 +1184,8 @@ module Aws::S3Control
1160
1184
 
1161
1185
  ReplicationStatusFilterList.member = Shapes::ShapeRef.new(shape: ReplicationStatus)
1162
1186
 
1187
+ RouteList.member = Shapes::ShapeRef.new(shape: MultiRegionAccessPointRoute, location_name: "Route")
1188
+
1163
1189
  S3AccessControlList.add_member(:owner, Shapes::ShapeRef.new(shape: S3ObjectOwner, required: true, location_name: "Owner"))
1164
1190
  S3AccessControlList.add_member(:grants, Shapes::ShapeRef.new(shape: S3GrantList, location_name: "Grants"))
1165
1191
  S3AccessControlList.struct_class = Types::S3AccessControlList
@@ -1323,6 +1349,13 @@ module Aws::S3Control
1323
1349
 
1324
1350
  StorageLensTags.member = Shapes::ShapeRef.new(shape: StorageLensTag, location_name: "Tag")
1325
1351
 
1352
+ SubmitMultiRegionAccessPointRoutesRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-account-id", metadata: {"contextParam"=>{"name"=>"AccountId"}}))
1353
+ SubmitMultiRegionAccessPointRoutesRequest.add_member(:mrap, Shapes::ShapeRef.new(shape: MultiRegionAccessPointId, required: true, location: "uri", location_name: "mrap"))
1354
+ SubmitMultiRegionAccessPointRoutesRequest.add_member(:route_updates, Shapes::ShapeRef.new(shape: RouteList, required: true, location_name: "RouteUpdates"))
1355
+ SubmitMultiRegionAccessPointRoutesRequest.struct_class = Types::SubmitMultiRegionAccessPointRoutesRequest
1356
+
1357
+ SubmitMultiRegionAccessPointRoutesResult.struct_class = Types::SubmitMultiRegionAccessPointRoutesResult
1358
+
1326
1359
  Tagging.add_member(:tag_set, Shapes::ShapeRef.new(shape: S3TagSet, required: true, location_name: "TagSet"))
1327
1360
  Tagging.struct_class = Types::Tagging
1328
1361
 
@@ -1759,7 +1792,7 @@ module Aws::S3Control
1759
1792
  api.add_operation(:get_multi_region_access_point, Seahorse::Model::Operation.new.tap do |o|
1760
1793
  o.name = "GetMultiRegionAccessPoint"
1761
1794
  o.http_method = "GET"
1762
- o.http_request_uri = "/v20180820/mrap/instances/{name}"
1795
+ o.http_request_uri = "/v20180820/mrap/instances/{name+}"
1763
1796
  o.http_checksum_required = true
1764
1797
  o.endpoint_pattern = {
1765
1798
  }
@@ -1770,7 +1803,7 @@ module Aws::S3Control
1770
1803
  api.add_operation(:get_multi_region_access_point_policy, Seahorse::Model::Operation.new.tap do |o|
1771
1804
  o.name = "GetMultiRegionAccessPointPolicy"
1772
1805
  o.http_method = "GET"
1773
- o.http_request_uri = "/v20180820/mrap/instances/{name}/policy"
1806
+ o.http_request_uri = "/v20180820/mrap/instances/{name+}/policy"
1774
1807
  o.http_checksum_required = true
1775
1808
  o.endpoint_pattern = {
1776
1809
  }
@@ -1781,7 +1814,7 @@ module Aws::S3Control
1781
1814
  api.add_operation(:get_multi_region_access_point_policy_status, Seahorse::Model::Operation.new.tap do |o|
1782
1815
  o.name = "GetMultiRegionAccessPointPolicyStatus"
1783
1816
  o.http_method = "GET"
1784
- o.http_request_uri = "/v20180820/mrap/instances/{name}/policystatus"
1817
+ o.http_request_uri = "/v20180820/mrap/instances/{name+}/policystatus"
1785
1818
  o.http_checksum_required = true
1786
1819
  o.endpoint_pattern = {
1787
1820
  }
@@ -1789,6 +1822,17 @@ module Aws::S3Control
1789
1822
  o.output = Shapes::ShapeRef.new(shape: GetMultiRegionAccessPointPolicyStatusResult)
1790
1823
  end)
1791
1824
 
1825
+ api.add_operation(:get_multi_region_access_point_routes, Seahorse::Model::Operation.new.tap do |o|
1826
+ o.name = "GetMultiRegionAccessPointRoutes"
1827
+ o.http_method = "GET"
1828
+ o.http_request_uri = "/v20180820/mrap/instances/{mrap+}/routes"
1829
+ o.http_checksum_required = true
1830
+ o.endpoint_pattern = {
1831
+ }
1832
+ o.input = Shapes::ShapeRef.new(shape: GetMultiRegionAccessPointRoutesRequest)
1833
+ o.output = Shapes::ShapeRef.new(shape: GetMultiRegionAccessPointRoutesResult)
1834
+ end)
1835
+
1792
1836
  api.add_operation(:get_public_access_block, Seahorse::Model::Operation.new.tap do |o|
1793
1837
  o.name = "GetPublicAccessBlock"
1794
1838
  o.http_method = "GET"
@@ -2088,6 +2132,22 @@ module Aws::S3Control
2088
2132
  o.output = Shapes::ShapeRef.new(shape: PutStorageLensConfigurationTaggingResult)
2089
2133
  end)
2090
2134
 
2135
+ api.add_operation(:submit_multi_region_access_point_routes, Seahorse::Model::Operation.new.tap do |o|
2136
+ o.name = "SubmitMultiRegionAccessPointRoutes"
2137
+ o.http_method = "PATCH"
2138
+ o.http_request_uri = "/v20180820/mrap/instances/{mrap+}/routes"
2139
+ o.http_checksum_required = true
2140
+ o.endpoint_pattern = {
2141
+ }
2142
+ o.input = Shapes::ShapeRef.new(shape: SubmitMultiRegionAccessPointRoutesRequest,
2143
+ location_name: "SubmitMultiRegionAccessPointRoutesRequest",
2144
+ metadata: {
2145
+ "xmlNamespace" => {"uri"=>"http://awss3control.amazonaws.com/doc/2018-08-20/"}
2146
+ }
2147
+ )
2148
+ o.output = Shapes::ShapeRef.new(shape: SubmitMultiRegionAccessPointRoutesResult)
2149
+ end)
2150
+
2091
2151
  api.add_operation(:update_job_priority, Seahorse::Model::Operation.new.tap do |o|
2092
2152
  o.name = "UpdateJobPriority"
2093
2153
  o.http_method = "POST"