aws-sdk-sesv2 1.11.0 → 1.16.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
@@ -881,6 +1079,7 @@ module Aws::SESV2
881
1079
  # domain_signing_selector: "Selector", # required
882
1080
  # domain_signing_private_key: "PrivateKey", # required
883
1081
  # },
1082
+ # configuration_set_name: "ConfigurationSetName",
884
1083
  # }
885
1084
  #
886
1085
  # @!attribute [rw] email_identity
@@ -906,12 +1105,19 @@ module Aws::SESV2
906
1105
  # [1]: https://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html
907
1106
  # @return [Types::DkimSigningAttributes]
908
1107
  #
1108
+ # @!attribute [rw] configuration_set_name
1109
+ # The configuration set to use by default when sending from this
1110
+ # identity. Note that any configuration set defined in the email
1111
+ # sending request takes precedence.
1112
+ # @return [String]
1113
+ #
909
1114
  # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/CreateEmailIdentityRequest AWS API Documentation
910
1115
  #
911
1116
  class CreateEmailIdentityRequest < Struct.new(
912
1117
  :email_identity,
913
1118
  :tags,
914
- :dkim_signing_attributes)
1119
+ :dkim_signing_attributes,
1120
+ :configuration_set_name)
915
1121
  SENSITIVE = []
916
1122
  include Aws::Structure
917
1123
  end
@@ -1002,9 +1208,13 @@ module Aws::SESV2
1002
1208
  #
1003
1209
  # {
1004
1210
  # import_destination: { # required
1005
- # suppression_list_destination: { # required
1211
+ # suppression_list_destination: {
1006
1212
  # suppression_list_import_action: "DELETE", # required, accepts DELETE, PUT
1007
1213
  # },
1214
+ # contact_list_destination: {
1215
+ # contact_list_name: "ContactListName", # required
1216
+ # contact_list_import_action: "DELETE", # required, accepts DELETE, PUT
1217
+ # },
1008
1218
  # },
1009
1219
  # import_data_source: { # required
1010
1220
  # s3_url: "S3Url", # required
@@ -1219,6 +1429,59 @@ module Aws::SESV2
1219
1429
  #
1220
1430
  class DeleteConfigurationSetResponse < Aws::EmptyStructure; end
1221
1431
 
1432
+ # @note When making an API call, you may pass DeleteContactListRequest
1433
+ # data as a hash:
1434
+ #
1435
+ # {
1436
+ # contact_list_name: "ContactListName", # required
1437
+ # }
1438
+ #
1439
+ # @!attribute [rw] contact_list_name
1440
+ # The name of the contact list.
1441
+ # @return [String]
1442
+ #
1443
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/DeleteContactListRequest AWS API Documentation
1444
+ #
1445
+ class DeleteContactListRequest < Struct.new(
1446
+ :contact_list_name)
1447
+ SENSITIVE = []
1448
+ include Aws::Structure
1449
+ end
1450
+
1451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/DeleteContactListResponse AWS API Documentation
1452
+ #
1453
+ class DeleteContactListResponse < Aws::EmptyStructure; end
1454
+
1455
+ # @note When making an API call, you may pass DeleteContactRequest
1456
+ # data as a hash:
1457
+ #
1458
+ # {
1459
+ # contact_list_name: "ContactListName", # required
1460
+ # email_address: "EmailAddress", # required
1461
+ # }
1462
+ #
1463
+ # @!attribute [rw] contact_list_name
1464
+ # The name of the contact list from which the contact should be
1465
+ # removed.
1466
+ # @return [String]
1467
+ #
1468
+ # @!attribute [rw] email_address
1469
+ # The contact's email address.
1470
+ # @return [String]
1471
+ #
1472
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/DeleteContactRequest AWS API Documentation
1473
+ #
1474
+ class DeleteContactRequest < Struct.new(
1475
+ :contact_list_name,
1476
+ :email_address)
1477
+ SENSITIVE = []
1478
+ include Aws::Structure
1479
+ end
1480
+
1481
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/DeleteContactResponse AWS API Documentation
1482
+ #
1483
+ class DeleteContactResponse < Aws::EmptyStructure; end
1484
+
1222
1485
  # Represents a request to delete an existing custom verification email
