aws-sdk-sesv2 1.9.0 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -407,6 +407,96 @@ module Aws::SESV2
407
407
  #
408
408
  class ConflictException < Aws::EmptyStructure; end
409
409
 
410
+ # A contact is the end-user who is receiving the email.
411
+ #
412
+ # @!attribute [rw] email_address
413
+ # The contact's email address.
414
+ # @return [String]
415
+ #
416
+ # @!attribute [rw] topic_preferences
417
+ # The contact's preference for being opted-in to or opted-out of a
418
+ # topic.
419
+ # @return [Array<Types::TopicPreference>]
420
+ #
421
+ # @!attribute [rw] topic_default_preferences
422
+ # The default topic preferences applied to the contact.
423
+ # @return [Array<Types::TopicPreference>]
424
+ #
425
+ # @!attribute [rw] unsubscribe_all
426
+ # A boolean value status noting if the contact is unsubscribed from
427
+ # all contact list topics.
428
+ # @return [Boolean]
429
+ #
430
+ # @!attribute [rw] last_updated_timestamp
431
+ # A timestamp noting the last time the contact's information was
432
+ # updated.
433
+ # @return [Time]
434
+ #
435
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/Contact AWS API Documentation
436
+ #
437
+ class Contact < Struct.new(
438
+ :email_address,
439
+ :topic_preferences,
440
+ :topic_default_preferences,
441
+ :unsubscribe_all,
442
+ :last_updated_timestamp)
443
+ SENSITIVE = []
444
+ include Aws::Structure
445
+ end
446
+
447
+ # A list that contains contacts that have subscribed to a particular
448
+ # topic or topics.
449
+ #
450
+ # @!attribute [rw] contact_list_name
451
+ # The name of the contact list.
452
+ # @return [String]
453
+ #
454
+ # @!attribute [rw] last_updated_timestamp
455
+ # A timestamp noting the last time the contact list was updated.
456
+ # @return [Time]
457
+ #
458
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ContactList AWS API Documentation
459
+ #
460
+ class ContactList < Struct.new(
461
+ :contact_list_name,
462
+ :last_updated_timestamp)
463
+ SENSITIVE = []
464
+ include Aws::Structure
465
+ end
466
+
467
+ # An object that contains details about the action of a contact list.
468
+ #
469
+ # @note When making an API call, you may pass ContactListDestination
470
+ # data as a hash:
471
+ #
472
+ # {
473
+ # contact_list_name: "ContactListName", # required
474
+ # contact_list_import_action: "DELETE", # required, accepts DELETE, PUT
475
+ # }
476
+ #
477
+ # @!attribute [rw] contact_list_name
478
+ # The name of the contact list.
479
+ # @return [String]
480
+ #
481
+ # @!attribute [rw] contact_list_import_action
482
+ # &gt;The type of action that you want to perform on the addresses.
483
+ # Acceptable values:
484
+ #
485
+ # * PUT: add the addresses to the contact list. If the record already
486
+ # exists, it will override it with the new value.
487
+ #
488
+ # * DELETE: remove the addresses from the contact list.
489
+ # @return [String]
490
+ #
491
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ContactListDestination AWS API Documentation
492
+ #
493
+ class ContactListDestination < Struct.new(
494
+ :contact_list_name,
495
+ :contact_list_import_action)
496
+ SENSITIVE = []
497
+ include Aws::Structure
498
+ end
499
+
410
500
  # An object that represents the content of the email, and optionally a
411
501
  # character set specification.
412
502
  #
@@ -449,7 +539,7 @@ module Aws::SESV2
449
539
  # event_destination_name: "EventDestinationName", # required
450
540
  # event_destination: { # required
451
541
  # enabled: false,
452
- # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY
542
+ # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY, SUBSCRIPTION
453
543
  # kinesis_firehose_destination: {
454
544
  # iam_role_arn: "AmazonResourceName", # required
455
545
  # delivery_stream_arn: "AmazonResourceName", # required
@@ -590,6 +680,114 @@ module Aws::SESV2
590
680
  #
591
681
  class CreateConfigurationSetResponse < Aws::EmptyStructure; end
592
682
 
