> ## Documentation Index
> Fetch the complete documentation index at: https://novu-c5de82d9-docs-homepage-redesign.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Amazon SES

> A step-by-step guide to manually configure Amazon SES with Novu for email activity tracking.

Amazon SES requires a manual configuration flow to enable Email Activity Tracking in Novu. This process involves creating an IAM user, setting up an SNS topic, subscribing Novu’s webhook, and linking SES configuration sets with the SNS topic.

<Note>
  Email Activity Tracking is available on **Novu Cloud** and **Enterprise self-hosted** only. It is not included in the **Community self-hosted** edition. Contact us at [sales@novu.co](mailto:sales@novu.co) to learn more about Enterprise self-hosted licensing.
</Note>

Setting up Amazon SES for activity tracking is a multi-step process because it requires configuring several AWS services (IAM, SNS, and SES) to work together. This guide provides a complete, step-by-step walkthrough.

## Step 1: Create an IAM User

First, you need to create a dedicated IAM user in AWS that Novu will use to interact with SES.

1. Log in to your AWS Console and navigate to the **IAM** service.
2. In the sidebar under **Access Management**, click **Users**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/create-user.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=93bf3421cd77f9bb31ef321399ba8a14" alt="Create user" width="2878" height="1450" data-path="images/channels-and-providers/email/activity-tracking/ses/create-user.png" />
3. Click **Create user**, enter a name for the user, then click **Next**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/sZb0_crTccuVjvw2/images/channels-and-providers/email/activity-tracking/ses/user-details.png?fit=max&auto=format&n=sZb0_crTccuVjvw2&q=85&s=84954ce69c994c7cae0b7933e47b8585" alt="Add user details" width="2880" height="1448" data-path="images/channels-and-providers/email/activity-tracking/ses/user-details.png" />
4. On the permissions page, select **Attach policies directly**.
5. In the search box, find and select the **`AmazonSESFullAccess`** policy. Click **Next**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/permissions.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=abcdffb74cb8728efda4776642d5331e" alt="Permissions" width="2880" height="1448" data-path="images/channels-and-providers/email/activity-tracking/ses/permissions.png" />
6. Click **Next**, review the details, then click **Create user**. You will be redirected to the user list, where the new user will appear.

<video autoPlay loop muted playsInline src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/create-user.mp4?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=0dae1a5771cc161b3f7d83a0b8c1ccea" data-path="images/channels-and-providers/email/activity-tracking/ses/create-user.mp4" />

## Step 2: Generate access keys

1. Click on the user you just created.
2. On the user’s page, click **Create access key**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/create-access-key.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=c6f61f2b9b5bc6cda24edca11ceb0d4b" alt="Create access key" width="2880" height="1448" data-path="images/channels-and-providers/email/activity-tracking/ses/create-access-key.png" />
3. Under **Access key best practices & alternatives**, select **Application running on an AWS compute service** or the right use case for you.
4. Check the confirmation box and click **Next**.
5. Add a description tag, then click **Create access key**.
6. (Optional) On the **Retrieve access keys** page, you will see the **Access key** and **Secret access key** click **Download .csv file**. This file contains these access keys, you'll need in the next step.
7. Click **Done**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/access-keys.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=b8a56b2c6c0fdcc0b1111a0fe7965465" alt="Access keys" width="2880" height="1450" data-path="images/channels-and-providers/email/activity-tracking/ses/access-keys.png" />

## Step 3: Set up the SES integration in Novu

Now, use the keys you just downloaded to connect your SES account to Novu.