1223
1486
  # template.
1224
1487
  #
@@ -2067,7 +2330,7 @@ module Aws::SESV2
2067
2330
  #
2068
2331
  # {
2069
2332
  # enabled: false,
2070
- # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY
2333
+ # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY, SUBSCRIPTION
2071
2334
  # kinesis_firehose_destination: {
2072
2335
  # iam_role_arn: "AmazonResourceName", # required
2073
2336
  # delivery_stream_arn: "AmazonResourceName", # required
@@ -2402,6 +2665,138 @@ module Aws::SESV2
2402
2665
  include Aws::Structure
2403
2666
  end
2404
2667
 
2668
+ # @note When making an API call, you may pass GetContactListRequest
2669
+ # data as a hash:
2670
+ #
2671
+ # {
2672
+ # contact_list_name: "ContactListName", # required
2673
+ # }
2674
+ #
2675
+ # @!attribute [rw] contact_list_name
2676
+ # The name of the contact list.
2677
+ # @return [String]
2678
+ #
2679
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetContactListRequest AWS API Documentation
2680
+ #
2681
+ class GetContactListRequest < Struct.new(
2682
+ :contact_list_name)
2683
+ SENSITIVE = []
2684
+ include Aws::Structure
2685
+ end
2686
+
2687
+ # @!attribute [rw] contact_list_name
2688
+ # The name of the contact list.
2689
+ # @return [String]
2690
+ #
2691
+ # @!attribute [rw] topics
2692
+ # An interest group, theme, or label within a list. A contact list can
2693
+ # have multiple topics.
2694
+ # @return [Array<Types::Topic>]
2695
+ #
2696
+ # @!attribute [rw] description
2697
+ # A description of what the contact list is about.
2698
+ # @return [String]
2699
+ #
2700
+ # @!attribute [rw] created_timestamp
2701
+ # A timestamp noting when the contact list was created.
2702
+ # @return [Time]
2703
+ #
2704
+ # @!attribute [rw] last_updated_timestamp
2705
+ # A timestamp noting the last time the contact list was updated.
2706
+ # @return [Time]
2707
+ #
2708
+ # @!attribute [rw] tags
2709
+ # The tags associated with a contact list.
2710
+ # @return [Array<Types::Tag>]
2711
+ #
2712
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetContactListResponse AWS API Documentation
2713
+ #
2714
+ class GetContactListResponse < Struct.new(
2715
+ :contact_list_name,
2716
+ :topics,
2717
+ :description,
2718
+ :created_timestamp,
2719
+ :last_updated_timestamp,
2720
+ :tags)
2721
+ SENSITIVE = []
2722
+ include Aws::Structure
2723
+ end
2724
+
2725
+ # @note When making an API call, you may pass GetContactRequest
2726
+ # data as a hash:
2727
+ #
2728
+ # {
2729
+ # contact_list_name: "ContactListName", # required
2730
+ # email_address: "EmailAddress", # required
2731
+ # }
2732
+ #
2733
+ # @!attribute [rw] contact_list_name
2734
+ # The name of the contact list to which the contact belongs.
2735
+ # @return [String]
2736
+ #
2737
+ # @!attribute [rw] email_address
2738
+ # The contact's email addres.
2739
+ # @return [String]
2740
+ #
2741
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetContactRequest AWS API Documentation
2742
+ #
2743
+ class GetContactRequest < Struct.new(
2744
+ :contact_list_name,
2745
+ :email_address)
2746
+ SENSITIVE = []
2747
+ include Aws::Structure
2748
+ end
2749
+
2750
+ # @!attribute [rw] contact_list_name
2751
+ # The name of the contact list to which the contact belongs.
2752
+ # @return [String]
2753
+ #
2754
+ # @!attribute [rw] email_address
2755
+ # The contact's email addres.
2756
+ # @return [String]
2757
+ #
2758
+ # @!attribute [rw] topic_preferences
2759
+ # The contact's preference for being opted-in to or opted-out of a
2760
+ # topic.&gt;
2761
+ # @return [Array<Types::TopicPreference>]
2762
+ #
2763
+ # @!attribute [rw] topic_default_preferences
2764
+ # The default topic preferences applied to the contact.
2765
+ # @return [Array<Types::TopicPreference>]
2766
+ #
2767
+ # @!attribute [rw] unsubscribe_all
2768
+ # A boolean value status noting if the contact is unsubscribed from
2769
+ # all contact list topics.
2770
+ # @return [Boolean]
2771
+ #
2772
+ # @!attribute [rw] attributes_data
2773
+ # The attribute data attached to a contact.
2774
+ # @return [String]
2775
+ #
2776
+ # @!attribute [rw] created_timestamp
2777
+ # A timestamp noting when the contact was created.
2778
+ # @return [Time]
2779
+ #
2780
+ # @!attribute [rw] last_updated_timestamp
2781
+ # A timestamp noting the last time the contact's information was
2782
+ # updated.
2783
+ # @return [Time]
2784
+ #
2785
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetContactResponse AWS API Documentation
2786
+ #
2787
+ class GetContactResponse < Struct.new(
2788
+ :contact_list_name,
2789
+ :email_address,
2790
+ :topic_preferences,
2791
+ :topic_default_preferences,
2792
+ :unsubscribe_all,
2793
+ :attributes_data,
2794
+ :created_timestamp,
2795
+ :last_updated_timestamp)
2796
+ SENSITIVE = []
2797
+ include Aws::Structure
2798
+ end
2799
+
2405
2800
  # Represents a request to retrieve an existing custom verification email
