# Amazon Simple Email Service Construct Library

This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.

## Email receiving

Create a receipt rule set with rules and actions (actions can be found in the
`aws-cdk-lib/aws-ses-actions` package):

```ts
import * as s3 from 'aws-cdk-lib/aws-s3';
import * as actions from 'aws-cdk-lib/aws-ses-actions';

const bucket = new s3.Bucket(this, 'Bucket');
const topic = new sns.Topic(this, 'Topic');

new ses.ReceiptRuleSet(this, 'RuleSet', {
  rules: [
    {
      recipients: ['hello@aws.com'],
      actions: [
        new actions.AddHeader({
          name: 'X-Special-Header',
          value: 'aws',
        }),
        new actions.S3({
          bucket,
          objectKeyPrefix: 'emails/',
          topic,
        }),
      ],
    },
    {
      recipients: ['aws.com'],
      actions: [
        new actions.Sns({
          topic,
        }),
      ],
    },
  ],
});
```

Alternatively, rules can be added to a rule set:

```ts
const ruleSet = new ses.ReceiptRuleSet(this, 'RuleSet');

const awsRule = ruleSet.addRule('Aws', {
  recipients: ['aws.com'],
});
```

And actions to rules:

```ts
import * as actions from 'aws-cdk-lib/aws-ses-actions';

declare const awsRule: ses.ReceiptRule;
declare const topic: sns.Topic;
awsRule.addAction(new actions.Sns({
  topic,
}));
```

When using `addRule`, the new rule is added after the last added rule unless `after` is specified.

### Drop spams

A rule to drop spam can be added by setting `dropSpam` to `true`:

```ts
new ses.ReceiptRuleSet(this, 'RuleSet', {
  dropSpam: true,
});
```

This will add a rule at the top of the rule set with a Lambda action that stops processing messages that have at least one spam indicator. See [Lambda Function Examples](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda-example-functions.html).

### Receipt filter

Create a receipt filter:

```ts
new ses.ReceiptFilter(this, 'Filter', {
  ip: '1.2.3.4/16', // Will be blocked
});
```

An allow list filter is also available:

```ts
new ses.AllowListReceiptFilter(this, 'AllowList', {
  ips: [
    '10.0.0.0/16',
    '1.2.3.4/16',
  ],
});
```

This will first create a block all filter and then create allow filters for the listed ip addresses.

### AWS Service Principal permissions