683
+ # @note When making an API call, you may pass CreateContactListRequest
684
+ # data as a hash:
685
+ #
686
+ # {
687
+ # contact_list_name: "ContactListName", # required
688
+ # topics: [
689
+ # {
690
+ # topic_name: "TopicName", # required
691
+ # display_name: "DisplayName", # required
692
+ # description: "Description",
693
+ # default_subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
694
+ # },
695
+ # ],
696
+ # description: "Description",
697
+ # tags: [
698
+ # {
699
+ # key: "TagKey", # required
700
+ # value: "TagValue", # required
701
+ # },
702
+ # ],
703
+ # }
704
+ #
705
+ # @!attribute [rw] contact_list_name
706
+ # The name of the contact list.
707
+ # @return [String]
708
+ #
709
+ # @!attribute [rw] topics
710
+ # An interest group, theme, or label within a list. A contact list can
711
+ # have multiple topics.
712
+ # @return [Array<Types::Topic>]
713
+ #
714
+ # @!attribute [rw] description
715
+ # A description of what the contact list is about.
716
+ # @return [String]
717
+ #
718
+ # @!attribute [rw] tags
719
+ # The tags associated with a contact list.
720
+ # @return [Array<Types::Tag>]
721
+ #
722
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateContactListRequest AWS API Documentation
723
+ #
724
+ class CreateContactListRequest < Struct.new(
725
+ :contact_list_name,
726
+ :topics,
727
+ :description,
728
+ :tags)
729
+ SENSITIVE = []
730
+ include Aws::Structure
731
+ end
732
+
733
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateContactListResponse AWS API Documentation
734
+ #
735
+ class CreateContactListResponse < Aws::EmptyStructure; end
736
+
737
+ # @note When making an API call, you may pass CreateContactRequest
738
+ # data as a hash:
739
+ #
740
+ # {
741
+ # contact_list_name: "ContactListName", # required
742
+ # email_address: "EmailAddress", # required
743
+ # topic_preferences: [
744
+ # {
745
+ # topic_name: "TopicName", # required
746
+ # subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
747
+ # },
748
+ # ],
749
+ # unsubscribe_all: false,
750
+ # attributes_data: "AttributesData",
751
+ # }
752
+ #
753
+ # @!attribute [rw] contact_list_name
754
+ # The name of the contact list to which the contact should be added.
755
+ # @return [String]
756
+ #
757
+ # @!attribute [rw] email_address
758
+ # The contact's email address.
759
+ # @return [String]
760
+ #
761
+ # @!attribute [rw] topic_preferences
762
+ # The contact's preferences for being opted-in to or opted-out of
763
+ # topics.
764
+ # @return [Array<Types::TopicPreference>]
765
+ #
766
+ # @!attribute [rw] unsubscribe_all
767
+ # A boolean value status noting if the contact is unsubscribed from
768
+ # all contact list topics.
769
+ # @return [Boolean]
770
+ #
771
+ # @!attribute [rw] attributes_data
772
+ # The attribute data attached to a contact.
773
+ # @return [String]
774
+ #
775
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateContactRequest AWS API Documentation
776
+ #
777
+ class CreateContactRequest < Struct.new(
778
+ :contact_list_name,
779
+ :email_address,
780
+ :topic_preferences,
781
+ :unsubscribe_all,
782
+ :attributes_data)
783
+ SENSITIVE = []
784
+ include Aws::Structure
785
+ end
786
+
787
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateContactResponse AWS API Documentation
788
+ #
789
+ class CreateContactResponse < Aws::EmptyStructure; end
790
+
593
791
  # Represents a request to create a custom verification email template.
594
792
  #
595
793
  # @note When making an API call, you may pass CreateCustomVerificationEmailTemplateRequest
@@ -994,6 +1192,60 @@ module Aws::SESV2
994
1192
  #
995
1193
  class CreateEmailTemplateResponse < Aws::EmptyStructure; end
996
1194
 
1195
+ # Represents a request to create an import job from a data source for a
1196
+ # data destination.
1197
+ #
1198
+ # @note When making an API call, you may pass CreateImportJobRequest
1199
+ # data as a hash:
1200
+ #
1201
+ # {
1202
+ # import_destination: { # required
1203
+ # suppression_list_destination: {
1204
+ # suppression_list_import_action: "DELETE", # required, accepts DELETE, PUT
1205
+ # },
1206
+ # contact_list_destination: {
1207
+ # contact_list_name: "ContactListName", # required
1208
+ # contact_list_import_action: "DELETE", # required, accepts DELETE, PUT
1209
+ # },
1210
+ # },
1211
+ # import_data_source: { # required
1212
+ # s3_url: "S3Url", # required
1213
+ # data_format: "CSV", # required, accepts CSV, JSON
1214
+ # },
1215
+ # }
1216
+ #
1217
+ # @!attribute [rw] import_destination
1218
+ # The destination for the import job.
1219
+ # @return [Types::ImportDestination]
1220
+ #
1221
+ # @!attribute [rw] import_data_source
1222
+ # The data source for the import job.
1223
+ # @return [Types::ImportDataSource]
1224
+ #
1225
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateImportJobRequest AWS API Documentation
1226
+ #
1227
+ class CreateImportJobRequest < Struct.new(
1228
+ :import_destination,
1229
+ :import_data_source)
1230
+ SENSITIVE = []
1231
+ include Aws::Structure
1232
+ end
1233
+
1234
+ # An HTTP 200 response if the request succeeds, or an error message if
1235
+ # the request fails.
1236
+ #
1237
+ # @!attribute [rw] job_id
1238
+ # A string that represents the import job ID.
1239
+ # @return [String]
1240
+ #
1241
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateImportJobResponse AWS API Documentation
1242
+ #
1243
+ class CreateImportJobResponse < Struct.new(
1244
+ :job_id)
1245
+ SENSITIVE = []
1246
+ include Aws::Structure
1247
+ end
1248
+
997
1249
  # Contains information about a custom verification email template.
998
1250
  #
999
1251
  # @!attribute [rw] template_name
@@ -1169,6 +1421,59 @@ module Aws::SESV2
1169
1421
  #
1170
1422
  class DeleteConfigurationSetResponse < Aws::EmptyStructure; end
1171
1423
 
1424
+ # @note When making an API call, you may pass DeleteContactListRequest
1425
+ # data as a hash:
1426
+ #
1427
+ # {
1428
+ # contact_list_name: "ContactListName", # required
1429
+ # }
1430
+ #
1431
+ # @!attribute [rw] contact_list_name
1432
+ # The name of the contact list.
1433
+ # @return [String]
1434
+ #
1435
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/DeleteContactListRequest AWS API Documentation
1436
+ #
1437
+ class DeleteContactListRequest < Struct.new(
1438
+ :contact_list_name)
1439
+ SENSITIVE = []
1440
+ include Aws::Structure
1441
+ end
1442
+
1443
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/DeleteContactListResponse AWS API Documentation
1444
+ #
1445
+ class DeleteContactListResponse < Aws::EmptyStructure; end
1446
+
1447
+ # @note When making an API call, you may pass DeleteContactRequest
1448
+ # data as a hash:
1449
+ #
1450
+ # {
1451
+ # contact_list_name: "ContactListName", # required
1452
+ # email_address: "EmailAddress", # required
1453
+ # }
1454
+ #
1455
+ # @!attribute [rw] contact_list_name
1456
+ # The name of the contact list from which the contact should be
1457
+ # removed.
1458
+ # @return [String]
1459
+ #
1460
+ # @!attribute [rw] email_address
1461
+ # The contact's email address.
1462
+ # @return [String]
1463
+ #
1464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/DeleteContactRequest AWS API Documentation
1465
+ #
1466
+ class DeleteContactRequest < Struct.new(
1467
+ :contact_list_name,
1468
+ :email_address)
1469
+ SENSITIVE = []
1470
+ include Aws::Structure
1471
+ end
1472
+
1473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/DeleteContactResponse AWS API Documentation
1474
+ #
1475
+ class DeleteContactResponse < Aws::EmptyStructure; end
1476
+
1172
1477
  # Represents a request to delete an existing custom verification email
