aws-sdk-sesv2 1.67.0 → 1.69.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: '062650195298fb5e72afab4a48ca86e9f85b4b87c85fd0998481aeea4984c0da'
4
- data.tar.gz: ba70ad9ed5a5eab9b7a62e4fad0652c9de2cf2fc7168f4dca910036ce7cf68e3
3
+ metadata.gz: 1b43676d3026daf9f088d5567971f21b8cae9756a5adda3886d4066a1f67077a
4
+ data.tar.gz: 6d63f7bbd85c67aeadf9aae40346599ed3381b4b86b61eac8424a4f53101381e
5
5
  SHA512:
6
- metadata.gz: 88e319371a90ffdeac338bb336459cabc626704bfa7a12bfb6151040637ee57effdcfb7bbaa77d351a08b6640e4eb02707d37602e503a00e8bcde2d86e143437
7
- data.tar.gz: 1c52eacee1217656e30f2291badad92e1569fa415a3fd7bf8985cce6ec115a4affa7bd8945784ca3ea6348148263efc05ab3515092fb3eddd1217c76791f7598
6
+ metadata.gz: c491752de1fe19eee9b67ca0d139ed182e0266bf169089b0ac45a72e3e55928060dfad545744f2e508eff7dd00643012497220814d6ee6298992afff2ad48865
7
+ data.tar.gz: f6d416b579e03e29d16a91c295ad750849f84ef562aed34edc609296fc9c38a4897b7eb3ed4cf29eaf23923594e2b9e3b39dfd4b0a6940293d6a2782c5501aa9
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.69.0 (2025-01-15)
5
+ ------------------
6
+
7
+ * Feature - This release introduces a new recommendation in Virtual Deliverability Manager Advisor, which detects elevated complaint rates for customer sending identities.
8
+
9
+ 1.68.0 (2024-12-11)
10
+ ------------------
11
+
12
+ * Feature - Introduces support for multi-region endpoint.
13
+
4
14
  1.67.0 (2024-12-10)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.67.0
1
+ 1.69.0
@@ -257,11 +257,34 @@ module Aws::SESV2
257
257
  # Used when loading credentials from the shared credentials file
258
258
  # at HOME/.aws/credentials. When not specified, 'default' is used.
259
259
  #
260
+ # @option options [String] :request_checksum_calculation ("when_supported")
261
+ # Determines when a checksum will be calculated for request payloads. Values are:
262
+ #
263
+ # * `when_supported` - (default) When set, a checksum will be
264
+ # calculated for all request payloads of operations modeled with the
265
+ # `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
266
+ # `requestAlgorithmMember` is modeled.
267
+ # * `when_required` - When set, a checksum will only be calculated for
268
+ # request payloads of operations modeled with the `httpChecksum` trait where
269
+ # `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
270
+ # is modeled and supplied.
271
+ #
260
272
  # @option options [Integer] :request_min_compression_size_bytes (10240)
261
273
  # The minimum size in bytes that triggers compression for request
262
274
  # bodies. The value must be non-negative integer value between 0
263
275
  # and 10485780 bytes inclusive.
264
276
  #
277
+ # @option options [String] :response_checksum_validation ("when_supported")
278
+ # Determines when checksum validation will be performed on response payloads. Values are:
279
+ #
280
+ # * `when_supported` - (default) When set, checksum validation is performed on all
281
+ # response payloads of operations modeled with the `httpChecksum` trait where
282
+ # `responseAlgorithms` is modeled, except when no modeled checksum algorithms
283
+ # are supported.
284
+ # * `when_required` - When set, checksum validation is not performed on
285
+ # response payloads of operations unless the checksum algorithm is supported and
286
+ # the `requestValidationModeMember` member is set to `ENABLED`.
287
+ #
265
288
  # @option options [Proc] :retry_backoff
266
289
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
267
290
  # This option is only used in the `legacy` retry mode.
@@ -1376,6 +1399,64 @@ module Aws::SESV2
1376
1399
  req.send_request(options)
1377
1400
  end
1378
1401
 
1402
+ # Creates a multi-region endpoint (global-endpoint).
1403
+ #
1404
+ # The primary region is going to be the AWS-Region where the operation
1405
+ # is executed. The secondary region has to be provided in request's
1406
+ # parameters. From the data flow standpoint there is no difference
1407
+ # between primary and secondary regions - sending traffic will be split
1408
+ # equally between the two. The primary region is the region where the
1409
+ # resource has been created and where it can be managed.
1410
+ #
1411
+ # @option params [required, String] :endpoint_name
1412
+ # The name of the multi-region endpoint (global-endpoint).
1413
+ #
1414
+ # @option params [required, Types::Details] :details
1415
+ # Contains details of a multi-region endpoint (global-endpoint) being
1416
+ # created.
1417
+ #
1418
+ # @option params [Array<Types::Tag>] :tags
1419
+ # An array of objects that define the tags (keys and values) to
1420
+ # associate with the multi-region endpoint (global-endpoint).
1421
+ #
1422
+ # @return [Types::CreateMultiRegionEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1423
+ #
1424
+ # * {Types::CreateMultiRegionEndpointResponse#status #status} => String
1425
+ # * {Types::CreateMultiRegionEndpointResponse#endpoint_id #endpoint_id} => String
1426
+ #
1427
+ # @example Request syntax with placeholder values
1428
+ #
1429
+ # resp = client.create_multi_region_endpoint({
1430
+ # endpoint_name: "EndpointName", # required
1431
+ # details: { # required
1432
+ # routes_details: [ # required
1433
+ # {
1434
+ # region: "Region", # required
1435
+ # },
1436
+ # ],
1437
+ # },
1438
+ # tags: [
1439
+ # {
1440
+ # key: "TagKey", # required
1441
+ # value: "TagValue", # required
1442
+ # },
1443
+ # ],
1444
+ # })
1445
+ #
1446
+ # @example Response structure
1447
+ #
1448
+ # resp.status #=> String, one of "CREATING", "READY", "FAILED", "DELETING"
1449
+ # resp.endpoint_id #=> String
1450
+ #
1451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateMultiRegionEndpoint AWS API Documentation
1452
+ #
1453
+ # @overload create_multi_region_endpoint(params = {})
1454
+ # @param [Hash] params ({})
1455
+ def create_multi_region_endpoint(params = {}, options = {})
1456
+ req = build_request(:create_multi_region_endpoint, params)
1457
+ req.send_request(options)
1458
+ end
1459
+
1379
1460
  # Delete an existing configuration set.