2406
2801
  # template.
2407
2802
  #
@@ -2907,6 +3302,11 @@ module Aws::SESV2
2907
3302
  # associated with the email identity.
2908
3303
  # @return [Array<Types::Tag>]
2909
3304
  #
3305
+ # @!attribute [rw] configuration_set_name
3306
+ # The configuration set used by default when sending from this
3307
+ # identity.
3308
+ # @return [String]
3309
+ #
2910
3310
  # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetEmailIdentityResponse AWS API Documentation
2911
3311
  #
2912
3312
  class GetEmailIdentityResponse < Struct.new(
@@ -2916,7 +3316,8 @@ module Aws::SESV2
2916
3316
  :dkim_attributes,
2917
3317
  :mail_from_attributes,
2918
3318
  :policies,
2919
- :tags)
3319
+ :tags,
3320
+ :configuration_set_name)
2920
3321
  SENSITIVE = []
2921
3322
  include Aws::Structure
2922
3323
  end
@@ -3151,9 +3552,13 @@ module Aws::SESV2
3151
3552
  # data as a hash:
3152
3553
  #
3153
3554
  # {
3154
- # suppression_list_destination: { # required
3555
+ # suppression_list_destination: {
3155
3556
  # suppression_list_import_action: "DELETE", # required, accepts DELETE, PUT
3156
3557
  # },
3558
+ # contact_list_destination: {
3559
+ # contact_list_name: "ContactListName", # required
3560
+ # contact_list_import_action: "DELETE", # required, accepts DELETE, PUT
3561
+ # },
3157
3562
  # }
3158
3563
  #
3159
3564
  # @!attribute [rw] suppression_list_destination
@@ -3161,10 +3566,16 @@ module Aws::SESV2
3161
3566
  # suppression list.
3162
3567
  # @return [Types::SuppressionListDestination]
3163
3568
  #
3569
+ # @!attribute [rw] contact_list_destination
3570
+ # An object that contains the action of the import job towards a
3571
+ # contact list.
3572
+ # @return [Types::ContactListDestination]
3573
+ #
3164
3574
  # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ImportDestination AWS API Documentation
3165
3575
  #
3166
3576
  class ImportDestination < Struct.new(
3167
- :suppression_list_destination)
3577
+ :suppression_list_destination,
3578
+ :contact_list_destination)
3168
3579
  SENSITIVE = []
3169
3580
  include Aws::Structure
3170
3581
  end