1173
1478
  # template.
1174
1479
  #
@@ -2017,7 +2322,7 @@ module Aws::SESV2
2017
2322
  #
2018
2323
  # {
2019
2324
  # enabled: false,
2020
- # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY
2325
+ # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY, SUBSCRIPTION
2021
2326
  # kinesis_firehose_destination: {
2022
2327
  # iam_role_arn: "AmazonResourceName", # required
2023
2328
  # delivery_stream_arn: "AmazonResourceName", # required
@@ -2098,6 +2403,26 @@ module Aws::SESV2
2098
2403
  include Aws::Structure
2099
2404
  end
2100
2405
 
2406
+ # An object that contains the failure details about an import job.
2407
+ #
2408
+ # @!attribute [rw] failed_records_s3_url
2409
+ # An Amazon S3 presigned URL that contains all the failed records and
2410
+ # related information.
2411
+ # @return [String]
2412
+ #
2413
+ # @!attribute [rw] error_message
2414
+ # A message about why the import job failed.
2415
+ # @return [String]
2416
+ #
2417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/FailureInfo AWS API Documentation
2418
+ #
2419
+ class FailureInfo < Struct.new(
2420
+ :failed_records_s3_url,
2421
+ :error_message)
2422
+ SENSITIVE = []
2423
+ include Aws::Structure
2424
+ end
2425
+
2101
2426
  # A request to obtain information about the email-sending capabilities
2102
2427
  # of your Amazon SES account.
2103
2428
  #
@@ -2332,6 +2657,138 @@ module Aws::SESV2
2332
2657
  include Aws::Structure
2333
2658
  end
2334
2659
 
2660
+ # @note When making an API call, you may pass GetContactListRequest
2661
+ # data as a hash:
2662
+ #
2663
+ # {
2664
+ # contact_list_name: "ContactListName", # required
2665
+ # }
2666
+ #
2667
+ # @!attribute [rw] contact_list_name
2668
+ # The name of the contact list.
2669
+ # @return [String]
2670
+ #
2671
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetContactListRequest AWS API Documentation
2672
+ #
2673
+ class GetContactListRequest < Struct.new(
2674
+ :contact_list_name)
2675
+ SENSITIVE = []
2676
+ include Aws::Structure
2677
+ end
2678
+
2679
+ # @!attribute [rw] contact_list_name
2680
+ # The name of the contact list.
2681
+ # @return [String]
2682
+ #
2683
+ # @!attribute [rw] topics
2684
+ # An interest group, theme, or label within a list. A contact list can
2685
+ # have multiple topics.
2686
+ # @return [Array<Types::Topic>]
2687
+ #
2688
+ # @!attribute [rw] description
2689
+ # A description of what the contact list is about.
2690
+ # @return [String]
2691
+ #
2692
+ # @!attribute [rw] created_timestamp
2693
+ # A timestamp noting when the contact list was created.
2694
+ # @return [Time]
2695
+ #
2696
+ # @!attribute [rw] last_updated_timestamp
2697
+ # A timestamp noting the last time the contact list was updated.
2698
+ # @return [Time]
2699
+ #
2700
+ # @!attribute [rw] tags
2701
+ # The tags associated with a contact list.
2702
+ # @return [Array<Types::Tag>]
2703
+ #
2704
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetContactListResponse AWS API Documentation
2705
+ #
2706
+ class GetContactListResponse < Struct.new(
2707
+ :contact_list_name,
2708
+ :topics,
2709
+ :description,
2710
+ :created_timestamp,
2711
+ :last_updated_timestamp,
2712
+ :tags)
2713
+ SENSITIVE = []
2714
+ include Aws::Structure
2715
+ end
2716
+
2717
+ # @note When making an API call, you may pass GetContactRequest
2718
+ # data as a hash:
2719
+ #
2720
+ # {
2721
+ # contact_list_name: "ContactListName", # required
2722
+ # email_address: "EmailAddress", # required
2723
+ # }
2724
+ #
2725
+ # @!attribute [rw] contact_list_name
2726
+ # The name of the contact list to which the contact belongs.
2727
+ # @return [String]
2728
+ #
2729
+ # @!attribute [rw] email_address
2730
+ # The contact's email addres.
2731
+ # @return [String]
2732
+ #
2733
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetContactRequest AWS API Documentation
2734
+ #
2735
+ class GetContactRequest < Struct.new(
2736
+ :contact_list_name,
2737
+ :email_address)
2738
+ SENSITIVE = []
2739
+ include Aws::Structure
2740
+ end
2741
+
2742
+ # @!attribute [rw] contact_list_name
2743
+ # The name of the contact list to which the contact belongs.
2744
+ # @return [String]
2745
+ #
2746
+ # @!attribute [rw] email_address
2747
+ # The contact's email addres.
2748
+ # @return [String]
2749
+ #
2750
+ # @!attribute [rw] topic_preferences
2751
+ # The contact's preference for being opted-in to or opted-out of a
2752
+ # topic.&gt;
2753
+ # @return [Array<Types::TopicPreference>]
2754
+ #
2755
+ # @!attribute [rw] topic_default_preferences
2756
+ # The default topic preferences applied to the contact.
2757
+ # @return [Array<Types::TopicPreference>]
2758
+ #
2759
+ # @!attribute [rw] unsubscribe_all
2760
+ # A boolean value status noting if the contact is unsubscribed from
2761
+ # all contact list topics.
2762
+ # @return [Boolean]
2763
+ #
2764
+ # @!attribute [rw] attributes_data
2765
+ # The attribute data attached to a contact.
2766
+ # @return [String]
2767
+ #
2768
+ # @!attribute [rw] created_timestamp
2769
+ # A timestamp noting when the contact was created.
2770
+ # @return [Time]
2771
+ #
2772
+ # @!attribute [rw] last_updated_timestamp
2773
+ # A timestamp noting the last time the contact's information was
2774
+ # updated.
2775
+ # @return [Time]
2776
+ #
2777
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetContactResponse AWS API Documentation
2778
+ #
2779
+ class GetContactResponse < Struct.new(
2780
+ :contact_list_name,
2781
+ :email_address,
2782
+ :topic_preferences,
2783
+ :topic_default_preferences,
2784
+ :unsubscribe_all,
2785
+ :attributes_data,
2786
+ :created_timestamp,
2787
+ :last_updated_timestamp)
2788
+ SENSITIVE = []
2789
+ include Aws::Structure
2790
+ end
2791
+
2335
2792
  # Represents a request to retrieve an existing custom verification email