1380
1461
  #
1381
1462
  # *Configuration sets* are groups of rules that you can apply to the
@@ -1633,6 +1714,37 @@ module Aws::SESV2
1633
1714
  req.send_request(options)
1634
1715
  end
1635
1716
 
1717
+ # Deletes a multi-region endpoint (global-endpoint).
1718
+ #
1719
+ # Only multi-region endpoints (global-endpoints) whose primary region is
1720
+ # the AWS-Region where operation is executed can be deleted.
1721
+ #
1722
+ # @option params [required, String] :endpoint_name
1723
+ # The name of the multi-region endpoint (global-endpoint) to be deleted.
1724
+ #
1725
+ # @return [Types::DeleteMultiRegionEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1726
+ #
1727
+ # * {Types::DeleteMultiRegionEndpointResponse#status #status} => String
1728
+ #
1729
+ # @example Request syntax with placeholder values
1730
+ #
1731
+ # resp = client.delete_multi_region_endpoint({
1732
+ # endpoint_name: "EndpointName", # required
1733
+ # })
1734
+ #
1735
+ # @example Response structure
1736
+ #
1737
+ # resp.status #=> String, one of "CREATING", "READY", "FAILED", "DELETING"
1738
+ #
1739
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/DeleteMultiRegionEndpoint AWS API Documentation
1740
+ #
1741
+ # @overload delete_multi_region_endpoint(params = {})
1742
+ # @param [Hash] params ({})
1743
+ def delete_multi_region_endpoint(params = {}, options = {})
1744
+ req = build_request(:delete_multi_region_endpoint, params)
1745
+ req.send_request(options)
1746
+ end
1747
+
1636
1748
  # Removes an email address from the suppression list for your account.
1637
1749
  #
1638
1750
  # @option params [required, String] :email_address
@@ -2753,6 +2865,48 @@ module Aws::SESV2
2753
2865
  req.send_request(options)
2754
2866
  end
2755
2867
 
2868
+ # Displays the multi-region endpoint (global-endpoint) configuration.
2869
+ #
2870
+ # Only multi-region endpoints (global-endpoints) whose primary region is
2871
+ # the AWS-Region where operation is executed can be displayed.
2872
+ #
2873
+ # @option params [required, String] :endpoint_name
2874
+ # The name of the multi-region endpoint (global-endpoint).
2875
+ #
2876
+ # @return [Types::GetMultiRegionEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2877
+ #
2878
+ # * {Types::GetMultiRegionEndpointResponse#endpoint_name #endpoint_name} => String
2879
+ # * {Types::GetMultiRegionEndpointResponse#endpoint_id #endpoint_id} => String
2880
+ # * {Types::GetMultiRegionEndpointResponse#routes #routes} => Array&lt;Types::Route&gt;
2881
+ # * {Types::GetMultiRegionEndpointResponse#status #status} => String
2882
+ # * {Types::GetMultiRegionEndpointResponse#created_timestamp #created_timestamp} => Time
2883
+ # * {Types::GetMultiRegionEndpointResponse#last_updated_timestamp #last_updated_timestamp} => Time
2884
+ #
2885
+ # @example Request syntax with placeholder values
2886
+ #
2887
+ # resp = client.get_multi_region_endpoint({
2888
+ # endpoint_name: "EndpointName", # required
2889
+ # })
2890
+ #
2891
+ # @example Response structure
2892
+ #
2893
+ # resp.endpoint_name #=> String
2894
+ # resp.endpoint_id #=> String
2895
+ # resp.routes #=> Array
2896
+ # resp.routes[0].region #=> String
2897
+ # resp.status #=> String, one of "CREATING", "READY", "FAILED", "DELETING"
2898
+ # resp.created_timestamp #=> Time
2899
+ # resp.last_updated_timestamp #=> Time
2900
+ #
2901
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetMultiRegionEndpoint AWS API Documentation
2902
+ #
2903
+ # @overload get_multi_region_endpoint(params = {})
2904
+ # @param [Hash] params ({})
2905
+ def get_multi_region_endpoint(params = {}, options = {})
2906
+ req = build_request(:get_multi_region_endpoint, params)
2907
+ req.send_request(options)
2908
+ end
2909
+
2756
2910
  # Retrieves information about a specific email address that's on the
2757
2911
  # suppression list for your account.
2758
2912
  #
@@ -3411,6 +3565,58 @@ module Aws::SESV2
3411
3565
  req.send_request(options)
3412
3566
  end
3413
3567
 