@@ -3185,6 +3596,7 @@ module Aws::SESV2
3185
3596
  # @return [String]
3186
3597
  #
3187
3598
  # @!attribute [rw] created_timestamp
3599
+ # The date and time when the import job was created.
3188
3600
  # @return [Time]
3189
3601
  #
3190
3602
  # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ImportJobSummary AWS API Documentation
@@ -3352,6 +3764,159 @@ module Aws::SESV2
3352
3764
  include Aws::Structure
3353
3765
  end
3354
3766
 
3767
+ # @note When making an API call, you may pass ListContactListsRequest
3768
+ # data as a hash:
3769
+ #
3770
+ # {
3771
+ # page_size: 1,
3772
+ # next_token: "NextToken",
3773
+ # }
3774
+ #
3775
+ # @!attribute [rw] page_size
3776
+ # Maximum number of contact lists to return at once. Use this
3777
+ # parameter to paginate results. If additional contact lists exist
3778
+ # beyond the specified limit, the `NextToken` element is sent in the
3779
+ # response. Use the `NextToken` value in subsequent requests to
3780
+ # retrieve additional lists.
3781
+ # @return [Integer]
3782
+ #
3783
+ # @!attribute [rw] next_token
3784
+ # A string token indicating that there might be additional contact
3785
+ # lists available to be listed. Use the token provided in the Response
3786
+ # to use in the subsequent call to ListContactLists with the same
3787
+ # parameters to retrieve the next page of contact lists.
3788
+ # @return [String]
3789
+ #
3790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactListsRequest AWS API Documentation
3791
+ #
3792
+ class ListContactListsRequest < Struct.new(
3793
+ :page_size,
3794
+ :next_token)
3795
+ SENSITIVE = []
3796
+ include Aws::Structure
3797
+ end
3798
+
3799
+ # @!attribute [rw] contact_lists
3800
+ # The available contact lists.
3801
+ # @return [Array<Types::ContactList>]
3802
+ #
3803
+ # @!attribute [rw] next_token
3804
+ # A string token indicating that there might be additional contact
3805
+ # lists available to be listed. Copy this token to a subsequent call
3806
+ # to `ListContactLists` with the same parameters to retrieve the next
3807
+ # page of contact lists.
3808
+ # @return [String]
3809
+ #
3810
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactListsResponse AWS API Documentation
3811
+ #
3812
+ class ListContactListsResponse < Struct.new(
3813
+ :contact_lists,
3814
+ :next_token)
3815
+ SENSITIVE = []
3816
+ include Aws::Structure
3817
+ end
3818
+
3819
+ # A filter that can be applied to a list of contacts.
3820
+ #
3821
+ # @note When making an API call, you may pass ListContactsFilter
3822
+ # data as a hash:
3823
+ #
3824
+ # {
3825
+ # filtered_status: "OPT_IN", # accepts OPT_IN, OPT_OUT
3826
+ # topic_filter: {
3827
+ # topic_name: "TopicName",
3828
+ # use_default_if_preference_unavailable: false,
3829
+ # },
3830
+ # }
3831
+ #
3832
+ # @!attribute [rw] filtered_status
3833
+ # The status by which you are filtering: `OPT_IN` or `OPT_OUT`.
3834
+ # @return [String]
3835
+ #
3836
+ # @!attribute [rw] topic_filter
3837
+ # Used for filtering by a specific topic preference.
3838
+ # @return [Types::TopicFilter]
3839
+ #
3840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactsFilter AWS API Documentation
3841
+ #
3842
+ class ListContactsFilter < Struct.new(
3843
+ :filtered_status,
3844
+ :topic_filter)
3845
+ SENSITIVE = []
3846
+ include Aws::Structure
3847
+ end
3848
+
3849
+ # @note When making an API call, you may pass ListContactsRequest
3850
+ # data as a hash:
3851
+ #
3852
+ # {
3853
+ # contact_list_name: "ContactListName", # required
3854
+ # filter: {
3855
+ # filtered_status: "OPT_IN", # accepts OPT_IN, OPT_OUT
3856
+ # topic_filter: {
3857
+ # topic_name: "TopicName",
3858
+ # use_default_if_preference_unavailable: false,
3859
+ # },
3860
+ # },
3861
+ # page_size: 1,
3862
+ # next_token: "NextToken",
3863
+ # }
3864
+ #
3865
+ # @!attribute [rw] contact_list_name
3866
+ # The name of the contact list.
3867
+ # @return [String]
3868
+ #
3869
+ # @!attribute [rw] filter
3870
+ # A filter that can be applied to a list of contacts.
3871
+ # @return [Types::ListContactsFilter]
3872
+ #
3873
+ # @!attribute [rw] page_size
3874
+ # The number of contacts that may be returned at once, which is
3875
+ # dependent on if there are more or less contacts than the value of
3876
+ # the PageSize. Use this parameter to paginate results. If additional
3877
+ # contacts exist beyond the specified limit, the `NextToken` element
3878
+ # is sent in the response. Use the `NextToken` value in subsequent
3879
+ # requests to retrieve additional contacts.
3880
+ # @return [Integer]
3881
+ #
3882
+ # @!attribute [rw] next_token
3883
+ # A string token indicating that there might be additional contacts
3884
+ # available to be listed. Use the token provided in the Response to
3885
+ # use in the subsequent call to ListContacts with the same parameters
3886
+ # to retrieve the next page of contacts.
3887
+ # @return [String]
3888
+ #
3889
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactsRequest AWS API Documentation
3890
+ #
3891
+ class ListContactsRequest < Struct.new(
3892
+ :contact_list_name,
3893
+ :filter,
3894
+ :page_size,
3895
+ :next_token)
3896
+ SENSITIVE = []
3897
+ include Aws::Structure
3898
+ end
3899
+
3900
+ # @!attribute [rw] contacts
3901
+ # The contacts present in a specific contact list.
3902
+ # @return [Array<Types::Contact>]
3903
+ #
3904
+ # @!attribute [rw] next_token
3905
+ # A string token indicating that there might be additional contacts
3906
+ # available to be listed. Copy this token to a subsequent call to
3907
+ # `ListContacts` with the same parameters to retrieve the next page of
3908
+ # contacts.
3909
+ # @return [String]
3910
+ #
3911
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListContactsResponse AWS API Documentation
3912
+ #
3913
+ class ListContactsResponse < Struct.new(
3914
+ :contacts,
3915
+ :next_token)
3916
+ SENSITIVE = []
3917
+ include Aws::Structure
3918
+ end
3919
+
3355
3920
  # Represents a request to list the existing custom verification email