2336
2793
  # template.
2337
2794
  #
@@ -2894,6 +3351,84 @@ module Aws::SESV2
2894
3351
  include Aws::Structure
2895
3352
  end
2896
3353
 
3354
+ # Represents a request for information about an import job using the
3355
+ # import job ID.
3356
+ #
3357
+ # @note When making an API call, you may pass GetImportJobRequest
3358
+ # data as a hash:
3359
+ #
3360
+ # {
3361
+ # job_id: "JobId", # required
3362
+ # }
3363
+ #
3364
+ # @!attribute [rw] job_id
3365
+ # The ID of the import job.
3366
+ # @return [String]
3367
+ #
3368
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetImportJobRequest AWS API Documentation
3369
+ #
3370
+ class GetImportJobRequest < Struct.new(
3371
+ :job_id)
3372
+ SENSITIVE = []
3373
+ include Aws::Structure
3374
+ end
3375
+
3376
+ # An HTTP 200 response if the request succeeds, or an error message if
3377
+ # the request fails.
3378
+ #
3379
+ # @!attribute [rw] job_id
3380
+ # A string that represents the import job ID.
3381
+ # @return [String]
3382
+ #
3383
+ # @!attribute [rw] import_destination
3384
+ # The destination of the import job.
3385
+ # @return [Types::ImportDestination]
3386
+ #
3387
+ # @!attribute [rw] import_data_source
3388
+ # The data source of the import job.
3389
+ # @return [Types::ImportDataSource]
3390
+ #
3391
+ # @!attribute [rw] failure_info
3392
+ # The failure details about an import job.
3393
+ # @return [Types::FailureInfo]
3394
+ #
3395
+ # @!attribute [rw] job_status
3396
+ # The status of the import job.
3397
+ # @return [String]
3398
+ #
3399
+ # @!attribute [rw] created_timestamp
3400
+ # The time stamp of when the import job was created.
3401
+ # @return [Time]
3402
+ #
3403
+ # @!attribute [rw] completed_timestamp
3404
+ # The time stamp of when the import job was completed.
3405
+ # @return [Time]
3406
+ #
3407
+ # @!attribute [rw] processed_records_count
3408
+ # The current number of records processed.
3409
+ # @return [Integer]
3410
+ #
3411
+ # @!attribute [rw] failed_records_count
3412
+ # The number of records that failed processing because of invalid
3413
+ # input or other reasons.
3414
+ # @return [Integer]
3415
+ #
3416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetImportJobResponse AWS API Documentation
3417
+ #
3418
+ class GetImportJobResponse < Struct.new(
3419
+ :job_id,
3420
+ :import_destination,
3421
+ :import_data_source,
3422
+ :failure_info,
3423
+ :job_status,
3424
+ :created_timestamp,
3425
+ :completed_timestamp,
3426
+ :processed_records_count,
3427
+ :failed_records_count)
3428
+ SENSITIVE = []
3429
+ include Aws::Structure
3430
+ end
3431
+
2897
3432
  # A request to retrieve information about an email address that's on
2898
3433
  # the suppression list for your account.
2899
3434
  #
@@ -2957,12 +3492,106 @@ module Aws::SESV2
2957
3492
  # SES to send email from that identity.
2958
3493
  # @return [Boolean]
2959
3494
  #