1. In the Novu dashboard, go to the Integration Store.
2. Click **Connect provider** and select **SES**.
3. Under **Delivery Provider Credentials**, open the .csv file you downloaded in [Step 2](/platform/integrations/email/activity-tracking/manual-configuration/ses#step-2-generate-access-keys).
4. Copy the **Access key** into the **Access key ID** field.
5. Copy the **Secret access key** into the **Secret access key** field.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/sZb0_crTccuVjvw2/images/channels-and-providers/email/activity-tracking/ses/ses-integration.png?fit=max&auto=format&n=sZb0_crTccuVjvw2&q=85&s=6ab0894b3b5f143713d4d56f863f21b3" alt="Access keys field" width="2880" height="1624" data-path="images/channels-and-providers/email/activity-tracking/ses/ses-integration.png" />
6. Fill in the remaining required fields, then click **Create integration**.

## Step 4: Create an SNS Topic

Next, you'll set up an SNS (Simple Notification Service) topic to receive events from SES.

1. In the AWS console, search for SNS (Simple Notification Service), this will open the SNS dashboard.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/sZb0_crTccuVjvw2/images/channels-and-providers/email/activity-tracking/ses/sns.png?fit=max&auto=format&n=sZb0_crTccuVjvw2&q=85&s=ca38ff784f565b290cb3e6c25d85eef6" alt="search for SNS" width="2880" height="1546" data-path="images/channels-and-providers/email/activity-tracking/ses/sns.png" />
2. In the sidebar, click **Topics**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/create-topic.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=4b741575ad6af728d2c90106c32eb798" alt="Topics" width="2880" height="1446" data-path="images/channels-and-providers/email/activity-tracking/ses/create-topic.png" />
3. Click **Create topic**
4. Select the **Standard** option.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/sZb0_crTccuVjvw2/images/channels-and-providers/email/activity-tracking/ses/sns-standard.png?fit=max&auto=format&n=sZb0_crTccuVjvw2&q=85&s=cafbe9e719b9e0c0e053bf7fd101bd42" alt="Create topic" width="2880" height="1448" data-path="images/channels-and-providers/email/activity-tracking/ses/sns-standard.png" />
5. Enter a topic name, then scroll down and click **Create topic**.

## Step 5: Subscribe Novu’s webhook to the SNS topic

1. On the topic's page, click **Create subscription**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/sZb0_crTccuVjvw2/images/channels-and-providers/email/activity-tracking/ses/subscription.png?fit=max&auto=format&n=sZb0_crTccuVjvw2&q=85&s=a647e699d8df97b001d4dfbf04c6e997" alt="Create subscription" width="2880" height="1448" data-path="images/channels-and-providers/email/activity-tracking/ses/subscription.png" />
2. In another browser tab, return to your **SES integration settings in Novu**. Enable the **Email Activity Tracking** toggle.
3. Copy the **Inbound Webhook URL** it provides.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/ses-inbound-webhook.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=9b15d53ad56c34f01c032850d1d3ab7a" alt="Inbound Webhook URL" width="2880" height="1624" data-path="images/channels-and-providers/email/activity-tracking/ses/ses-inbound-webhook.png" />
4. Go back to your AWS SNS subscription page.
   * For **Protocol**, select **HTTPS**.
   * For **Endpoint**, paste the **Inbound Webhook URL** you copied from Novu.
     <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/create-subscription.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=b1a363602a5a9c6932240d4777bc7a07" alt="AWS SNS subscription page" width="2880" height="1446" data-path="images/channels-and-providers/email/activity-tracking/ses/create-subscription.png" />
5. Click **Create subscription**
6. In the sidebar, click **Subscriptions** to confirm that the subscription status is “Confirmed.”
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/sZb0_crTccuVjvw2/images/channels-and-providers/email/activity-tracking/ses/subscription-confirmed.png?fit=max&auto=format&n=sZb0_crTccuVjvw2&q=85&s=975e272a4bb8e7f932d605f6094b4ad8" alt="Subscription confirmed" width="2880" height="1444" data-path="images/channels-and-providers/email/activity-tracking/ses/subscription-confirmed.png" />

## Step 6: Create SES Configuration set

Create a Configuration set in SES to tie everything together.

1. In the AWS console, search for SES (Simple Email Service). This opens the Amazon SES dashboard.
2. In the sidebar, under Configuration section, click **Configuration sets**
3. Click **Create set**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/create-set.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=59a21f087407b58240d1d6310b215031" alt="Create set" width="2880" height="1452" data-path="images/channels-and-providers/email/activity-tracking/ses/create-set.png" />
4. Enter a configuration set name, then click **Create set**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/sZb0_crTccuVjvw2/images/channels-and-providers/email/activity-tracking/ses/set-name.png?fit=max&auto=format&n=sZb0_crTccuVjvw2&q=85&s=c89875043ba35b1066fe4875995fdb35" alt="Set name" width="2880" height="1448" data-path="images/channels-and-providers/email/activity-tracking/ses/set-name.png" />
5. Copy the **Configuration set name**.
6. Go back to your SES integration settings in Novu.
7. Paste the name into the **Configuration Set Name** field under the **Email Activity Tracking** section.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/sZb0_crTccuVjvw2/images/channels-and-providers/email/activity-tracking/ses/set-name-novu.png?fit=max&auto=format&n=sZb0_crTccuVjvw2&q=85&s=cafcaa64af8e09b7c3b72c04168259ad" alt="Set name Novu" width="2880" height="1628" data-path="images/channels-and-providers/email/activity-tracking/ses/set-name-novu.png" />
8. Click **Save changes**.

## Step 7: Add event destination

1. Return to the Configuration set page in your **AWS SES dashboard** and click on the set you just created.
2. Click the **Event destinations** tab and then **Add event destination**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/add-destination.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=64daecf6c6b2793301eeadbdc369e212" alt="Add destination" width="2874" height="1448" data-path="images/channels-and-providers/email/activity-tracking/ses/add-destination.png" />
3. Select all available **Event types** and click **Next**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/event-types.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=e3ba2451a8371e3e5249b615826c60c8" alt="Event types" width="2880" height="1402" data-path="images/channels-and-providers/email/activity-tracking/ses/event-types.png" />
4. For the destination, select **Amazon SNS topic** and then enter a destination name.
5. Under SNS topic, select the topic you created in [Step 4](/platform/integrations/email/activity-tracking/manual-configuration/ses#step-4-create-an-sns-topic).
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/sZb0_crTccuVjvw2/images/channels-and-providers/email/activity-tracking/ses/sns-topic.png?fit=max&auto=format&n=sZb0_crTccuVjvw2&q=85&s=155b5d65d1eef73f111f7c02bcd2b63c" alt="SNS topic" width="2880" height="1298" data-path="images/channels-and-providers/email/activity-tracking/ses/sns-topic.png" />
6. Click **Next**, review the details, and then click **Add destination**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/review-destination-details.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=36eff19e8fb94cd047e796c4b47b10b5" alt="SNS topic" width="2880" height="1464" data-path="images/channels-and-providers/email/activity-tracking/ses/review-destination-details.png" />

Your Amazon SES integration is now fully configured for activity tracking. Events will begin appearing in your Novu **Activity Feed** as you send notifications.

## Troubleshooting

### Email address is not verified

If you get "MessageRejected: Email address is not verified" error when you trigger a workflow in Novu. This error means that the sender email address you are trying to use has not been verified in SES.

To fix this:

1. Go to the SES console.
2. In the sidebar, click **Account dashboard**.
   <img src="https://mintcdn.com/novu-c5de82d9-docs-homepage-redesign/_Er4ZWa6vVDiKb7d/images/channels-and-providers/email/activity-tracking/ses/account-dashboard.png?fit=max&auto=format&n=_Er4ZWa6vVDiKb7d&q=85&s=c04dc7388ea75fc98e8357c185840157" alt="Account destination" width="2880" height="1450" data-path="images/channels-and-providers/email/activity-tracking/ses/account-dashboard.png" />
3. Click **View Get set up page** and follow the steps in the **Get set up page** to verify your email address and sending domain.