3356
3921
  # templates for your account.
3357
3922
  #
@@ -3742,7 +4307,7 @@ module Aws::SESV2
3742
4307
  # data as a hash:
3743
4308
  #
3744
4309
  # {
3745
- # import_destination_type: "SUPPRESSION_LIST", # accepts SUPPRESSION_LIST
4310
+ # import_destination_type: "SUPPRESSION_LIST", # accepts SUPPRESSION_LIST, CONTACT_LIST
3746
4311
  # next_token: "NextToken",
3747
4312
  # page_size: 1,
3748
4313
  # }
@@ -3800,6 +4365,34 @@ module Aws::SESV2
3800
4365
  include Aws::Structure
3801
4366
  end
3802
4367
 
4368
+ # An object used to specify a list or topic to which an email belongs,
4369
+ # which will be used when a contact chooses to unsubscribe.
4370
+ #
4371
+ # @note When making an API call, you may pass ListManagementOptions
4372
+ # data as a hash:
4373
+ #
4374
+ # {
4375
+ # contact_list_name: "ContactListName", # required
4376
+ # topic_name: "TopicName",
4377
+ # }
4378
+ #
4379
+ # @!attribute [rw] contact_list_name
4380
+ # The name of the contact list.
4381
+ # @return [String]
4382
+ #
4383
+ # @!attribute [rw] topic_name
4384
+ # The name of the topic.
4385
+ # @return [String]
4386
+ #
4387
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/ListManagementOptions AWS API Documentation
4388
+ #
4389
+ class ListManagementOptions < Struct.new(
4390
+ :contact_list_name,
4391
+ :topic_name)
4392
+ SENSITIVE = []
4393
+ include Aws::Structure
4394
+ end
4395
+
3803
4396
  # A request to obtain a list of email destinations that are on the