2960
- # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/IdentityInfo AWS API Documentation
3495
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/IdentityInfo AWS API Documentation
3496
+ #
3497
+ class IdentityInfo < Struct.new(
3498
+ :identity_type,
3499
+ :identity_name,
3500
+ :sending_enabled)
3501
+ SENSITIVE = []
3502
+ include Aws::Structure
3503
+ end
3504
+
3505
+ # An object that contains details about the data source of the import
3506
+ # job.
3507
+ #
3508
+ # @note When making an API call, you may pass ImportDataSource
3509
+ # data as a hash:
3510
+ #
3511
+ # {
3512
+ # s3_url: "S3Url", # required
3513
+ # data_format: "CSV", # required, accepts CSV, JSON
3514
+ # }
3515
+ #
3516
+ # @!attribute [rw] s3_url
3517
+ # An Amazon S3 URL in the format
3518
+ # s3://*&lt;bucket\_name&gt;*/*&lt;object&gt;*.
3519
+ # @return [String]
3520
+ #
3521
+ # @!attribute [rw] data_format
3522
+ # The data format of the import job's data source.
3523
+ # @return [String]
3524
+ #
3525
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ImportDataSource AWS API Documentation
3526
+ #
3527
+ class ImportDataSource < Struct.new(
3528
+ :s3_url,
3529
+ :data_format)
3530
+ SENSITIVE = []
3531
+ include Aws::Structure
3532
+ end
3533
+
3534
+ # An object that contains details about the resource destination the
3535
+ # import job is going to target.
3536
+ #
3537
+ # @note When making an API call, you may pass ImportDestination
3538
+ # data as a hash:
3539
+ #
3540
+ # {
3541
+ # suppression_list_destination: {
3542
+ # suppression_list_import_action: "DELETE", # required, accepts DELETE, PUT
3543
+ # },
3544
+ # contact_list_destination: {
3545
+ # contact_list_name: "ContactListName", # required
3546
+ # contact_list_import_action: "DELETE", # required, accepts DELETE, PUT
3547
+ # },
3548
+ # }
3549
+ #
3550
+ # @!attribute [rw] suppression_list_destination
3551
+ # An object that contains the action of the import job towards
3552
+ # suppression list.
3553
+ # @return [Types::SuppressionListDestination]
3554
+ #
3555
+ # @!attribute [rw] contact_list_destination
3556
+ # An object that contains the action of the import job towards a
3557
+ # contact list.
3558
+ # @return [Types::ContactListDestination]
3559
+ #
3560
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ImportDestination AWS API Documentation
3561
+ #
3562
+ class ImportDestination < Struct.new(
3563
+ :suppression_list_destination,
3564
+ :contact_list_destination)
3565
+ SENSITIVE = []
3566
+ include Aws::Structure
3567
+ end
3568
+
3569
+ # A summary of the import job.
3570
+ #
3571
+ # @!attribute [rw] job_id
3572
+ # A string that represents the import job ID.
3573
+ # @return [String]
3574
+ #
3575
+ # @!attribute [rw] import_destination
3576
+ # An object that contains details about the resource destination the
3577
+ # import job is going to target.
3578
+ # @return [Types::ImportDestination]
3579
+ #
3580
+ # @!attribute [rw] job_status
3581
+ # The status of the import job.
3582
+ # @return [String]
3583
+ #
3584
+ # @!attribute [rw] created_timestamp
3585
+ # The date and time when the import job was created.
3586
+ # @return [Time]
2961
3587
  #
2962
- class IdentityInfo < Struct.new(
2963
- :identity_type,
2964
- :identity_name,
2965
- :sending_enabled)
3588
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ImportJobSummary AWS API Documentation
3589
+ #
3590
+ class ImportJobSummary < Struct.new(
3591
+ :job_id,
3592
+ :import_destination,
3593
+ :job_status,
3594
+ :created_timestamp)
2966
3595
  SENSITIVE = []
2967
3596
  include Aws::Structure
2968
3597
  end
@@ -3121,6 +3750,159 @@ module Aws::SESV2
3121
3750
  include Aws::Structure
3122
3751
  end
3123
3752
 
3753
+ # @note When making an API call, you may pass ListContactListsRequest
3754
+ # data as a hash:
3755
+ #
3756
+ # {
3757
+ # page_size: 1,
3758
+ # next_token: "NextToken",
3759
+ # }
3760
+ #
3761
+ # @!attribute [rw] page_size
3762
+ # Maximum number of contact lists to return at once. Use this
3763
+ # parameter to paginate results. If additional contact lists exist
3764
+ # beyond the specified limit, the `NextToken` element is sent in the
3765
+ # response. Use the `NextToken` value in subsequent requests to
3766
+ # retrieve additional lists.
3767
+ # @return [Integer]
3768
+ #
3769
+ # @!attribute [rw] next_token
3770
+ # A string token indicating that there might be additional contact
3771
+ # lists available to be listed. Use the token provided in the Response
3772
+ # to use in the subsequent call to ListContactLists with the same
3773
+ # parameters to retrieve the next page of contact lists.
3774
+ # @return [String]
3775
+ #
3776
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactListsRequest AWS API Documentation
3777
+ #
3778
+ class ListContactListsRequest < Struct.new(
3779
+ :page_size,
3780
+ :next_token)
3781
+ SENSITIVE = []
3782
+ include Aws::Structure
3783
+ end
3784
+
3785
+ # @!attribute [rw] contact_lists
3786
+ # The available contact lists.
3787
+ # @return [Array<Types::ContactList>]
3788
+ #
3789
+ # @!attribute [rw] next_token
3790
+ # A string token indicating that there might be additional contact
3791
+ # lists available to be listed. Copy this token to a subsequent call
3792
+ # to `ListContactLists` with the same parameters to retrieve the next
3793
+ # page of contact lists.
3794
+ # @return [String]
3795
+ #
3796
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactListsResponse AWS API Documentation
3797
+ #
3798
+ class ListContactListsResponse < Struct.new(
3799
+ :contact_lists,
3800
+ :next_token)
3801
+ SENSITIVE = []
3802
+ include Aws::Structure
3803
+ end
3804
+
3805
+ # A filter that can be applied to a list of contacts.
3806
+ #
3807
+ # @note When making an API call, you may pass ListContactsFilter
3808
+ # data as a hash:
3809
+ #
3810
+ # {
3811
+ # filtered_status: "OPT_IN", # accepts OPT_IN, OPT_OUT
3812
+ # topic_filter: {
3813
+ # topic_name: "TopicName",
3814
+ # use_default_if_preference_unavailable: false,
3815
+ # },
3816
+ # }
3817
+ #
3818
+ # @!attribute [rw] filtered_status
3819
+ # The status by which you are filtering: `OPT_IN` or `OPT_OUT`.
3820
+ # @return [String]
3821
+ #
3822
+ # @!attribute [rw] topic_filter
3823
+ # Used for filtering by a specific topic preference.
3824
+ # @return [Types::TopicFilter]
3825
+ #
3826
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactsFilter AWS API Documentation
3827
+ #
3828
+ class ListContactsFilter < Struct.new(
3829
+ :filtered_status,
3830
+ :topic_filter)
3831
+ SENSITIVE = []
3832
+ include Aws::Structure
3833
+ end
3834
+
3835
+ # @note When making an API call, you may pass ListContactsRequest
3836
+ # data as a hash:
3837
+ #
3838
+ # {
3839
+ # contact_list_name: "ContactListName", # required
3840
+ # filter: {
3841
+ # filtered_status: "OPT_IN", # accepts OPT_IN, OPT_OUT
3842
+ # topic_filter: {
3843
+ # topic_name: "TopicName",
3844
+ # use_default_if_preference_unavailable: false,
3845
+ # },
3846
+ # },
3847
+ # page_size: 1,
3848
+ # next_token: "NextToken",
3849
+ # }
3850
+ #
3851
+ # @!attribute [rw] contact_list_name
3852
+ # The name of the contact list.
3853
+ # @return [String]
3854
+ #
3855
+ # @!attribute [rw] filter
3856
+ # A filter that can be applied to a list of contacts.
3857
+ # @return [Types::ListContactsFilter]
3858
+ #
3859
+ # @!attribute [rw] page_size
3860
+ # The number of contacts that may be returned at once, which is
3861
+ # dependent on if there are more or less contacts than the value of
3862
+ # the PageSize. Use this parameter to paginate results. If additional
3863
+ # contacts exist beyond the specified limit, the `NextToken` element
3864
+ # is sent in the response. Use the `NextToken` value in subsequent
3865
+ # requests to retrieve additional contacts.
3866
+ # @return [Integer]
3867
+ #
3868
+ # @!attribute [rw] next_token
3869
+ # A string token indicating that there might be additional contacts
3870
+ # available to be listed. Use the token provided in the Response to
3871
+ # use in the subsequent call to ListContacts with the same parameters
3872
+ # to retrieve the next page of contacts.
3873
+ # @return [String]
3874
+ #
3875
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactsRequest AWS API Documentation
3876
+ #
3877
+ class ListContactsRequest < Struct.new(
3878
+ :contact_list_name,
3879
+ :filter,
3880
+ :page_size,
3881
+ :next_token)
3882
+ SENSITIVE = []
3883
+ include Aws::Structure
3884
+ end
3885
+
3886
+ # @!attribute [rw] contacts
3887
+ # The contacts present in a specific contact list.
3888
+ # @return [Array<Types::Contact>]
3889
+ #
3890
+ # @!attribute [rw] next_token
3891
+ # A string token indicating that there might be additional contacts
3892
+ # available to be listed. Copy this token to a subsequent call to
3893
+ # `ListContacts` with the same parameters to retrieve the next page of
3894
+ # contacts.
3895
+ # @return [String]
3896
+ #
3897
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactsResponse AWS API Documentation
3898
+ #
3899
+ class ListContactsResponse < Struct.new(
3900
+ :contacts,
3901
+ :next_token)
3902
+ SENSITIVE = []
3903
+ include Aws::Structure
3904
+ end
3905
+
3124
3906
  # Represents a request to list the existing custom verification email
