> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mailchannels.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Migrate from Amazon SES to MailChannels Email API

> Learn how to migrate an Amazon SES sending integration to MailChannels sender-risk infrastructure.

## Core difference

Amazon SES is an AWS-native set of regional email primitives. It gives you credentials, identities, configuration sets, event destinations, templates, account suppressions, and optional receipt rules, but sender governance remains something you design around those primitives. MailChannels is a transactional email delivery API for platforms with many downstream senders. It adds API credentials, JSON payloads, DKIM, Domain Lockdown, HTTPS webhooks, explicit suppressions, and controls that help detect risky senders, contain abuse, and keep good mail flowing.

## Feature mapping

| Amazon SES concept            | MailChannels concept                   | Migration approach                                                                                      |
| ----------------------------- | -------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `SendEmail` or `SendRawEmail` | `/send` payload                        | Replace AWS SDK calls with MailChannels API calls.                                                      |
| Email identities              | `from` identities                      | Preserve sender addresses and align them with MailChannels domain authentication.                       |
| Domain identities             | DKIM and Domain Lockdown               | Recreate domain authentication and publish MailChannels DNS records.                                    |
| Configuration sets            | Runtime settings or account boundaries | Translate event, tracking, and routing intent into application settings or sub-account choices.         |
| Event destinations            | MailChannels webhooks                  | Replace SNS, EventBridge, Firehose, or CloudWatch flows with HTTPS webhook consumers where appropriate. |
| Email templates               | Application-managed Mustache content   | Export templates and move rendering ownership outside SES.                                              |
| Account suppression list      | MailChannels suppression list          | Recreate suppressions with explicit transactional and non-transactional policy.                         |
| Receipt rule sets             | No MailChannels Email API equivalent   | Replace inbound receiving and routing with another architecture.                                        |

## Send payload notes

The migration is usually a code-level integration rewrite because SES is often called through an AWS SDK rather than a provider-neutral HTTP client.

| Concern        | Amazon SES behavior                 | MailChannels behavior                                                  |
| -------------- | ----------------------------------- | ---------------------------------------------------------------------- |
| Authentication | AWS credential chain and IAM policy | MailChannels API key authentication                                    |
| Regionality    | SES resources are regional          | MailChannels account or sub-account configuration is not an SES region |
| Send API       | AWS SDK operations or raw MIME      | JSON `/send` or `/send-async` payloads                                 |
| Events         | AWS-native destinations             | MailChannels HTTPS webhooks                                            |
| Inbound        | SES receipt rules                   | External inbound service                                               |

## Template migration

SES templates should be exported and moved into application-owned storage. If the existing application calls SES with template names and template data, replace those calls with application-side template selection and MailChannels `dynamic_template_data`.

## Suppression policy

Recommended defaults:

| Amazon SES source                                   | MailChannels target                                                                                 |
| --------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| Account-level bounces and complaints                | Suppress as both `transactional` and `non-transactional`.                                           |
| Region-specific suppression exports                 | Merge carefully and deduplicate before importing or recreating in MailChannels.                     |
| Business preference unsubscribes stored outside SES | Preserve in the source preference system and map to non-transactional suppression when appropriate. |

## Event migration

SES event destinations frequently feed AWS-native systems. A MailChannels migration changes both transport and event schema. Plan this as a downstream integration rewrite, not just a webhook URL swap.

## Inbound migration

SES receipt rules do not map to MailChannels Email API resources. Replace inbound flows with a dedicated receiving provider, an application-managed mailbox workflow, or another AWS-native receiving path that remains separate from MailChannels sending.

## Cutover checklist

* Inventory every SES region that sends or receives mail.
* Replace AWS SDK send calls with MailChannels API calls.
* Recreate DKIM and domain authentication through MailChannels.
* Move SES templates into application-owned storage.
* Replace event destinations with MailChannels webhook consumers where needed.
* Rebuild inbound receipt-rule workflows outside MailChannels.
* Merge regional suppression lists intentionally.