3568
+ # List the multi-region endpoints (global-endpoints).
3569
+ #
3570
+ # Only multi-region endpoints (global-endpoints) whose primary region is
3571
+ # the AWS-Region where operation is executed will be listed.
3572
+ #
3573
+ # @option params [String] :next_token
3574
+ # A token returned from a previous call to `ListMultiRegionEndpoints` to
3575
+ # indicate the position in the list of multi-region endpoints
3576
+ # (global-endpoints).
3577
+ #
3578
+ # @option params [Integer] :page_size
3579
+ # The number of results to show in a single call to
3580
+ # `ListMultiRegionEndpoints`. If the number of results is larger than
3581
+ # the number you specified in this parameter, the response includes a
3582
+ # `NextToken` element that you can use to retrieve the next page of
3583
+ # results.
3584
+ #
3585
+ # @return [Types::ListMultiRegionEndpointsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3586
+ #
3587
+ # * {Types::ListMultiRegionEndpointsResponse#multi_region_endpoints #multi_region_endpoints} => Array&lt;Types::MultiRegionEndpoint&gt;
3588
+ # * {Types::ListMultiRegionEndpointsResponse#next_token #next_token} => String
3589
+ #
3590
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3591
+ #
3592
+ # @example Request syntax with placeholder values
3593
+ #
3594
+ # resp = client.list_multi_region_endpoints({
3595
+ # next_token: "NextTokenV2",
3596
+ # page_size: 1,
3597
+ # })
3598
+ #
3599
+ # @example Response structure
3600
+ #
3601
+ # resp.multi_region_endpoints #=> Array
3602
+ # resp.multi_region_endpoints[0].endpoint_name #=> String
3603
+ # resp.multi_region_endpoints[0].status #=> String, one of "CREATING", "READY", "FAILED", "DELETING"
3604
+ # resp.multi_region_endpoints[0].endpoint_id #=> String
3605
+ # resp.multi_region_endpoints[0].regions #=> Array
3606
+ # resp.multi_region_endpoints[0].regions[0] #=> String
3607
+ # resp.multi_region_endpoints[0].created_timestamp #=> Time
3608
+ # resp.multi_region_endpoints[0].last_updated_timestamp #=> Time
3609
+ # resp.next_token #=> String
3610
+ #
3611
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListMultiRegionEndpoints AWS API Documentation
3612
+ #
3613
+ # @overload list_multi_region_endpoints(params = {})
3614
+ # @param [Hash] params ({})
3615
+ def list_multi_region_endpoints(params = {}, options = {})
3616
+ req = build_request(:list_multi_region_endpoints, params)
3617
+ req.send_request(options)
3618
+ end
3619
+
3414
3620
  # Lists the recommendations present in your Amazon SES account in the
3415
3621
  # current Amazon Web Services Region.
3416
3622
  #
@@ -3455,7 +3661,7 @@ module Aws::SESV2
3455
3661
  #
3456
3662
  # resp.recommendations #=> Array
3457
3663
  # resp.recommendations[0].resource_arn #=> String
3458
- # resp.recommendations[0].type #=> String, one of "DKIM", "DMARC", "SPF", "BIMI"
3664
+ # resp.recommendations[0].type #=> String, one of "DKIM", "DMARC", "SPF", "BIMI", "COMPLAINT"
3459
3665
  # resp.recommendations[0].description #=> String
3460
3666
  # resp.recommendations[0].status #=> String, one of "OPEN", "FIXED"
3461
3667
  # resp.recommendations[0].created_timestamp #=> Time
@@ -4445,6 +4651,9 @@ module Aws::SESV2
4445
4651
  # @option params [String] :configuration_set_name
4446
4652
  # The name of the configuration set to use when sending the email.
4447
4653
  #
4654
+ # @option params [String] :endpoint_id
4655
+ # The ID of the multi-region endpoint (global-endpoint).
4656
+ #
4448
4657
  # @return [Types::SendBulkEmailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4449
4658
  #
4450
4659
  # * {Types::SendBulkEmailResponse#bulk_email_entry_results #bulk_email_entry_results} => Array&lt;Types::BulkEmailEntryResult&gt;
@@ -4508,6 +4717,7 @@ module Aws::SESV2
4508
4717
  # },
4509
4718
  # ],
4510
4719
  # configuration_set_name: "ConfigurationSetName",
4720
+ # endpoint_id: "EndpointId",
4511
4721
  # })
4512
4722
  #
4513
4723
  # @example Response structure
@@ -4667,6 +4877,9 @@ module Aws::SESV2
4667
4877
  # @option params [String] :configuration_set_name
4668
4878
  # The name of the configuration set to use when sending the email.
4669
4879
  #
4880
+ # @option params [String] :endpoint_id
4881
+ # The ID of the multi-region endpoint (global-endpoint).
4882
+ #
4670
4883
  # @option params [Types::ListManagementOptions] :list_management_options
4671
4884
  # An object used to specify a list or topic to which an email belongs,
4672
4885
  # which will be used when a contact chooses to unsubscribe.
@@ -4738,6 +4951,7 @@ module Aws::SESV2
4738
4951
  # },
4739
4952
  # ],
4740
4953
  # configuration_set_name: "ConfigurationSetName",
4954
+ # endpoint_id: "EndpointId",
4741
4955
  # list_management_options: {
4742
4956
  # contact_list_name: "ContactListName", # required
4743
4957
  # topic_name: "TopicName",
@@ -5202,7 +5416,7 @@ module Aws::SESV2
5202
5416
  tracer: tracer
5203
5417
  )