3125
3907
  # templates for your account.
3126
3908
  #
@@ -3504,6 +4286,99 @@ module Aws::SESV2
3504
4286
  include Aws::Structure
3505
4287
  end
3506
4288
 
4289
+ # Represents a request to list all of the import jobs for a data
4290
+ # destination within the specified maximum number of import jobs.
4291
+ #
4292
+ # @note When making an API call, you may pass ListImportJobsRequest
4293
+ # data as a hash:
4294
+ #
4295
+ # {
4296
+ # import_destination_type: "SUPPRESSION_LIST", # accepts SUPPRESSION_LIST, CONTACT_LIST
4297
+ # next_token: "NextToken",
4298
+ # page_size: 1,
4299
+ # }
4300
+ #
4301
+ # @!attribute [rw] import_destination_type
4302
+ # The destination of the import job, which can be used to list import
4303
+ # jobs that have a certain `ImportDestinationType`.
4304
+ # @return [String]
4305
+ #
4306
+ # @!attribute [rw] next_token
4307
+ # A string token indicating that there might be additional import jobs
4308
+ # available to be listed. Copy this token to a subsequent call to
4309
+ # `ListImportJobs` with the same parameters to retrieve the next page
4310
+ # of import jobs.
4311
+ # @return [String]
4312
+ #
4313
+ # @!attribute [rw] page_size
4314
+ # Maximum number of import jobs to return at once. Use this parameter
4315
+ # to paginate results. If additional import jobs exist beyond the
4316
+ # specified limit, the `NextToken` element is sent in the response.
4317
+ # Use the `NextToken` value in subsequent requests to retrieve
4318
+ # additional addresses.
4319
+ # @return [Integer]
4320
+ #
4321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListImportJobsRequest AWS API Documentation
4322
+ #
4323
+ class ListImportJobsRequest < Struct.new(
4324
+ :import_destination_type,
4325
+ :next_token,
4326
+ :page_size)
4327
+ SENSITIVE = []
4328
+ include Aws::Structure
4329
+ end
4330
+
4331
+ # An HTTP 200 response if the request succeeds, or an error message if
4332
+ # the request fails.
4333
+ #
4334
+ # @!attribute [rw] import_jobs
4335
+ # A list of the import job summaries.
4336
+ # @return [Array<Types::ImportJobSummary>]
4337
+ #
4338
+ # @!attribute [rw] next_token
4339
+ # A string token indicating that there might be additional import jobs
4340
+ # available to be listed. Copy this token to a subsequent call to
4341
+ # `ListImportJobs` with the same parameters to retrieve the next page
4342
+ # of import jobs.
4343
+ # @return [String]
4344
+ #
4345
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListImportJobsResponse AWS API Documentation
4346
+ #
4347
+ class ListImportJobsResponse < Struct.new(
4348
+ :import_jobs,
4349
+ :next_token)
4350
+ SENSITIVE = []
4351
+ include Aws::Structure
4352
+ end
4353
+
4354
+ # An object used to specify a list or topic to which an email belongs,
4355
+ # which will be used when a contact chooses to unsubscribe.
4356
+ #
4357
+ # @note When making an API call, you may pass ListManagementOptions
4358
+ # data as a hash:
4359
+ #
4360
+ # {
4361
+ # contact_list_name: "ContactListName", # required
4362
+ # topic_name: "TopicName",
4363
+ # }
4364
+ #
4365
+ # @!attribute [rw] contact_list_name
4366
+ # The name of the contact list.
4367
+ # @return [String]
4368
+ #
4369
+ # @!attribute [rw] topic_name
4370
+ # The name of the topic.
4371
+ # @return [String]
4372
+ #
4373
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListManagementOptions AWS API Documentation
4374
+ #
4375
+ class ListManagementOptions < Struct.new(
4376
+ :contact_list_name,
4377
+ :topic_name)
4378
+ SENSITIVE = []
4379
+ include Aws::Structure
4380
+ end
4381
+
3507
4382
  # A request to obtain a list of email destinations that are on the