3804
4397
  # suppression list for your account.
3805
4398
  #
@@ -4680,6 +5273,42 @@ module Aws::SESV2
4680
5273
  #
4681
5274
  class PutDeliverabilityDashboardOptionResponse < Aws::EmptyStructure; end
4682
5275
 
5276
+ # A request to associate a configuration set with an email identity.
5277
+ #
5278
+ # @note When making an API call, you may pass PutEmailIdentityConfigurationSetAttributesRequest
5279
+ # data as a hash:
5280
+ #
5281
+ # {
5282
+ # email_identity: "Identity", # required
5283
+ # configuration_set_name: "ConfigurationSetName",
5284
+ # }
5285
+ #
5286
+ # @!attribute [rw] email_identity
5287
+ # The email address or domain that you want to associate with a
5288
+ # configuration set.
5289
+ # @return [String]
5290
+ #
5291
+ # @!attribute [rw] configuration_set_name
5292
+ # The configuration set that you want to associate with an email
5293
+ # identity.
5294
+ # @return [String]
5295
+ #
5296
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/PutEmailIdentityConfigurationSetAttributesRequest AWS API Documentation
5297
+ #
5298
+ class PutEmailIdentityConfigurationSetAttributesRequest < Struct.new(
5299
+ :email_identity,
5300
+ :configuration_set_name)
5301
+ SENSITIVE = []
5302
+ include Aws::Structure
5303
+ end
5304
+
5305
+ # If the action is successful, the service sends back an HTTP 200
5306
+ # response with an empty HTTP body.
5307
+ #
5308
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/PutEmailIdentityConfigurationSetAttributesResponse AWS API Documentation
5309
+ #
5310
+ class PutEmailIdentityConfigurationSetAttributesResponse < Aws::EmptyStructure; end
5311
+
4683
5312
  # A request to enable or disable DKIM signing of email that you send
4684
5313
  # from an email identity.
4685
5314
  #
@@ -5409,6 +6038,10 @@ module Aws::SESV2
5409
6038
  # },
5410
6039
  # ],
5411
6040
  # configuration_set_name: "ConfigurationSetName",
6041
+ # list_management_options: {
6042
+ # contact_list_name: "ContactListName", # required
6043
+ # topic_name: "TopicName",
6044
+ # },
5412
6045
  # }
5413
6046
  #
5414
6047
  # @!attribute [rw] from_email_address
@@ -5493,6 +6126,11 @@ module Aws::SESV2
5493
6126
  # the email.
5494
6127
  # @return [String]
5495
6128
  #
6129
+ # @!attribute [rw] list_management_options
6130
+ # An object used to specify a list or topic to which an email belongs,
6131
+ # which will be used when a contact chooses to unsubscribe.
6132
+ # @return [Types::ListManagementOptions]
6133
+ #
5496
6134
  # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/SendEmailRequest AWS API Documentation
5497
6135
  #
5498
6136
  class SendEmailRequest < Struct.new(
@@ -5504,7 +6142,8 @@ module Aws::SESV2
5504
6142
  :feedback_forwarding_email_address_identity_arn,
5505
6143
  :content,
5506
6144
  :email_tags,
5507
- :configuration_set_name)
6145
+ :configuration_set_name,
6146
+ :list_management_options)
5508
6147
  SENSITIVE = []
5509
6148
  include Aws::Structure
5510
6149
  end
@@ -5981,6 +6620,106 @@ module Aws::SESV2
5981
6620
  #
5982
6621
  class TooManyRequestsException < Aws::EmptyStructure; end
5983
6622
 