5204
5418
  context[:gem_name] = 'aws-sdk-sesv2'
5205
- context[:gem_version] = '1.67.0'
5419
+ context[:gem_version] = '1.69.0'
5206
5420
  Seahorse::Client::Request.new(handlers, context)
5207
5421
  end
5208
5422
 
@@ -91,6 +91,8 @@ module Aws::SESV2
91
91
  CreateExportJobResponse = Shapes::StructureShape.new(name: 'CreateExportJobResponse')
92
92
  CreateImportJobRequest = Shapes::StructureShape.new(name: 'CreateImportJobRequest')
93
93
  CreateImportJobResponse = Shapes::StructureShape.new(name: 'CreateImportJobResponse')
94
+ CreateMultiRegionEndpointRequest = Shapes::StructureShape.new(name: 'CreateMultiRegionEndpointRequest')
95
+ CreateMultiRegionEndpointResponse = Shapes::StructureShape.new(name: 'CreateMultiRegionEndpointResponse')
94
96
  CustomRedirectDomain = Shapes::StringShape.new(name: 'CustomRedirectDomain')
95
97
  CustomVerificationEmailTemplateMetadata = Shapes::StructureShape.new(name: 'CustomVerificationEmailTemplateMetadata')
96
98
  CustomVerificationEmailTemplatesList = Shapes::ListShape.new(name: 'CustomVerificationEmailTemplatesList')
@@ -121,6 +123,8 @@ module Aws::SESV2
121
123
  DeleteEmailIdentityResponse = Shapes::StructureShape.new(name: 'DeleteEmailIdentityResponse')
122
124
  DeleteEmailTemplateRequest = Shapes::StructureShape.new(name: 'DeleteEmailTemplateRequest')
123
125
  DeleteEmailTemplateResponse = Shapes::StructureShape.new(name: 'DeleteEmailTemplateResponse')
126
+ DeleteMultiRegionEndpointRequest = Shapes::StructureShape.new(name: 'DeleteMultiRegionEndpointRequest')
127
+ DeleteMultiRegionEndpointResponse = Shapes::StructureShape.new(name: 'DeleteMultiRegionEndpointResponse')
124
128
  DeleteSuppressedDestinationRequest = Shapes::StructureShape.new(name: 'DeleteSuppressedDestinationRequest')
125
129
  DeleteSuppressedDestinationResponse = Shapes::StructureShape.new(name: 'DeleteSuppressedDestinationResponse')
126
130
  DeliverabilityDashboardAccountStatus = Shapes::StringShape.new(name: 'DeliverabilityDashboardAccountStatus')
@@ -132,6 +136,7 @@ module Aws::SESV2
132
136
  DeliveryOptions = Shapes::StructureShape.new(name: 'DeliveryOptions')
133
137
  Description = Shapes::StringShape.new(name: 'Description')
134
138
  Destination = Shapes::StructureShape.new(name: 'Destination')
139
+ Details = Shapes::StructureShape.new(name: 'Details')
135
140
  DiagnosticCode = Shapes::StringShape.new(name: 'DiagnosticCode')
136
141
  DimensionName = Shapes::StringShape.new(name: 'DimensionName')
137
142
  DimensionValueSource = Shapes::StringShape.new(name: 'DimensionValueSource')
@@ -169,6 +174,8 @@ module Aws::SESV2
169
174
  EmailTemplateText = Shapes::StringShape.new(name: 'EmailTemplateText')
170
175
  Enabled = Shapes::BooleanShape.new(name: 'Enabled')
171
176
  EnabledWrapper = Shapes::BooleanShape.new(name: 'EnabledWrapper')
177
+ EndpointId = Shapes::StringShape.new(name: 'EndpointId')
178
+ EndpointName = Shapes::StringShape.new(name: 'EndpointName')
172
179
  EngagementEventType = Shapes::StringShape.new(name: 'EngagementEventType')
173
180
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
174
181
  Esp = Shapes::StringShape.new(name: 'Esp')
@@ -239,6 +246,8 @@ module Aws::SESV2
239
246
  GetImportJobResponse = Shapes::StructureShape.new(name: 'GetImportJobResponse')
240
247
  GetMessageInsightsRequest = Shapes::StructureShape.new(name: 'GetMessageInsightsRequest')
241
248
  GetMessageInsightsResponse = Shapes::StructureShape.new(name: 'GetMessageInsightsResponse')
249
+ GetMultiRegionEndpointRequest = Shapes::StructureShape.new(name: 'GetMultiRegionEndpointRequest')
250
+ GetMultiRegionEndpointResponse = Shapes::StructureShape.new(name: 'GetMultiRegionEndpointResponse')
242
251
  GetSuppressedDestinationRequest = Shapes::StructureShape.new(name: 'GetSuppressedDestinationRequest')
243
252
  GetSuppressedDestinationResponse = Shapes::StructureShape.new(name: 'GetSuppressedDestinationResponse')
244
253
  GuardianAttributes = Shapes::StructureShape.new(name: 'GuardianAttributes')
@@ -299,6 +308,8 @@ module Aws::SESV2
299
308
  ListImportJobsRequest = Shapes::StructureShape.new(name: 'ListImportJobsRequest')
300
309
  ListImportJobsResponse = Shapes::StructureShape.new(name: 'ListImportJobsResponse')
301
310
  ListManagementOptions = Shapes::StructureShape.new(name: 'ListManagementOptions')