3508
4383
  # suppression list for your account.
3509
4384
  #
@@ -5113,6 +5988,10 @@ module Aws::SESV2
5113
5988
  # },
5114
5989
  # ],
5115
5990
  # configuration_set_name: "ConfigurationSetName",
5991
+ # list_management_options: {
5992
+ # contact_list_name: "ContactListName", # required
5993
+ # topic_name: "TopicName",
5994
+ # },
5116
5995
  # }
5117
5996
  #
5118
5997
  # @!attribute [rw] from_email_address
@@ -5197,6 +6076,11 @@ module Aws::SESV2
5197
6076
  # the email.
5198
6077
  # @return [String]
5199
6078
  #
6079
+ # @!attribute [rw] list_management_options
6080
+ # An object used to specify a list or topic to which an email belongs,
6081
+ # which will be used when a contact chooses to unsubscribe.
6082
+ # @return [Types::ListManagementOptions]
6083
+ #
5200
6084
  # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/SendEmailRequest AWS API Documentation
5201
6085
  #
5202
6086
  class SendEmailRequest < Struct.new(
@@ -5208,7 +6092,8 @@ module Aws::SESV2
5208
6092
  :feedback_forwarding_email_address_identity_arn,
5209
6093
  :content,
5210
6094
  :email_tags,
5211
- :configuration_set_name)
6095
+ :configuration_set_name,
6096
+ :list_management_options)
5212
6097
  SENSITIVE = []
5213
6098
  include Aws::Structure
5214
6099
  end
@@ -5432,6 +6317,33 @@ module Aws::SESV2
5432
6317
  include Aws::Structure
5433
6318
  end
5434
6319
 
6320
+ # An object that contains details about the action of suppression list.
6321
+ #
6322
+ # @note When making an API call, you may pass SuppressionListDestination
6323
+ # data as a hash:
6324
+ #
6325
+ # {
6326
+ # suppression_list_import_action: "DELETE", # required, accepts DELETE, PUT
6327
+ # }
6328
+ #
6329
+ # @!attribute [rw] suppression_list_import_action
6330
+ # The type of action that you want to perform on the address.
6331
+ # Acceptable values:
6332
+ #
6333
+ # * PUT: add the addresses to the suppression list. If the record
6334
+ # already exists, it will override it with the new value.
6335
+ #
6336
+ # * DELETE: remove the addresses from the suppression list.
6337
+ # @return [String]
6338
+ #
6339
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/SuppressionListDestination AWS API Documentation
6340
+ #
6341
+ class SuppressionListDestination < Struct.new(
6342
+ :suppression_list_import_action)
6343
+ SENSITIVE = []
6344
+ include Aws::Structure
6345
+ end
6346
+
5435
6347
  # An object that contains information about the suppression list
5436
6348
  # preferences for your account.
5437
6349
  #
@@ -5658,6 +6570,106 @@ module Aws::SESV2
5658
6570
  #
5659
6571
  class TooManyRequestsException < Aws::EmptyStructure; end
5660
6572
 
6573
+ # An interest group, theme, or label within a list. Lists can have
6574
+ # multiple topics.
6575
+ #
6576
+ # @note When making an API call, you may pass Topic
6577
+ # data as a hash:
6578
+ #
6579
+ # {
6580
+ # topic_name: "TopicName", # required
6581
+ # display_name: "DisplayName", # required
6582
+ # description: "Description",
6583
+ # default_subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
6584
+ # }
6585
+ #
6586
+ # @!attribute [rw] topic_name
6587
+ # The name of the topic.
6588
+ # @return [String]
6589
+ #
6590
+ # @!attribute [rw] display_name
6591
+ # The name of the topic the contact will see.
6592
+ # @return [String]
6593
+ #
6594
+ # @!attribute [rw] description
6595
+ # A description of what the topic is about, which the contact will
6596
+ # see.
6597
+ # @return [String]
6598
+ #
6599
+ # @!attribute [rw] default_subscription_status
6600
+ # The default subscription status to be applied to a contact if the
6601
+ # contact has not noted their preference for subscribing to a topic.
6602
+ # @return [String]
6603
+ #
6604
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/Topic AWS API Documentation
6605
+ #
6606
+ class Topic < Struct.new(
6607
+ :topic_name,
6608
+ :display_name,
6609
+ :description,
6610
+ :default_subscription_status)
6611
+ SENSITIVE = []
6612
+ include Aws::Structure
6613
+ end
6614
+
6615
+ # Used for filtering by a specific topic preference.
6616
+ #
6617
+ # @note When making an API call, you may pass TopicFilter
6618
+ # data as a hash:
6619
+ #
6620
+ # {
6621
+ # topic_name: "TopicName",
6622
+ # use_default_if_preference_unavailable: false,
6623
+ # }
6624
+ #
6625
+ # @!attribute [rw] topic_name
6626
+ # The name of a topic on which you wish to apply the filter.
6627
+ # @return [String]
6628
+ #
6629
+ # @!attribute [rw] use_default_if_preference_unavailable
6630
+ # Notes that the default subscription status should be applied to a
6631
+ # contact because the contact has not noted their preference for
6632
+ # subscribing to a topic.
6633
+ # @return [Boolean]
6634
+ #
6635
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/TopicFilter AWS API Documentation
6636
+ #
6637
+ class TopicFilter < Struct.new(
6638
+ :topic_name,
6639
+ :use_default_if_preference_unavailable)
6640
+ SENSITIVE = []
6641
+ include Aws::Structure
6642
+ end
6643
+
6644
+ # The contact's preference for being opted-in to or opted-out of a
6645
+ # topic.
6646
+ #
6647
+ # @note When making an API call, you may pass TopicPreference
6648
+ # data as a hash:
6649
+ #
6650
+ # {
6651
+ # topic_name: "TopicName", # required
6652
+ # subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
6653
+ # }
6654
+ #
6655
+ # @!attribute [rw] topic_name
6656
+ # The name of the topic.
6657
+ # @return [String]
6658
+ #
6659
+ # @!attribute [rw] subscription_status
6660
+ # The contact's subscription status to a topic which is either
6661
+ # `OPT_IN` or `OPT_OUT`.
6662
+ # @return [String]
6663
+ #
6664
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/TopicPreference AWS API Documentation
6665
+ #
6666
+ class TopicPreference < Struct.new(
6667
+ :topic_name,
6668
+ :subscription_status)
6669
+ SENSITIVE = []
6670
+ include Aws::Structure
6671
+ end
6672
+
5661
6673
  # An object that defines the tracking options for a configuration set.
