Processing incoming email with AWS Simple Email Service (SES)
AWS Simple Email Service is a service I’ve never been that big of a fan of, because it generally feels like a bit of a black box, although things have improved recently with the introduction of Virtual Deliverability Manager tools in the AWS Console.
There’s one AWS SES feature I really love though: the ability to set it up for receiving email.
You can point your domain name’s MX records at AWS, and SES will accept emails sent to that domain. This is useful in many situations, but specifically handy if you’re building any sort of tool where you send email notifications you want users to be able to reply to (think the comment emails in a Google Doc, or the functionality to reply via email in your favourite project management tool).
Here’s how to set it up:
Set up a rule set
To start, we need to set up some things in the AWS Console. You can set this up using CloudFormation or the CDK too, but I always prefer to do it through the Console first, so that I have an understanding of what options are available. You can get started in the Incoming email section of the SES Console.
In there, you can set up an email receiving rule set. Within there, you can have multiple routes with different conditions, which…