311
+ ListMultiRegionEndpointsRequest = Shapes::StructureShape.new(name: 'ListMultiRegionEndpointsRequest')
312
+ ListMultiRegionEndpointsResponse = Shapes::StructureShape.new(name: 'ListMultiRegionEndpointsResponse')
302
313
  ListOfContactLists = Shapes::ListShape.new(name: 'ListOfContactLists')
303
314
  ListOfContacts = Shapes::ListShape.new(name: 'ListOfContacts')
304
315
  ListOfDedicatedIpPools = Shapes::ListShape.new(name: 'ListOfDedicatedIpPools')
@@ -346,10 +357,14 @@ module Aws::SESV2
346
357
  MetricNamespace = Shapes::StringShape.new(name: 'MetricNamespace')
347
358
  MetricValueList = Shapes::ListShape.new(name: 'MetricValueList')
348
359
  MetricsDataSource = Shapes::StructureShape.new(name: 'MetricsDataSource')
360
+ MultiRegionEndpoint = Shapes::StructureShape.new(name: 'MultiRegionEndpoint')
361
+ MultiRegionEndpoints = Shapes::ListShape.new(name: 'MultiRegionEndpoints')
349
362
  NextToken = Shapes::StringShape.new(name: 'NextToken')
363
+ NextTokenV2 = Shapes::StringShape.new(name: 'NextTokenV2')
350
364
  NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
351
365
  OutboundMessageId = Shapes::StringShape.new(name: 'OutboundMessageId')
352
366
  OverallVolume = Shapes::StructureShape.new(name: 'OverallVolume')
367
+ PageSizeV2 = Shapes::IntegerShape.new(name: 'PageSizeV2')
353
368
  Percentage = Shapes::FloatShape.new(name: 'Percentage')
354
369
  Percentage100Wrapper = Shapes::IntegerShape.new(name: 'Percentage100Wrapper')
355
370
  PinpointDestination = Shapes::StructureShape.new(name: 'PinpointDestination')
@@ -415,6 +430,8 @@ module Aws::SESV2
415
430
  RecommendationStatus = Shapes::StringShape.new(name: 'RecommendationStatus')
416
431
  RecommendationType = Shapes::StringShape.new(name: 'RecommendationType')
417
432
  RecommendationsList = Shapes::ListShape.new(name: 'RecommendationsList')
433
+ Region = Shapes::StringShape.new(name: 'Region')
434
+ Regions = Shapes::ListShape.new(name: 'Regions')
418
435
  RenderedEmailTemplate = Shapes::StringShape.new(name: 'RenderedEmailTemplate')
419
436
  ReplacementEmailContent = Shapes::StructureShape.new(name: 'ReplacementEmailContent')
420
437
  ReplacementTemplate = Shapes::StructureShape.new(name: 'ReplacementTemplate')
@@ -423,6 +440,10 @@ module Aws::SESV2
423
440
  ReputationOptions = Shapes::StructureShape.new(name: 'ReputationOptions')
424
441
  ReviewDetails = Shapes::StructureShape.new(name: 'ReviewDetails')
425
442
  ReviewStatus = Shapes::StringShape.new(name: 'ReviewStatus')
443
+ Route = Shapes::StructureShape.new(name: 'Route')
444
+ RouteDetails = Shapes::StructureShape.new(name: 'RouteDetails')
445
+ Routes = Shapes::ListShape.new(name: 'Routes')
446
+ RoutesDetails = Shapes::ListShape.new(name: 'RoutesDetails')
426
447
  S3Url = Shapes::StringShape.new(name: 'S3Url')
427
448
  SOARecord = Shapes::StructureShape.new(name: 'SOARecord')
428
449
  ScalingMode = Shapes::StringShape.new(name: 'ScalingMode')
@@ -440,6 +461,7 @@ module Aws::SESV2
440
461
  SentLast24Hours = Shapes::FloatShape.new(name: 'SentLast24Hours')
441
462
  SerialNumber = Shapes::IntegerShape.new(name: 'SerialNumber')
442
463
  SnsDestination = Shapes::StructureShape.new(name: 'SnsDestination')
464
+ Status = Shapes::StringShape.new(name: 'Status')
443
465
  Subject = Shapes::StringShape.new(name: 'Subject')
444
466
  SubscriptionStatus = Shapes::StringShape.new(name: 'SubscriptionStatus')
445
467
  SuccessRedirectionURL = Shapes::StringShape.new(name: 'SuccessRedirectionURL')
@@ -719,6 +741,15 @@ module Aws::SESV2
719
741
  CreateImportJobResponse.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "JobId"))
720
742
  CreateImportJobResponse.struct_class = Types::CreateImportJobResponse
721
743
 
744
+ CreateMultiRegionEndpointRequest.add_member(:endpoint_name, Shapes::ShapeRef.new(shape: EndpointName, required: true, location_name: "EndpointName"))
745
+ CreateMultiRegionEndpointRequest.add_member(:details, Shapes::ShapeRef.new(shape: Details, required: true, location_name: "Details"))
746
+ CreateMultiRegionEndpointRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
747
+ CreateMultiRegionEndpointRequest.struct_class = Types::CreateMultiRegionEndpointRequest
748
+
749
+ CreateMultiRegionEndpointResponse.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "Status"))
750
+ CreateMultiRegionEndpointResponse.add_member(:endpoint_id, Shapes::ShapeRef.new(shape: EndpointId, location_name: "EndpointId"))
751
+ CreateMultiRegionEndpointResponse.struct_class = Types::CreateMultiRegionEndpointResponse
752
+
722
753
  CustomVerificationEmailTemplateMetadata.add_member(:template_name, Shapes::ShapeRef.new(shape: EmailTemplateName, location_name: "TemplateName"))