5662
6674
  # When you use the Amazon SES API v2 to send an email, it contains an
5663
6675
  # invisible image that's used to track when recipients open your email.
@@ -5735,7 +6747,7 @@ module Aws::SESV2
5735
6747
  # event_destination_name: "EventDestinationName", # required
5736
6748
  # event_destination: { # required
5737
6749
  # enabled: false,
5738
- # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY
6750
+ # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY, SUBSCRIPTION
5739
6751
  # kinesis_firehose_destination: {
5740
6752
  # iam_role_arn: "AmazonResourceName", # required
5741
6753
  # delivery_stream_arn: "AmazonResourceName", # required
@@ -5788,6 +6800,103 @@ module Aws::SESV2
5788
6800
  #
5789
6801
  class UpdateConfigurationSetEventDestinationResponse < Aws::EmptyStructure; end
5790
6802
 
6803
+ # @note When making an API call, you may pass UpdateContactListRequest
6804
+ # data as a hash:
6805
+ #
6806
+ # {
6807
+ # contact_list_name: "ContactListName", # required
6808
+ # topics: [
6809
+ # {
6810
+ # topic_name: "TopicName", # required
6811
+ # display_name: "DisplayName", # required
6812
+ # description: "Description",
6813
+ # default_subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
6814
+ # },
6815
+ # ],
6816
+ # description: "Description",
6817
+ # }
6818
+ #
6819
+ # @!attribute [rw] contact_list_name
6820
+ # The name of the contact list.
6821
+ # @return [String]
6822
+ #
6823
+ # @!attribute [rw] topics
6824
+ # An interest group, theme, or label within a list. A contact list can
6825
+ # have multiple topics.
6826
+ # @return [Array<Types::Topic>]
6827
+ #
6828
+ # @!attribute [rw] description
6829
+ # A description of what the contact list is about.
6830
+ # @return [String]
6831
+ #
6832
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/UpdateContactListRequest AWS API Documentation
6833
+ #
6834
+ class UpdateContactListRequest < Struct.new(
6835
+ :contact_list_name,
6836
+ :topics,
6837
+ :description)
6838
+ SENSITIVE = []
6839
+ include Aws::Structure
6840
+ end
6841
+
6842
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/UpdateContactListResponse AWS API Documentation
6843
+ #
6844
+ class UpdateContactListResponse < Aws::EmptyStructure; end
6845
+
6846
+ # @note When making an API call, you may pass UpdateContactRequest
6847
+ # data as a hash:
6848
+ #
6849
+ # {
6850
+ # contact_list_name: "ContactListName", # required
6851
+ # email_address: "EmailAddress", # required
6852
+ # topic_preferences: [
6853
+ # {
6854
+ # topic_name: "TopicName", # required
6855
+ # subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
6856
+ # },
6857
+ # ],
6858
+ # unsubscribe_all: false,
6859
+ # attributes_data: "AttributesData",
6860
+ # }
6861
+ #
6862
+ # @!attribute [rw] contact_list_name
6863
+ # The name of the contact list.
6864
+ # @return [String]
6865
+ #
6866
+ # @!attribute [rw] email_address
6867
+ # The contact's email addres.
6868
+ # @return [String]
6869
+ #
6870
+ # @!attribute [rw] topic_preferences
6871
+ # The contact's preference for being opted-in to or opted-out of a
6872
+ # topic.
6873
+ # @return [Array<Types::TopicPreference>]
6874
+ #
6875
+ # @!attribute [rw] unsubscribe_all
6876
+ # A boolean value status noting if the contact is unsubscribed from
6877
+ # all contact list topics.
6878
+ # @return [Boolean]
6879
+ #
6880
+ # @!attribute [rw] attributes_data
6881
+ # The attribute data attached to a contact.
6882
+ # @return [String]
6883
+ #
6884
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/UpdateContactRequest AWS API Documentation
6885
+ #
6886
+ class UpdateContactRequest < Struct.new(
6887
+ :contact_list_name,
6888
+ :email_address,
6889
+ :topic_preferences,
6890
+ :unsubscribe_all,
6891
+ :attributes_data)
6892
+ SENSITIVE = []
6893
+ include Aws::Structure
6894
+ end
6895
+
6896
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/UpdateContactResponse AWS API Documentation
6897
+ #
6898
+ class UpdateContactResponse < Aws::EmptyStructure; end
6899
+
5791
6900
  # Represents a request to update an existing custom verification email
5792
6901
  # template.
5793
6902
  #