6623
+ # An interest group, theme, or label within a list. Lists can have
6624
+ # multiple topics.
6625
+ #
6626
+ # @note When making an API call, you may pass Topic
6627
+ # data as a hash:
6628
+ #
6629
+ # {
6630
+ # topic_name: "TopicName", # required
6631
+ # display_name: "DisplayName", # required
6632
+ # description: "Description",
6633
+ # default_subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
6634
+ # }
6635
+ #
6636
+ # @!attribute [rw] topic_name
6637
+ # The name of the topic.
6638
+ # @return [String]
6639
+ #
6640
+ # @!attribute [rw] display_name
6641
+ # The name of the topic the contact will see.
6642
+ # @return [String]
6643
+ #
6644
+ # @!attribute [rw] description
6645
+ # A description of what the topic is about, which the contact will
6646
+ # see.
6647
+ # @return [String]
6648
+ #
6649
+ # @!attribute [rw] default_subscription_status
6650
+ # The default subscription status to be applied to a contact if the
6651
+ # contact has not noted their preference for subscribing to a topic.
6652
+ # @return [String]
6653
+ #
6654
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/Topic AWS API Documentation
6655
+ #
6656
+ class Topic < Struct.new(
6657
+ :topic_name,
6658
+ :display_name,
6659
+ :description,
6660
+ :default_subscription_status)
6661
+ SENSITIVE = []
6662
+ include Aws::Structure
6663
+ end
6664
+
6665
+ # Used for filtering by a specific topic preference.
6666
+ #
6667
+ # @note When making an API call, you may pass TopicFilter
6668
+ # data as a hash:
6669
+ #
6670
+ # {
6671
+ # topic_name: "TopicName",
6672
+ # use_default_if_preference_unavailable: false,
6673
+ # }
6674
+ #
6675
+ # @!attribute [rw] topic_name
6676
+ # The name of a topic on which you wish to apply the filter.
6677
+ # @return [String]
6678
+ #
6679
+ # @!attribute [rw] use_default_if_preference_unavailable
6680
+ # Notes that the default subscription status should be applied to a
6681
+ # contact because the contact has not noted their preference for
6682
+ # subscribing to a topic.
6683
+ # @return [Boolean]
6684
+ #
6685
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/TopicFilter AWS API Documentation
6686
+ #
6687
+ class TopicFilter < Struct.new(
6688
+ :topic_name,
6689
+ :use_default_if_preference_unavailable)
6690
+ SENSITIVE = []
6691
+ include Aws::Structure
6692
+ end
6693
+
6694
+ # The contact's preference for being opted-in to or opted-out of a
6695
+ # topic.
6696
+ #
6697
+ # @note When making an API call, you may pass TopicPreference
6698
+ # data as a hash:
6699
+ #
6700
+ # {
6701
+ # topic_name: "TopicName", # required
6702
+ # subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
6703
+ # }
6704
+ #
6705
+ # @!attribute [rw] topic_name
6706
+ # The name of the topic.
6707
+ # @return [String]
6708
+ #
6709
+ # @!attribute [rw] subscription_status
6710
+ # The contact's subscription status to a topic which is either
6711
+ # `OPT_IN` or `OPT_OUT`.
6712
+ # @return [String]
6713
+ #
6714
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/TopicPreference AWS API Documentation
6715
+ #
6716
+ class TopicPreference < Struct.new(
6717
+ :topic_name,
6718
+ :subscription_status)
6719
+ SENSITIVE = []
6720
+ include Aws::Structure
6721
+ end
6722
+
5984
6723
  # An object that defines the tracking options for a configuration set.
5985
6724
  # When you use the Amazon SES API v2 to send an email, it contains an
5986
6725
  # invisible image that's used to track when recipients open your email.
@@ -6058,7 +6797,7 @@ module Aws::SESV2
6058
6797
  # event_destination_name: "EventDestinationName", # required
6059
6798
  # event_destination: { # required
6060
6799
  # enabled: false,
6061
- # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY
6800
+ # matching_event_types: ["SEND"], # accepts SEND, REJECT, BOUNCE, COMPLAINT, DELIVERY, OPEN, CLICK, RENDERING_FAILURE, DELIVERY_DELAY, SUBSCRIPTION
6062
6801
  # kinesis_firehose_destination: {