723
754
  CustomVerificationEmailTemplateMetadata.add_member(:from_email_address, Shapes::ShapeRef.new(shape: EmailAddress, location_name: "FromEmailAddress"))
724
755
  CustomVerificationEmailTemplateMetadata.add_member(:template_subject, Shapes::ShapeRef.new(shape: EmailTemplateSubject, location_name: "TemplateSubject"))
@@ -801,6 +832,12 @@ module Aws::SESV2
801
832
 
802
833
  DeleteEmailTemplateResponse.struct_class = Types::DeleteEmailTemplateResponse
803
834
 
835
+ DeleteMultiRegionEndpointRequest.add_member(:endpoint_name, Shapes::ShapeRef.new(shape: EndpointName, required: true, location: "uri", location_name: "EndpointName"))
836
+ DeleteMultiRegionEndpointRequest.struct_class = Types::DeleteMultiRegionEndpointRequest
837
+
838
+ DeleteMultiRegionEndpointResponse.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "Status"))
839
+ DeleteMultiRegionEndpointResponse.struct_class = Types::DeleteMultiRegionEndpointResponse
840
+
804
841
  DeleteSuppressedDestinationRequest.add_member(:email_address, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location: "uri", location_name: "EmailAddress"))
805
842
  DeleteSuppressedDestinationRequest.struct_class = Types::DeleteSuppressedDestinationRequest
806
843
 
@@ -826,6 +863,9 @@ module Aws::SESV2
826
863
  Destination.add_member(:bcc_addresses, Shapes::ShapeRef.new(shape: EmailAddressList, location_name: "BccAddresses"))
827
864
  Destination.struct_class = Types::Destination
828
865
 
866
+ Details.add_member(:routes_details, Shapes::ShapeRef.new(shape: RoutesDetails, required: true, location_name: "RoutesDetails"))
867
+ Details.struct_class = Types::Details
868
+
829
869
  Dimensions.key = Shapes::ShapeRef.new(shape: MetricDimensionName)
830
870
  Dimensions.value = Shapes::ShapeRef.new(shape: MetricDimensionValue)
831
871
 
@@ -1171,6 +1211,17 @@ module Aws::SESV2
1171
1211
  GetMessageInsightsResponse.add_member(:insights, Shapes::ShapeRef.new(shape: EmailInsightsList, location_name: "Insights"))
1172
1212
  GetMessageInsightsResponse.struct_class = Types::GetMessageInsightsResponse
1173
1213
 
1214
+ GetMultiRegionEndpointRequest.add_member(:endpoint_name, Shapes::ShapeRef.new(shape: EndpointName, required: true, location: "uri", location_name: "EndpointName"))
1215
+ GetMultiRegionEndpointRequest.struct_class = Types::GetMultiRegionEndpointRequest
1216
+
1217
+ GetMultiRegionEndpointResponse.add_member(:endpoint_name, Shapes::ShapeRef.new(shape: EndpointName, location_name: "EndpointName"))
1218
+ GetMultiRegionEndpointResponse.add_member(:endpoint_id, Shapes::ShapeRef.new(shape: EndpointId, location_name: "EndpointId"))
1219
+ GetMultiRegionEndpointResponse.add_member(:routes, Shapes::ShapeRef.new(shape: Routes, location_name: "Routes"))
1220
+ GetMultiRegionEndpointResponse.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "Status"))
1221
+ GetMultiRegionEndpointResponse.add_member(:created_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedTimestamp"))
1222
+ GetMultiRegionEndpointResponse.add_member(:last_updated_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastUpdatedTimestamp"))
1223
+ GetMultiRegionEndpointResponse.struct_class = Types::GetMultiRegionEndpointResponse
1224
+
1174
1225
  GetSuppressedDestinationRequest.add_member(:email_address, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location: "uri", location_name: "EmailAddress"))
1175
1226
  GetSuppressedDestinationRequest.struct_class = Types::GetSuppressedDestinationRequest
1176
1227
 
@@ -1350,6 +1401,14 @@ module Aws::SESV2
1350
1401
  ListManagementOptions.add_member(:topic_name, Shapes::ShapeRef.new(shape: TopicName, location_name: "TopicName"))
1351
1402
  ListManagementOptions.struct_class = Types::ListManagementOptions
1352
1403
 
1404
+ ListMultiRegionEndpointsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextTokenV2, location: "querystring", location_name: "NextToken"))
1405
+ ListMultiRegionEndpointsRequest.add_member(:page_size, Shapes::ShapeRef.new(shape: PageSizeV2, location: "querystring", location_name: "PageSize"))
1406
+ ListMultiRegionEndpointsRequest.struct_class = Types::ListMultiRegionEndpointsRequest
1407
+
1408
+ ListMultiRegionEndpointsResponse.add_member(:multi_region_endpoints, Shapes::ShapeRef.new(shape: MultiRegionEndpoints, location_name: "MultiRegionEndpoints"))
1409
+ ListMultiRegionEndpointsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextTokenV2, location_name: "NextToken"))
1410
+ ListMultiRegionEndpointsResponse.struct_class = Types::ListMultiRegionEndpointsResponse
1411
+
1353
1412
  ListOfContactLists.member = Shapes::ShapeRef.new(shape: ContactList)
1354
1413
 
1355
1414
  ListOfContacts.member = Shapes::ShapeRef.new(shape: Contact)