When adding an s3 action to a receipt rule, the CDK will automatically create a policy statement that allows the ses service principal to get write access to the bucket. This is done with the `SourceAccount` condition key, which is automatically added to the policy statement.
Previously, the policy used the `Referer` condition key, which caused confused deputy problems when the bucket policy allowed access to the bucket for all principals.
See more information in [this github issue](https://github.com/aws/aws-cdk/issues/29811)

## Email sending

### Dedicated IP pools

When you create a new Amazon SES account, your emails are sent from IP addresses that are shared with other
Amazon SES users. For [an additional monthly charge](https://aws.amazon.com/ses/pricing/), you can lease
dedicated IP addresses that are reserved for your exclusive use.

Use the DedicatedIpPool construct to create a pool of dedicated IP addresses. When specifying a name for your dedicated IP pool, ensure that it adheres to the following naming convention:

- The name must include only lowercase letters (a-z), numbers (0-9), underscores (_), and hyphens (-).
- The name must not exceed 64 characters in length.

```ts
new ses.DedicatedIpPool(this, 'Pool', {
  dedicatedIpPoolName: 'mypool',
  scalingMode: ses.ScalingMode.STANDARD,
});
```

The pool can then be used in a configuration set. If the provided dedicatedIpPoolName does not follow the specified naming convention, an error will be thrown.

### Configuration sets

Configuration sets are groups of rules that you can apply to your verified identities. A verified identity is
a domain, subdomain, or email address you use to send email through Amazon SES. When you apply a configuration
set to an email, all of the rules in that configuration set are applied to the email.

Use the [`ConfigurationSet`](/v2/docs/aws-cdk-lib.aws_ses.ConfigurationSet) construct to create a configuration set:

```ts
import { Duration } from 'aws-cdk-lib';

declare const myPool: ses.IDedicatedIpPool;

new ses.ConfigurationSet(this, 'ConfigurationSet', {
  tlsPolicy: ses.ConfigurationSetTlsPolicy.REQUIRE,
  dedicatedIpPool: myPool,
  // Specify maximum delivery time
  // This configuration can be useful in such cases as time-sensitive emails (like those containing a one-time-password),
  // transactional emails, and email that you want to ensure isn't delivered during non-business hours.
  maxDeliveryDuration: Duration.minutes(10),
});
```

Use `addEventDestination()` to publish email sending events to Amazon SNS, Amazon CloudWatch, Amazon Data Firehose or Amazon EventBridge:

```ts
declare const myConfigurationSet: ses.ConfigurationSet;
declare const myTopic: sns.Topic;

myConfigurationSet.addEventDestination('ToSns', {
  destination: ses.EventDestination.snsTopic(myTopic),
})
```

**Note**: For EventBridge, you must specify the default EventBus:

```ts
import * as events from 'aws-cdk-lib/aws-events';

declare const myConfigurationSet: ses.ConfigurationSet;

const bus = events.EventBus.fromEventBusName(this, 'EventBus', 'default');

myConfigurationSet.addEventDestination('ToEventBus', {
  destination: ses.EventDestination.eventBus(bus),
})
```

For Firehose, if you don't specify IAM Role ARN for Amazon SES to send events. An IAM Role will be created automatically following https://docs.aws.amazon.com/ses/latest/dg/event-publishing-add-event-destination-firehose.html.

```ts
import * as iam from 'aws-cdk-lib/aws-iam';
import * as firehose from 'aws-cdk-lib/aws-kinesisfirehose';

declare const myConfigurationSet: ses.ConfigurationSet;
declare const firehoseDeliveryStream: firehose.IDeliveryStream;
declare const iamRole: iam.IRole;

// Create IAM Role automatically
myConfigurationSet.addEventDestination('ToFirehose', {
  destination: ses.EventDestination.firehoseDeliveryStream({
    deliveryStream: firehoseDeliveryStream,
  }),
})

// Specify your IAM Role
myConfigurationSet.addEventDestination('ToFirehose', {
  destination: ses.EventDestination.firehoseDeliveryStream({
    deliveryStream: firehoseDeliveryStream,
    role: iamRole,
  }),
})
```

#### Tracking options

You can specify to use a custom redirect domain to handle open and click tracking for email sent with this configuration set by using `customTrackingRedirectDomain` and `customTrackingHttpsPolicy`.
Detail can be found in [Custom tracking domain](https://docs.aws.amazon.com/ses/latest/dg/configure-custom-open-click-domains.html).

```ts
new ses.ConfigurationSet(this, 'ConfigurationSet', {
  customTrackingRedirectDomain: 'track.cdk.dev',
  customTrackingHttpsPolicy: ses.HttpsPolicy.REQUIRE,
});
```

**Note**: The custom tracking redirect domain must be verified in Amazon SES. To create verified identities, you can use the [`EmailIdentity` construct](#email-identity).

### Override account-level suppression list settings

You can customize account-level suppression list separately for different configuration sets by overriding it
with configuration set-level suppression.

For details, see [Using configuration set-level suppression to override your account-level suppression list](https://docs.aws.amazon.com/ses/latest/dg/sending-email-suppression-list-config-level.html).

By default, the configuration set uses your account-level suppression list settings.

You can disable account-level suppression list by specifying `disableSuppressionList` to true. Email sent with this configuration set will not use any suppression settings at all.

```ts
new ses.ConfigurationSet(this, 'ConfigurationSet', {
  disableSuppressionList: true,
});
```

You can also override account level settings with configuration set-level suppression enabled. Email sent with this configuration set will only use the suppression conditions you enabled for it (bounces, complaints, or bounces and complaints) - regardless of what your account-level suppression list settings are, it will override them.

```ts
// Only bounces will be suppressed.
new ses.ConfigurationSet(this, 'ConfigurationSet', {
  suppressionReasons: ses.SuppressionReasons.BOUNCES_ONLY,
});

// Only complaints will be suppressed.
new ses.ConfigurationSet(this, 'ConfigurationSet', {
  suppressionReasons: ses.SuppressionReasons.COMPLAINTS_ONLY,
});

// Both bounces and complaints will be suppressed.
new ses.ConfigurationSet(this, 'ConfigurationSet', {
  suppressionReasons: ses.SuppressionReasons.BOUNCES_AND_COMPLAINTS,
});
```

#### Auto Validation threshold

Auto validation automatically reviews all outbound email addresses before sending and only delivers messages to recipients meeting your selected validation threshold. This protects sender reputation by preventing sends to invalid or risky addresses.

You can override the account-level Auto Validation settings at the configuration set level using `autoValidationThreshold`:

- `MANAGED` - Amazon SES automatically optimizes threshold based on sending patterns and reputation (recommended)
- `HIGH` - Only addresses with high delivery likelihood (maximum reputation protection)
- `MEDIUM` - Addresses with medium or high delivery likelihood (balances protection with reach)

For more details, see [Auto Validation](https://docs.aws.amazon.com/ses/latest/dg/email-validation-auto.html).

```ts
new ses.ConfigurationSet(this, 'ConfigurationSet', {
  autoValidationThreshold: ses.AutoValidationThreshold.HIGH,
});
```

Use `disableAutoValidation` to turn the feature on or off for this configuration set, regardless of the account-level setting:

```ts
// Explicitly disable Auto Validation for this configuration set.
new ses.ConfigurationSet(this, 'NoAutoValidation', {
  disableAutoValidation: true,
});
```

### Email identity

In Amazon SES, a verified identity is a domain or email address that you use to send or receive email. Before you
can send an email using Amazon SES, you must create and verify each identity that you're going to use as a `From`,
`Source`, `Sender`, or `Return-Path` address. Verifying an identity with Amazon SES confirms that you own it and
helps prevent unauthorized use.

To verify an identity for a hosted zone, you create an [`EmailIdentity`](/v2/docs/aws-cdk-lib.aws_ses.EmailIdentity):

```ts
declare const myHostedZone: route53.IPublicHostedZone;

const identity = new ses.EmailIdentity(this, 'Identity', {
  identity: ses.Identity.publicHostedZone(myHostedZone),
  mailFromDomain: 'mail.cdk.dev',
});
```

By default, [Easy DKIM](https://docs.aws.amazon.com/ses/latest/dg/send-email-authentication-dkim-easy.html) with
a 2048-bit DKIM key is used.

You can instead configure DKIM authentication by using your own public-private key pair. This process is known
as [Bring Your Own DKIM (BYODKIM)](https://docs.aws.amazon.com/ses/latest/dg/send-email-authentication-dkim-bring-your-own.html):

```ts
declare const myHostedZone: route53.IPublicHostedZone;

new ses.EmailIdentity(this, 'Identity', {
  identity: ses.Identity.publicHostedZone(myHostedZone),
  dkimIdentity: ses.DkimIdentity.byoDkim({
    privateKey: SecretValue.secretsManager('dkim-private-key'),
    publicKey: '...base64-encoded-public-key...',
    selector: 'selector',
  }),
});
```

When using `publicHostedZone()` for the identity, all necessary Amazon Route 53 records are created automatically:

* CNAME records for Easy DKIM
* TXT record for BYOD DKIM
* MX and TXT records for the custom MAIL FROM

When working with `domain()`, records must be created manually:

```ts
const identity = new ses.EmailIdentity(this, 'Identity', {
  identity: ses.Identity.domain('cdk.dev'),
});

for (const record of identity.dkimRecords) {
  // create CNAME records using `record.name` and `record.value`
}
```

#### Grants

To grant a specific action to a principal use the `grant` method.
For sending emails, `grantSendEmail` can be used instead:

```ts
import * as iam from 'aws-cdk-lib/aws-iam';
declare const user: iam.User;

const identity = new ses.EmailIdentity(this, 'Identity', {
  identity: ses.Identity.domain('cdk.dev'),
});

identity.grantSendEmail(user);
```

You can also reference an existing email identity using its ARN and grant permissions to it:

```ts
import * as iam from 'aws-cdk-lib/aws-iam';
declare const user: iam.User;

// Imports an existing email identity using its ARN.
// This is one way to reference an existing identity; another option is using its name via fromEmailIdentityName.
const importedIdentity = ses.EmailIdentity.fromEmailIdentityArn(this, 'ImportedIdentity',
  'arn:aws:ses:us-east-1:123456789012:identity/example.com');

// Grant send email permission to the imported identity
importedIdentity.grantSendEmail(user);
```

### Virtual Deliverability Manager (VDM)

Virtual Deliverability Manager is an Amazon SES feature that helps you enhance email deliverability,
like increasing inbox deliverability and email conversions, by providing insights into your sending
and delivery data, and giving advice on how to fix the issues that are negatively affecting your
delivery success rate and reputation.

Use the [`VdmAttributes`](/v2/docs/aws-cdk-lib.aws_ses.VdmAttributes) construct to configure the Virtual Deliverability Manager for your account:

```ts
// Enables engagement tracking and optimized shared delivery by default
new ses.VdmAttributes(this, 'Vdm');
```

If you want to override the VDM settings in the specified configuration set, use `vdmOptions` in the [`ConfigurationSet`](/v2/docs/aws-cdk-lib.aws_ses.ConfigurationSet) construct.

> **Note:** The configuration set level settings need to be used together with the account level settings. (To set the account level settings using CDK, use the [`VdmAttributes`](/v2/docs/aws-cdk-lib.aws_ses.VdmAttributes) Construct.)
If you enable only the configuration set level settings, VDM will not be enabled until the account level settings are configured.
For more information, see [Virtual Deliverability Manager settings](https://docs.aws.amazon.com/ses/latest/dg/vdm-settings.html).

```ts
new ses.ConfigurationSet(this, 'ConfigurationSetWithVdmOptions', {
  vdmOptions: {
    engagementMetrics: true,
    optimizedSharedDelivery: true,
  },
});
```

## Types

| Name | Kind | Summary |
| --- | --- | --- |
| [`ConfigurationSet`](/v2/docs/aws-cdk-lib.aws_ses.ConfigurationSet) | Construct (L2) | A configuration set. |
| [`ConfigurationSetEventDestination`](/v2/docs/aws-cdk-lib.aws_ses.ConfigurationSetEventDestination) | Construct (L2) | A configuration set event destination. |
| [`DedicatedIpPool`](/v2/docs/aws-cdk-lib.aws_ses.DedicatedIpPool) | Construct (L2) | A dedicated IP pool. |
| [`EmailIdentity`](/v2/docs/aws-cdk-lib.aws_ses.EmailIdentity) | Construct (L2) | An email identity. |
| [`ReceiptFilter`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptFilter) | Construct (L2) | A receipt filter. |
| [`ReceiptRule`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptRule) | Construct (L2) | A new receipt rule. |
| [`ReceiptRuleSet`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptRuleSet) | Construct (L2) | A new receipt rule set. |
| [`VdmAttributes`](/v2/docs/aws-cdk-lib.aws_ses.VdmAttributes) | Construct (L2) | Virtual Deliverability Manager (VDM) attributes. |
| [`CfnConfigurationSet`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet) | Construct (L1) | Configuration sets let you create groups of rules that you can apply to the emails you send using Amazon SES. |
| [`CfnConfigurationSetEventDestination`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSetEventDestination) | Construct (L1) | Specifies a configuration set event destination. |
| [`CfnContactList`](/v2/docs/aws-cdk-lib.aws_ses.CfnContactList) | Construct (L1) | A list that contains contacts that have subscribed to a particular topic or topics. |
| [`CfnCustomVerificationEmailTemplate`](/v2/docs/aws-cdk-lib.aws_ses.CfnCustomVerificationEmailTemplate) | Construct (L1) | Resource Type definition for AWS::SES::CustomVerificationEmailTemplate. |
| [`CfnDedicatedIpPool`](/v2/docs/aws-cdk-lib.aws_ses.CfnDedicatedIpPool) | Construct (L1) | Create a new pool of dedicated IP addresses. |
| [`CfnEmailIdentity`](/v2/docs/aws-cdk-lib.aws_ses.CfnEmailIdentity) | Construct (L1) | Specifies an identity for using within SES. |
| [`CfnEmailIdentityCertificate`](/v2/docs/aws-cdk-lib.aws_ses.CfnEmailIdentityCertificate) | Construct (L1) | Associates an AWS Certificate Manager certificate with a sender under an SES email identity, so that SES signs the sender's mail with S/MIME. |
| [`CfnMailManagerAddonInstance`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerAddonInstance) | Construct (L1) | Creates an Add On instance for the subscription indicated in the request. |
| [`CfnMailManagerAddonSubscription`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerAddonSubscription) | Construct (L1) | Creates a subscription for an Add On representing the acceptance of its terms of use and additional pricing. |
| [`CfnMailManagerAddressList`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerAddressList) | Construct (L1) | The structure representing the address lists and address list attribute that will be used in evaluation of boolean expression. |
| [`CfnMailManagerArchive`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerArchive) | Construct (L1) | Creates a new email archive resource for storing and retaining emails. |
| [`CfnMailManagerIngressPoint`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerIngressPoint) | Construct (L1) | Resource to provision an ingress endpoint for receiving email. |
| [`CfnMailManagerRelay`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRelay) | Construct (L1) | Resource to create an SMTP relay, which can be used within a Mail Manager rule set to forward incoming emails to defined relay destinations. |
| [`CfnMailManagerRuleSet`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet) | Construct (L1) | Resource to create a rule set for a Mail Manager ingress endpoint which contains a list of rules that are evaluated sequentially for each email. |
| [`CfnMailManagerTrafficPolicy`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy) | Construct (L1) | Resource to create a traffic policy for a Mail Manager ingress endpoint which contains policy statements used to evaluate whether incoming emails should be allowed or denied. |
| [`CfnMultiRegionEndpoint`](/v2/docs/aws-cdk-lib.aws_ses.CfnMultiRegionEndpoint) | Construct (L1) | Creates a multi-region endpoint (global-endpoint). |
| [`CfnReceiptFilter`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptFilter) | Construct (L1) | Specify a new IP address filter. |
| [`CfnReceiptRule`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule) | Construct (L1) | Specifies a receipt rule. |
| [`CfnReceiptRuleSet`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRuleSet) | Construct (L1) | Creates an empty receipt rule set. |
| [`CfnTemplate`](/v2/docs/aws-cdk-lib.aws_ses.CfnTemplate) | Construct (L1) | Specifies an email template. |
| [`CfnTenant`](/v2/docs/aws-cdk-lib.aws_ses.CfnTenant) | Construct (L1) | Create a tenant. |
| [`CfnVdmAttributes`](/v2/docs/aws-cdk-lib.aws_ses.CfnVdmAttributes) | Construct (L1) | The Virtual Deliverability Manager (VDM) attributes that apply to your Amazon SES account. |
| [`AddHeaderActionConfig`](/v2/docs/aws-cdk-lib.aws_ses.AddHeaderActionConfig) | Struct | AddHeaderAction configuration. |
| [`AllowListReceiptFilter`](/v2/docs/aws-cdk-lib.aws_ses.AllowListReceiptFilter) | Construct | An allow list receipt filter. |
| [`AllowListReceiptFilterProps`](/v2/docs/aws-cdk-lib.aws_ses.AllowListReceiptFilterProps) | Struct | Construction properties for am AllowListReceiptFilter. |
| [`AutoValidationThreshold`](/v2/docs/aws-cdk-lib.aws_ses.AutoValidationThreshold) | Enum | Confidence threshold used by SES Auto Validation to decide whether an outbound recipient address should be delivered to. |
| [`BounceActionConfig`](/v2/docs/aws-cdk-lib.aws_ses.BounceActionConfig) | Struct | BoundAction configuration. |
| [`ByoDkimOptions`](/v2/docs/aws-cdk-lib.aws_ses.ByoDkimOptions) | Struct | Options for BYO DKIM. |
| [`CfnConfigurationSet.ArchivingOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.ArchivingOptionsProperty) | Struct | An object that defines a MailManager archive that is used to preserve emails that you send using the configuration set. |
| [`CfnConfigurationSet.ConditionThresholdProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.ConditionThresholdProperty) | Struct | The condition threshold settings for suppression validation. |
| [`CfnConfigurationSet.DashboardOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.DashboardOptionsProperty) | Struct | An object containing additional settings for your VDM configuration as applicable to the Dashboard. |
| [`CfnConfigurationSet.DeliveryOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.DeliveryOptionsProperty) | Struct | Specifies the name of the dedicated IP pool to associate with the configuration set and whether messages that use the configuration set are required to use Transport Layer Security (TLS). |
| [`CfnConfigurationSet.GuardianOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.GuardianOptionsProperty) | Struct | An object containing additional settings for your VDM configuration as applicable to the Guardian. |
| [`CfnConfigurationSet.OverallConfidenceThresholdProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.OverallConfidenceThresholdProperty) | Struct | The overall confidence threshold settings. |
| [`CfnConfigurationSet.ReputationOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.ReputationOptionsProperty) | Struct | Enable or disable collection of reputation metrics for emails that you send using this configuration set in the current AWS Region. |
| [`CfnConfigurationSet.SendingOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.SendingOptionsProperty) | Struct | Used to enable or disable email sending for messages that use this configuration set in the current AWS Region. |
| [`CfnConfigurationSet.SuppressionOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.SuppressionOptionsProperty) | Struct | An object that contains information about the suppression list preferences for your account. |
| [`CfnConfigurationSet.TrackingOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.TrackingOptionsProperty) | Struct | An object that defines the tracking options for a configuration set. |
| [`CfnConfigurationSet.ValidationOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.ValidationOptionsProperty) | Struct | An object that contains information about the validation options for your account. |
| [`CfnConfigurationSet.VdmOptionsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSet.VdmOptionsProperty) | Struct | The Virtual Deliverability Manager (VDM) options that apply to a configuration set. |
| [`CfnConfigurationSetEventDestination.CloudWatchDestinationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSetEventDestination.CloudWatchDestinationProperty) | Struct | An object that defines an Amazon CloudWatch destination for email events. |
| [`CfnConfigurationSetEventDestination.DimensionConfigurationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSetEventDestination.DimensionConfigurationProperty) | Struct | An object that defines the dimension configuration to use when you send email events to Amazon CloudWatch. |
| [`CfnConfigurationSetEventDestination.EventBridgeDestinationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSetEventDestination.EventBridgeDestinationProperty) | Struct | An object that defines an Amazon EventBridge destination for email events. |
| [`CfnConfigurationSetEventDestination.EventDestinationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSetEventDestination.EventDestinationProperty) | Struct | In the Amazon SES API v2, *events* include message sends, deliveries, opens, clicks, bounces, complaints and delivery delays. |
| [`CfnConfigurationSetEventDestination.KinesisFirehoseDestinationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSetEventDestination.KinesisFirehoseDestinationProperty) | Struct | An object that defines an Amazon Kinesis Data Firehose destination for email events. |
| [`CfnConfigurationSetEventDestination.SnsDestinationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSetEventDestination.SnsDestinationProperty) | Struct | Contains the topic ARN associated with an Amazon Simple Notification Service (Amazon SNS) event destination. |
| [`CfnConfigurationSetEventDestinationProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSetEventDestinationProps) | Struct | Properties for defining a `CfnConfigurationSetEventDestination`. |
| [`CfnConfigurationSetProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnConfigurationSetProps) | Struct | Properties for defining a `CfnConfigurationSet`. |
| [`CfnContactList.TopicProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnContactList.TopicProperty) | Struct | An interest group, theme, or label within a list. |
| [`CfnContactListProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnContactListProps) | Struct | Properties for defining a `CfnContactList`. |
| [`CfnCustomVerificationEmailTemplateProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnCustomVerificationEmailTemplateProps) | Struct | Properties for defining a `CfnCustomVerificationEmailTemplate`. |
| [`CfnDedicatedIpPoolProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnDedicatedIpPoolProps) | Struct | Properties for defining a `CfnDedicatedIpPool`. |
| [`CfnEmailIdentity.ConfigurationSetAttributesProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnEmailIdentity.ConfigurationSetAttributesProperty) | Struct | Used to associate a configuration set with an email identity. |
| [`CfnEmailIdentity.DkimAttributesProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnEmailIdentity.DkimAttributesProperty) | Struct | Used to enable or disable DKIM authentication for an email identity. |
| [`CfnEmailIdentity.DkimSigningAttributesProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnEmailIdentity.DkimSigningAttributesProperty) | Struct | Used to configure or change the DKIM authentication settings for an email domain identity. |
| [`CfnEmailIdentity.FeedbackAttributesProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnEmailIdentity.FeedbackAttributesProperty) | Struct | Used to enable or disable feedback forwarding for an identity. |
| [`CfnEmailIdentity.MailFromAttributesProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnEmailIdentity.MailFromAttributesProperty) | Struct | Used to enable or disable the custom Mail-From domain configuration for an email identity. |
| [`CfnEmailIdentityCertificateProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnEmailIdentityCertificateProps) | Struct | Properties for defining a `CfnEmailIdentityCertificate`. |
| [`CfnEmailIdentityProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnEmailIdentityProps) | Struct | Properties for defining a `CfnEmailIdentity`. |
| [`CfnMailManagerAddonInstanceProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerAddonInstanceProps) | Struct | Properties for defining a `CfnMailManagerAddonInstance`. |
| [`CfnMailManagerAddonSubscriptionProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerAddonSubscriptionProps) | Struct | Properties for defining a `CfnMailManagerAddonSubscription`. |
| [`CfnMailManagerAddressListProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerAddressListProps) | Struct | Properties for defining a `CfnMailManagerAddressList`. |
| [`CfnMailManagerArchive.ArchiveRetentionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerArchive.ArchiveRetentionProperty) | Struct | The retention policy for an email archive that specifies how long emails are kept before being automatically deleted. |
| [`CfnMailManagerArchiveProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerArchiveProps) | Struct | Properties for defining a `CfnMailManagerArchive`. |
| [`CfnMailManagerIngressPoint.IngressPointConfigurationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerIngressPoint.IngressPointConfigurationProperty) | Struct | The configuration of the ingress endpoint resource. |
| [`CfnMailManagerIngressPoint.NetworkConfigurationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerIngressPoint.NetworkConfigurationProperty) | Struct | The network type (IPv4-only, Dual-Stack, PrivateLink) of the ingress endpoint resource. |
| [`CfnMailManagerIngressPoint.PrivateNetworkConfigurationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerIngressPoint.PrivateNetworkConfigurationProperty) | Struct | Specifies the network configuration for the private ingress point. |
| [`CfnMailManagerIngressPoint.PublicNetworkConfigurationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerIngressPoint.PublicNetworkConfigurationProperty) | Struct | Specifies the network configuration for the public ingress point. |
| [`CfnMailManagerIngressPoint.TlsAuthConfigurationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerIngressPoint.TlsAuthConfigurationProperty) | Struct |  |
| [`CfnMailManagerIngressPoint.TrustStoreProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerIngressPoint.TrustStoreProperty) | Struct |  |
| [`CfnMailManagerIngressPointProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerIngressPointProps) | Struct | Properties for defining a `CfnMailManagerIngressPoint`. |
| [`CfnMailManagerRelay.RelayAuthenticationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRelay.RelayAuthenticationProperty) | Struct | Authentication for the relay destination server—specify the secretARN where the SMTP credentials are stored, or specify an empty NoAuthentication structure if the relay destination server does not require SMTP credential authentication. |
| [`CfnMailManagerRelayProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRelayProps) | Struct | Properties for defining a `CfnMailManagerRelay`. |
| [`CfnMailManagerRuleSet.AddHeaderActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.AddHeaderActionProperty) | Struct | The action to add a header to a message. |
| [`CfnMailManagerRuleSet.AnalysisProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.AnalysisProperty) | Struct | The result of an analysis can be used in conditions to trigger actions. |
| [`CfnMailManagerRuleSet.ArchiveActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.ArchiveActionProperty) | Struct | The action to archive the email by delivering the email to an Amazon SES archive. |
| [`CfnMailManagerRuleSet.BounceActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.BounceActionProperty) | Struct |  |
| [`CfnMailManagerRuleSet.DeliverToMailboxActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.DeliverToMailboxActionProperty) | Struct | This action to delivers an email to a mailbox. |
| [`CfnMailManagerRuleSet.DeliverToQBusinessActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.DeliverToQBusinessActionProperty) | Struct | The action to deliver incoming emails to an Amazon Q Business application for indexing. |
| [`CfnMailManagerRuleSet.InvokeLambdaActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.InvokeLambdaActionProperty) | Struct |  |
| [`CfnMailManagerRuleSet.RelayActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RelayActionProperty) | Struct | The action relays the email via SMTP to another specific SMTP server. |
| [`CfnMailManagerRuleSet.ReplaceRecipientActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.ReplaceRecipientActionProperty) | Struct | This action replaces the email envelope recipients with the given list of recipients. |
| [`CfnMailManagerRuleSet.RuleActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleActionProperty) | Struct | The action for a rule to take. Only one of the contained actions can be set. |
| [`CfnMailManagerRuleSet.RuleBooleanExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleBooleanExpressionProperty) | Struct | A boolean expression to be used in a rule condition. |
| [`CfnMailManagerRuleSet.RuleBooleanToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleBooleanToEvaluateProperty) | Struct | The union type representing the allowed types of operands for a boolean condition. |
| [`CfnMailManagerRuleSet.RuleConditionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleConditionProperty) | Struct | The conditional expression used to evaluate an email for determining if a rule action should be taken. |
| [`CfnMailManagerRuleSet.RuleDmarcExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleDmarcExpressionProperty) | Struct | A DMARC policy expression. |
| [`CfnMailManagerRuleSet.RuleIpExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleIpExpressionProperty) | Struct | An IP address expression matching certain IP addresses within a given range of IP addresses. |
| [`CfnMailManagerRuleSet.RuleIpToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleIpToEvaluateProperty) | Struct | The IP address to evaluate for this condition. |
| [`CfnMailManagerRuleSet.RuleIsInAddressListProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleIsInAddressListProperty) | Struct | The structure type for a boolean condition that provides the address lists and address list attribute to evaluate. |
| [`CfnMailManagerRuleSet.RuleNumberExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleNumberExpressionProperty) | Struct | A number expression to match numeric conditions with integers from the incoming email. |
| [`CfnMailManagerRuleSet.RuleNumberToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleNumberToEvaluateProperty) | Struct | The number to evaluate in a numeric condition expression. |
| [`CfnMailManagerRuleSet.RuleProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleProperty) | Struct | A rule contains conditions, "unless conditions" and actions. |
| [`CfnMailManagerRuleSet.RuleStringExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleStringExpressionProperty) | Struct | A string expression is evaluated against strings or substrings of the email. |
| [`CfnMailManagerRuleSet.RuleStringToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleStringToEvaluateProperty) | Struct | The string to evaluate in a string condition expression. |
| [`CfnMailManagerRuleSet.RuleVerdictExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleVerdictExpressionProperty) | Struct | A verdict expression is evaluated against verdicts of the email. |
| [`CfnMailManagerRuleSet.RuleVerdictToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.RuleVerdictToEvaluateProperty) | Struct | The verdict to evaluate in a verdict condition expression. |
| [`CfnMailManagerRuleSet.S3ActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.S3ActionProperty) | Struct | Writes the MIME content of the email to an S3 bucket. |
| [`CfnMailManagerRuleSet.SendActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.SendActionProperty) | Struct | Sends the email to the internet using the ses:SendRawEmail API. |
| [`CfnMailManagerRuleSet.SnsActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSet.SnsActionProperty) | Struct | The action to publish the email content to an Amazon SNS topic. |
| [`CfnMailManagerRuleSetProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerRuleSetProps) | Struct | Properties for defining a `CfnMailManagerRuleSet`. |
| [`CfnMailManagerTrafficPolicy.IngressAnalysisProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressAnalysisProperty) | Struct | The Add On ARN and its returned value that is evaluated in a policy statement's conditional expression to either deny or block the incoming email. |
| [`CfnMailManagerTrafficPolicy.IngressBooleanExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressBooleanExpressionProperty) | Struct | The structure for a boolean condition matching on the incoming mail. |
| [`CfnMailManagerTrafficPolicy.IngressBooleanToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressBooleanToEvaluateProperty) | Struct | The union type representing the allowed types of operands for a boolean condition. |
| [`CfnMailManagerTrafficPolicy.IngressIpToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressIpToEvaluateProperty) | Struct | The structure for an IP based condition matching on the incoming mail. |
| [`CfnMailManagerTrafficPolicy.IngressIpv4ExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressIpv4ExpressionProperty) | Struct | The union type representing the allowed types for the left hand side of an IP condition. |
| [`CfnMailManagerTrafficPolicy.IngressIpv6ExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressIpv6ExpressionProperty) | Struct | The union type representing the allowed types for the left hand side of an IPv6 condition. |
| [`CfnMailManagerTrafficPolicy.IngressIpv6ToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressIpv6ToEvaluateProperty) | Struct | The structure for an IPv6 based condition matching on the incoming mail. |
| [`CfnMailManagerTrafficPolicy.IngressIsInAddressListProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressIsInAddressListProperty) | Struct | The address lists and the address list attribute value that is evaluated in a policy statement's conditional expression to either deny or block the incoming email. |
| [`CfnMailManagerTrafficPolicy.IngressStringExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressStringExpressionProperty) | Struct | The structure for a string based condition matching on the incoming mail. |
| [`CfnMailManagerTrafficPolicy.IngressStringToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressStringToEvaluateProperty) | Struct | The union type representing the allowed types for the left hand side of a string condition. |
| [`CfnMailManagerTrafficPolicy.IngressTlsProtocolExpressionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressTlsProtocolExpressionProperty) | Struct | The structure for a TLS related condition matching on the incoming mail. |
| [`CfnMailManagerTrafficPolicy.IngressTlsProtocolToEvaluateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.IngressTlsProtocolToEvaluateProperty) | Struct | The union type representing the allowed types for the left hand side of a TLS condition. |
| [`CfnMailManagerTrafficPolicy.PolicyConditionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.PolicyConditionProperty) | Struct | The email traffic filtering conditions which are contained in a traffic policy resource. |
| [`CfnMailManagerTrafficPolicy.PolicyStatementProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy.PolicyStatementProperty) | Struct | The structure containing traffic policy conditions and actions. |
| [`CfnMailManagerTrafficPolicyProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicyProps) | Struct | Properties for defining a `CfnMailManagerTrafficPolicy`. |
| [`CfnMultiRegionEndpoint.DetailsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMultiRegionEndpoint.DetailsProperty) | Struct | An object that contains configuration details of multi-region endpoint (global-endpoint). |
| [`CfnMultiRegionEndpoint.RouteDetailsItemsProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnMultiRegionEndpoint.RouteDetailsItemsProperty) | Struct | An object that contains route configuration. |
| [`CfnMultiRegionEndpointProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnMultiRegionEndpointProps) | Struct | Properties for defining a `CfnMultiRegionEndpoint`. |
| [`CfnReceiptFilter.FilterProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptFilter.FilterProperty) | Struct | Specifies an IP address filter. |
| [`CfnReceiptFilter.IpFilterProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptFilter.IpFilterProperty) | Struct | A receipt IP address filter enables you to specify whether to accept or reject mail originating from an IP address or range of IP addresses. |
| [`CfnReceiptFilterProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptFilterProps) | Struct | Properties for defining a `CfnReceiptFilter`. |
| [`CfnReceiptRule.ActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.ActionProperty) | Struct | An action that Amazon SES can take when it receives an email on behalf of one or more email addresses or domains that you own. |
| [`CfnReceiptRule.AddHeaderActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.AddHeaderActionProperty) | Struct | When included in a receipt rule, this action adds a header to the received email. |
| [`CfnReceiptRule.BounceActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.BounceActionProperty) | Struct | When included in a receipt rule, this action rejects the received email by returning a bounce response to the sender and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS). |
| [`CfnReceiptRule.ConnectActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.ConnectActionProperty) | Struct | When included in a receipt rule, this action parses the received message and starts an email contact in Amazon Connect on your behalf. |
| [`CfnReceiptRule.LambdaActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.LambdaActionProperty) | Struct | When included in a receipt rule, this action calls an AWS Lambda function and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS). |
| [`CfnReceiptRule.RuleProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.RuleProperty) | Struct | Receipt rules enable you to specify which actions Amazon SES should take when it receives mail on behalf of one or more email addresses or domains that you own. |
| [`CfnReceiptRule.S3ActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.S3ActionProperty) | Struct | When included in a receipt rule, this action saves the received message to an Amazon Simple Storage Service (Amazon S3) bucket and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS). |
| [`CfnReceiptRule.SNSActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.SNSActionProperty) | Struct | The action to publish the email content to an Amazon SNS topic. |
| [`CfnReceiptRule.StopActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.StopActionProperty) | Struct | When included in a receipt rule, this action terminates the evaluation of the receipt rule set and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS). |
| [`CfnReceiptRule.WorkmailActionProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRule.WorkmailActionProperty) | Struct | When included in a receipt rule, this action calls Amazon WorkMail and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS). |
| [`CfnReceiptRuleProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRuleProps) | Struct | Properties for defining a `CfnReceiptRule`. |
| [`CfnReceiptRuleSetProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnReceiptRuleSetProps) | Struct | Properties for defining a `CfnReceiptRuleSet`. |
| [`CfnTemplate.TemplateProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnTemplate.TemplateProperty) | Struct | An object that defines the email template to use for an email message, and the values to use for any message variables in that template. |
| [`CfnTemplateProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnTemplateProps) | Struct | Properties for defining a `CfnTemplate`. |
| [`CfnTenant.ReputationEntityProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnTenant.ReputationEntityProperty) | Struct | The reputation configuration for the tenant. |
| [`CfnTenant.ReputationPolicyProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnTenant.ReputationPolicyProperty) | Struct | The reputation policy for the tenant. |
| [`CfnTenant.ResourceAssociationProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnTenant.ResourceAssociationProperty) | Struct | The resource to associate with the tenant. |
| [`CfnTenant.TenantSuppressionAttributesProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnTenant.TenantSuppressionAttributesProperty) | Struct | The suppression attributes for the tenant. |
| [`CfnTenantProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnTenantProps) | Struct | Properties for defining a `CfnTenant`. |
| [`CfnVdmAttributes.DashboardAttributesProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnVdmAttributes.DashboardAttributesProperty) | Struct | An object containing additional settings for your VDM configuration as applicable to the Dashboard. |
| [`CfnVdmAttributes.GuardianAttributesProperty`](/v2/docs/aws-cdk-lib.aws_ses.CfnVdmAttributes.GuardianAttributesProperty) | Struct | An object containing additional settings for your VDM configuration as applicable to the Guardian. |
| [`CfnVdmAttributesProps`](/v2/docs/aws-cdk-lib.aws_ses.CfnVdmAttributesProps) | Struct | Properties for defining a `CfnVdmAttributes`. |
| [`CloudWatchDimension`](/v2/docs/aws-cdk-lib.aws_ses.CloudWatchDimension) | Struct | A CloudWatch dimension upon which to categorize your emails. |
| [`CloudWatchDimensionSource`](/v2/docs/aws-cdk-lib.aws_ses.CloudWatchDimensionSource) | Enum | Source for CloudWatch dimension. |
| [`ConfigurationSetEventDestinationAttributes`](/v2/docs/aws-cdk-lib.aws_ses.ConfigurationSetEventDestinationAttributes) | Struct | Properties of a reference to an existing configuration set event destination. |
| [`ConfigurationSetEventDestinationOptions`](/v2/docs/aws-cdk-lib.aws_ses.ConfigurationSetEventDestinationOptions) | Struct | Options for a configuration set event destination. |
| [`ConfigurationSetEventDestinationProps`](/v2/docs/aws-cdk-lib.aws_ses.ConfigurationSetEventDestinationProps) | Struct | Properties for a configuration set event destination. |
| [`ConfigurationSetProps`](/v2/docs/aws-cdk-lib.aws_ses.ConfigurationSetProps) | Struct | Properties for a configuration set. |
| [`ConfigurationSetTlsPolicy`](/v2/docs/aws-cdk-lib.aws_ses.ConfigurationSetTlsPolicy) | Enum | TLS policy for a configuration set. |
| [`DedicatedIpPoolProps`](/v2/docs/aws-cdk-lib.aws_ses.DedicatedIpPoolProps) | Struct | Properties for a dedicated IP pool. |
| [`DkimIdentity`](/v2/docs/aws-cdk-lib.aws_ses.DkimIdentity) | Class | The identity to use for DKIM. |
| [`DkimIdentityConfig`](/v2/docs/aws-cdk-lib.aws_ses.DkimIdentityConfig) | Struct | Configuration for DKIM identity. |
| [`DkimRecord`](/v2/docs/aws-cdk-lib.aws_ses.DkimRecord) | Struct | A DKIM record. |
| [`DropSpamReceiptRule`](/v2/docs/aws-cdk-lib.aws_ses.DropSpamReceiptRule) | Construct | A rule added at the top of the rule set to drop spam/virus. |
| [`DropSpamReceiptRuleProps`](/v2/docs/aws-cdk-lib.aws_ses.DropSpamReceiptRuleProps) | Struct |  |
| [`EasyDkimSigningKeyLength`](/v2/docs/aws-cdk-lib.aws_ses.EasyDkimSigningKeyLength) | Enum | The signing key length for Easy DKIM. |
| [`EmailIdentityProps`](/v2/docs/aws-cdk-lib.aws_ses.EmailIdentityProps) | Struct | Properties for an email identity. |
| [`EmailSendingEvent`](/v2/docs/aws-cdk-lib.aws_ses.EmailSendingEvent) | Enum | Email sending event. |
| [`EventDestination`](/v2/docs/aws-cdk-lib.aws_ses.EventDestination) | Class | An event destination. |
| [`FirehoseDeliveryStreamDestination`](/v2/docs/aws-cdk-lib.aws_ses.FirehoseDeliveryStreamDestination) | Struct | An object that defines an Amazon Data Firehose destination for email events. |
| [`HttpsPolicy`](/v2/docs/aws-cdk-lib.aws_ses.HttpsPolicy) | Enum | HTTPS policy option for the protocol of the open and click tracking links for your custom redirect domain. |
| [`IConfigurationSet`](/v2/docs/aws-cdk-lib.aws_ses.IConfigurationSet) | Interface | A configuration set. |
| [`IConfigurationSetEventDestination`](/v2/docs/aws-cdk-lib.aws_ses.IConfigurationSetEventDestination) | Interface | A configuration set event destination. |
| [`IDedicatedIpPool`](/v2/docs/aws-cdk-lib.aws_ses.IDedicatedIpPool) | Interface | A dedicated IP pool. |
| [`Identity`](/v2/docs/aws-cdk-lib.aws_ses.Identity) | Class | Identity. |
| [`IEmailIdentity`](/v2/docs/aws-cdk-lib.aws_ses.IEmailIdentity) | Interface | An email identity. |
| [`IReceiptRule`](/v2/docs/aws-cdk-lib.aws_ses.IReceiptRule) | Interface | A receipt rule. |
| [`IReceiptRuleAction`](/v2/docs/aws-cdk-lib.aws_ses.IReceiptRuleAction) | Interface | An abstract action for a receipt rule. |
| [`IReceiptRuleSet`](/v2/docs/aws-cdk-lib.aws_ses.IReceiptRuleSet) | Interface | A receipt rule set. |
| [`IVdmAttributes`](/v2/docs/aws-cdk-lib.aws_ses.IVdmAttributes) | Interface | Virtual Deliverability Manager (VDM) attributes. |
| [`LambdaActionConfig`](/v2/docs/aws-cdk-lib.aws_ses.LambdaActionConfig) | Struct | LambdaAction configuration. |
| [`MailFromBehaviorOnMxFailure`](/v2/docs/aws-cdk-lib.aws_ses.MailFromBehaviorOnMxFailure) | Enum | The action to take if the required MX record for the MAIL FROM domain isn't found. |
| [`ReceiptFilterPolicy`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptFilterPolicy) | Enum | The policy for the receipt filter. |
| [`ReceiptFilterProps`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptFilterProps) | Struct | Construction properties for a ReceiptFilter. |
| [`ReceiptRuleActionConfig`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptRuleActionConfig) | Struct | Properties for a receipt rule action. |
| [`ReceiptRuleAttributes`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptRuleAttributes) | Struct | Properties of a reference to an existing receipt rule. |
| [`ReceiptRuleOptions`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptRuleOptions) | Struct | Options to add a receipt rule to a receipt rule set. |
| [`ReceiptRuleProps`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptRuleProps) | Struct | Construction properties for a ReceiptRule. |
| [`ReceiptRuleSetProps`](/v2/docs/aws-cdk-lib.aws_ses.ReceiptRuleSetProps) | Struct | Construction properties for a ReceiptRuleSet. |
| [`S3ActionConfig`](/v2/docs/aws-cdk-lib.aws_ses.S3ActionConfig) | Struct | S3Action configuration. |
| [`ScalingMode`](/v2/docs/aws-cdk-lib.aws_ses.ScalingMode) | Enum | Scaling mode to use for this IP pool. |
| [`SNSActionConfig`](/v2/docs/aws-cdk-lib.aws_ses.SNSActionConfig) | Struct | SNSAction configuration. |
| [`StopActionConfig`](/v2/docs/aws-cdk-lib.aws_ses.StopActionConfig) | Struct | StopAction configuration. |
| [`SuppressionReasons`](/v2/docs/aws-cdk-lib.aws_ses.SuppressionReasons) | Enum | Reasons for which recipient email addresses should be automatically added to your account's suppression list. |
| [`TlsPolicy`](/v2/docs/aws-cdk-lib.aws_ses.TlsPolicy) | Enum | The type of TLS policy for a receipt rule. |
| [`VdmAttributesProps`](/v2/docs/aws-cdk-lib.aws_ses.VdmAttributesProps) | Struct | Properties for the Virtual Deliverability Manager (VDM) attributes. |
| [`VdmOptions`](/v2/docs/aws-cdk-lib.aws_ses.VdmOptions) | Struct | Properties for the Virtual Deliverability Manager (VDM) options that apply to the configuration set. |
| [`WorkmailActionConfig`](/v2/docs/aws-cdk-lib.aws_ses.WorkmailActionConfig) | Struct | WorkmailAction configuration. |