6063
6802
  # iam_role_arn: "AmazonResourceName", # required
6064
6803
  # delivery_stream_arn: "AmazonResourceName", # required
@@ -6111,6 +6850,103 @@ module Aws::SESV2
6111
6850
  #
6112
6851
  class UpdateConfigurationSetEventDestinationResponse < Aws::EmptyStructure; end
6113
6852
 
6853
+ # @note When making an API call, you may pass UpdateContactListRequest
6854
+ # data as a hash:
6855
+ #
6856
+ # {
6857
+ # contact_list_name: "ContactListName", # required
6858
+ # topics: [
6859
+ # {
6860
+ # topic_name: "TopicName", # required
6861
+ # display_name: "DisplayName", # required
6862
+ # description: "Description",
6863
+ # default_subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
6864
+ # },
6865
+ # ],
6866
+ # description: "Description",
6867
+ # }
6868
+ #
6869
+ # @!attribute [rw] contact_list_name
6870
+ # The name of the contact list.
6871
+ # @return [String]
6872
+ #
6873
+ # @!attribute [rw] topics
6874
+ # An interest group, theme, or label within a list. A contact list can
6875
+ # have multiple topics.
6876
+ # @return [Array<Types::Topic>]
6877
+ #
6878
+ # @!attribute [rw] description
6879
+ # A description of what the contact list is about.
6880
+ # @return [String]
6881
+ #
6882
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/UpdateContactListRequest AWS API Documentation
6883
+ #
6884
+ class UpdateContactListRequest < Struct.new(
6885
+ :contact_list_name,
6886
+ :topics,
6887
+ :description)
6888
+ SENSITIVE = []
6889
+ include Aws::Structure
6890
+ end
6891
+
6892
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/UpdateContactListResponse AWS API Documentation
6893
+ #
6894
+ class UpdateContactListResponse < Aws::EmptyStructure; end
6895
+
6896
+ # @note When making an API call, you may pass UpdateContactRequest
6897
+ # data as a hash:
6898
+ #
6899
+ # {
6900
+ # contact_list_name: "ContactListName", # required
6901
+ # email_address: "EmailAddress", # required
6902
+ # topic_preferences: [
6903
+ # {
6904
+ # topic_name: "TopicName", # required
6905
+ # subscription_status: "OPT_IN", # required, accepts OPT_IN, OPT_OUT
6906
+ # },
6907
+ # ],
6908
+ # unsubscribe_all: false,
6909
+ # attributes_data: "AttributesData",
6910
+ # }
6911
+ #
6912
+ # @!attribute [rw] contact_list_name
6913
+ # The name of the contact list.
6914
+ # @return [String]
6915
+ #
6916
+ # @!attribute [rw] email_address
6917
+ # The contact's email addres.
6918
+ # @return [String]
6919
+ #
6920
+ # @!attribute [rw] topic_preferences
6921
+ # The contact's preference for being opted-in to or opted-out of a
6922
+ # topic.
6923
+ # @return [Array<Types::TopicPreference>]
6924
+ #
6925
+ # @!attribute [rw] unsubscribe_all
6926
+ # A boolean value status noting if the contact is unsubscribed from
6927
+ # all contact list topics.
6928
+ # @return [Boolean]
6929
+ #
6930
+ # @!attribute [rw] attributes_data
6931
+ # The attribute data attached to a contact.
6932
+ # @return [String]
6933
+ #
6934
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/UpdateContactRequest AWS API Documentation
6935
+ #
6936
+ class UpdateContactRequest < Struct.new(
6937
+ :contact_list_name,
6938
+ :email_address,
6939
+ :topic_preferences,
6940
+ :unsubscribe_all,
6941
+ :attributes_data)
6942
+ SENSITIVE = []
6943
+ include Aws::Structure
6944
+ end
6945
+
6946
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/UpdateContactResponse AWS API Documentation
6947
+ #
6948
+ class UpdateContactResponse < Aws::EmptyStructure; end
6949
+
6114
6950
  # Represents a request to update an existing custom verification email
6115
6951
  # template.
6116
6952
  #