@@ -1449,6 +1508,16 @@ module Aws::SESV2
1449
1508
  MetricsDataSource.add_member(:end_date, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "EndDate"))
1450
1509
  MetricsDataSource.struct_class = Types::MetricsDataSource
1451
1510
 
1511
+ MultiRegionEndpoint.add_member(:endpoint_name, Shapes::ShapeRef.new(shape: EndpointName, location_name: "EndpointName"))
1512
+ MultiRegionEndpoint.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "Status"))
1513
+ MultiRegionEndpoint.add_member(:endpoint_id, Shapes::ShapeRef.new(shape: EndpointId, location_name: "EndpointId"))
1514
+ MultiRegionEndpoint.add_member(:regions, Shapes::ShapeRef.new(shape: Regions, location_name: "Regions"))
1515
+ MultiRegionEndpoint.add_member(:created_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedTimestamp"))
1516
+ MultiRegionEndpoint.add_member(:last_updated_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastUpdatedTimestamp"))
1517
+ MultiRegionEndpoint.struct_class = Types::MultiRegionEndpoint
1518
+
1519
+ MultiRegionEndpoints.member = Shapes::ShapeRef.new(shape: MultiRegionEndpoint)
1520
+
1452
1521
  NotFoundException.struct_class = Types::NotFoundException
1453
1522
 
1454
1523
  OverallVolume.add_member(:volume_statistics, Shapes::ShapeRef.new(shape: VolumeStatistics, location_name: "VolumeStatistics"))
@@ -1616,6 +1685,8 @@ module Aws::SESV2
1616
1685
 
1617
1686
  RecommendationsList.member = Shapes::ShapeRef.new(shape: Recommendation)
1618
1687
 
1688
+ Regions.member = Shapes::ShapeRef.new(shape: Region)
1689
+
1619
1690
  ReplacementEmailContent.add_member(:replacement_template, Shapes::ShapeRef.new(shape: ReplacementTemplate, location_name: "ReplacementTemplate"))
1620
1691
  ReplacementEmailContent.struct_class = Types::ReplacementEmailContent
1621
1692
 
@@ -1630,6 +1701,16 @@ module Aws::SESV2
1630
1701
  ReviewDetails.add_member(:case_id, Shapes::ShapeRef.new(shape: CaseId, location_name: "CaseId"))
1631
1702
  ReviewDetails.struct_class = Types::ReviewDetails
1632
1703
 
1704
+ Route.add_member(:region, Shapes::ShapeRef.new(shape: Region, required: true, location_name: "Region"))
1705
+ Route.struct_class = Types::Route
1706
+
1707
+ RouteDetails.add_member(:region, Shapes::ShapeRef.new(shape: Region, required: true, location_name: "Region"))
1708
+ RouteDetails.struct_class = Types::RouteDetails
1709
+
1710
+ Routes.member = Shapes::ShapeRef.new(shape: Route)
1711
+
1712
+ RoutesDetails.member = Shapes::ShapeRef.new(shape: RouteDetails)
1713
+
1633
1714
  SOARecord.add_member(:primary_name_server, Shapes::ShapeRef.new(shape: PrimaryNameServer, location_name: "PrimaryNameServer"))
1634
1715
  SOARecord.add_member(:admin_email, Shapes::ShapeRef.new(shape: AdminEmail, location_name: "AdminEmail"))
1635
1716
  SOARecord.add_member(:serial_number, Shapes::ShapeRef.new(shape: SerialNumber, location_name: "SerialNumber"))
@@ -1644,6 +1725,7 @@ module Aws::SESV2
1644
1725
  SendBulkEmailRequest.add_member(:default_content, Shapes::ShapeRef.new(shape: BulkEmailContent, required: true, location_name: "DefaultContent"))
1645
1726
  SendBulkEmailRequest.add_member(:bulk_email_entries, Shapes::ShapeRef.new(shape: BulkEmailEntryList, required: true, location_name: "BulkEmailEntries"))
1646
1727
  SendBulkEmailRequest.add_member(:configuration_set_name, Shapes::ShapeRef.new(shape: ConfigurationSetName, location_name: "ConfigurationSetName"))
1728
+ SendBulkEmailRequest.add_member(:endpoint_id, Shapes::ShapeRef.new(shape: EndpointId, location_name: "EndpointId", metadata: {"contextParam"=>{"name"=>"EndpointId"}}))
1647
1729
  SendBulkEmailRequest.struct_class = Types::SendBulkEmailRequest
1648
1730
 
1649
1731
  SendBulkEmailResponse.add_member(:bulk_email_entry_results, Shapes::ShapeRef.new(shape: BulkEmailEntryResultList, required: true, location_name: "BulkEmailEntryResults"))
@@ -1666,6 +1748,7 @@ module Aws::SESV2
1666
1748
  SendEmailRequest.add_member(:content, Shapes::ShapeRef.new(shape: EmailContent, required: true, location_name: "Content"))
1667
1749
  SendEmailRequest.add_member(:email_tags, Shapes::ShapeRef.new(shape: MessageTagList, location_name: "EmailTags"))
1668
1750
  SendEmailRequest.add_member(:configuration_set_name, Shapes::ShapeRef.new(shape: ConfigurationSetName, location_name: "ConfigurationSetName"))
1751
+ SendEmailRequest.add_member(:endpoint_id, Shapes::ShapeRef.new(shape: EndpointId, location_name: "EndpointId", metadata: {"contextParam"=>{"name"=>"EndpointId"}}))
1669
1752
  SendEmailRequest.add_member(:list_management_options, Shapes::ShapeRef.new(shape: ListManagementOptions, location_name: "ListManagementOptions"))
1670
1753
  SendEmailRequest.struct_class = Types::SendEmailRequest
1671
1754
 
@@ -2040,6 +2123,18 @@ module Aws::SESV2
2040
2123
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2041
2124
  end)
2042
2125
 
2126
+ api.add_operation(:create_multi_region_endpoint, Seahorse::Model::Operation.new.tap do |o|
2127
+ o.name = "CreateMultiRegionEndpoint"
2128
+ o.http_method = "POST"
2129
+ o.http_request_uri = "/v2/email/multi-region-endpoints"
2130
+ o.input = Shapes::ShapeRef.new(shape: CreateMultiRegionEndpointRequest)
2131
+ o.output = Shapes::ShapeRef.new(shape: CreateMultiRegionEndpointResponse)
2132
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
2133
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2134
+ o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
2135
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2136
+ end)
2137
+
2043
2138
  api.add_operation(:delete_configuration_set, Seahorse::Model::Operation.new.tap do |o|
2044
2139
  o.name = "DeleteConfigurationSet"
2045
2140
  o.http_method = "DELETE"
@@ -2143,6 +2238,18 @@ module Aws::SESV2
2143
2238
  o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2144
2239
  end)
2145
2240
 
2241
+ api.add_operation(:delete_multi_region_endpoint, Seahorse::Model::Operation.new.tap do |o|
2242
+ o.name = "DeleteMultiRegionEndpoint"
2243
+ o.http_method = "DELETE"
2244
+ o.http_request_uri = "/v2/email/multi-region-endpoints/{EndpointName}"
2245
+ o.input = Shapes::ShapeRef.new(shape: DeleteMultiRegionEndpointRequest)
2246
+ o.output = Shapes::ShapeRef.new(shape: DeleteMultiRegionEndpointResponse)
2247
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
2248
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2249
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2250
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
2251
+ end)
2252
+
2146
2253
  api.add_operation(:delete_suppressed_destination, Seahorse::Model::Operation.new.tap do |o|
2147
2254
  o.name = "DeleteSuppressedDestination"
2148
2255
  o.http_method = "DELETE"
@@ -2379,6 +2486,17 @@ module Aws::SESV2
2379
2486
  o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2380
2487
  end)
2381
2488
 
2489
+ api.add_operation(:get_multi_region_endpoint, Seahorse::Model::Operation.new.tap do |o|
2490
+ o.name = "GetMultiRegionEndpoint"
2491
+ o.http_method = "GET"
2492
+ o.http_request_uri = "/v2/email/multi-region-endpoints/{EndpointName}"
2493
+ o.input = Shapes::ShapeRef.new(shape: GetMultiRegionEndpointRequest)
2494
+ o.output = Shapes::ShapeRef.new(shape: GetMultiRegionEndpointResponse)
2495
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
2496
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2497
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2498
+ end)
2499
+
2382
2500
  api.add_operation(:get_suppressed_destination, Seahorse::Model::Operation.new.tap do |o|
2383
2501
  o.name = "GetSuppressedDestination"
2384
2502
  o.http_method = "GET"
@@ -2569,6 +2687,22 @@ module Aws::SESV2
2569
2687
  )
2570
2688
  end)
2571
2689
 
2690
+ api.add_operation(:list_multi_region_endpoints, Seahorse::Model::Operation.new.tap do |o|
2691
+ o.name = "ListMultiRegionEndpoints"
2692
+ o.http_method = "GET"
2693
+ o.http_request_uri = "/v2/email/multi-region-endpoints"
2694
+ o.input = Shapes::ShapeRef.new(shape: ListMultiRegionEndpointsRequest)
2695
+ o.output = Shapes::ShapeRef.new(shape: ListMultiRegionEndpointsResponse)
2696
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2697
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2698
+ o[:pager] = Aws::Pager.new(
2699
+ limit_key: "page_size",
2700
+ tokens: {
2701
+ "next_token" => "next_token"
2702
+ }
2703
+ )
2704
+ end)
2705
+
2572
2706
  api.add_operation(:list_recommendations, Seahorse::Model::Operation.new.tap do |o|
2573
2707
  o.name = "ListRecommendations"
2574
2708
  o.http_method = "POST"
@@ -30,11 +30,17 @@ module Aws::SESV2
30
30
  #
31
31
  # @return [String]
32
32
  #
33
+ # @!attribute endpoint_id
34
+ # Operation parameter for EndpointId
35
+ #
36
+ # @return [String]
37
+ #
33
38
  EndpointParameters = Struct.new(
34
39
  :region,
35
40
  :use_dual_stack,
36
41
  :use_fips,
37
42
  :endpoint,
43
+ :endpoint_id,
38
44
  ) do
39
45
  include Aws::Structure
40
46
 
@@ -45,6 +51,7 @@ module Aws::SESV2
45
51
  'UseDualStack' => :use_dual_stack,
46
52
  'UseFIPS' => :use_fips,
47
53
  'Endpoint' => :endpoint,
54
+ 'EndpointId' => :endpoint_id,
48
55
  }.freeze
49
56
  end
50
57
 
@@ -55,6 +62,7 @@ module Aws::SESV2
55
62
  self[:use_fips] = options[:use_fips]
56
63
  self[:use_fips] = false if self[:use_fips].nil?
57
64
  self[:endpoint] = options[:endpoint]
65
+ self[:endpoint_id] = options[:endpoint_id]
58
66
  end
59
67
 
60
68
  def self.create(config, options={})