Managing AWS Simple Email Service Templates a More Convenient Way — Using Semplates

Jonathan Mandt
The Startup
Published in
5 min readJan 4, 2021
Semplates monitors your email sending statistics.

AWS’ Simple Email Service (SES) allows you to send emails up to 100 times cheaper than other competitors such as Mailchimp, SendGrid, SendInBlue. But AWS SES lacks an interface for editing and creating email templates by drag and drop text or image modules and generate responsive HTML code. Often product and marketing teams are not able to create and manage those templates themselves as it demands writing the corresponding code. Hence, this results in an extra workload for developers.

Edit email templates via drag & drop

There have already been a lot of open-source approaches addressing the above matter. On GitHub projects can be found which provide an interface to create new templates on AWS SES, but none of them offer a full solution to edit templates without any coding necessary. As we encountered this issue working for several startups, we developed a more convenient solution: Semplates is a web-based application that enables non-developers to easily manage email templates and store and send them using AWS Simple Email Service. It is easily set up and integrated with your AWS account. In addition, to manage email templates, you can also monitor how often each template was sent and which sender email address was used for that.

semplates directly stores templates in AWS simple email service
Semplates stores all templates directly in AWS` Simple Email Service.

Also, there is no lock-in effect. All templates are stored in AWS’ Simple Email Service. Therefore, they are still available, if you decide not to use the Semplates service any longer. As Semplates just offers an interface on top of the Simple Email Service, you can also go to the AWS console to check statistics or all other configurations. If you, for example, want to connect new email addresses to send emails from, you can either use Semplates or in the AWS console directly.

Built with React and Python and hosted on AWS

Technology-wise we used React on the frontend, Python FastAPI on the backend and Terraform for automating cloud infrastructure deployments. As a database we chose PostgreSQL. For hosting the backend we used AWS Lambda’s new functionality, which allows the deployment of containerized applications serverless in the cloud. This is the answer to GCPs Cloud Run, which was already introduced in April 2019.

If you want to check out our beta and test it for free, send us a request on semplates.io. We are looking forward to your feedback. If you want to read more on how to use it in detail, continue reading the setup guide below.

How to setup Semplates

Follow the steps below, to easily setup Semplates for yourself or your company.

1. Sign up on AWS

If you came across our service, you are probably using AWS SES already and just want to connect it with Semplates, in order to manage your templates in a simpler way. If so, you can skip this step and move to step 3. If you do not have an AWS account yet, go and sign up for one here.

2. Enable production mode

If you have not used SES before, you first have to get out of sandbox mode. To achieve this, log into the AWS console and go to the SES dashboard. You will find a notification, that you are still in sandbox mode and that you have to request production mode access. Follow the description to access production mode.

3. Create AWS access credentials

Add AWS SES credentials to your company settings.

To use Semplates, you need to grant the service access to your SES environment. This is possible by creating an AWS Access Key Pair in AWS IAM (Identity and Access Management). Create a new user and assign the “SES Admin” role to it. A key pair consisting of an access key and a secret access key is automatically generated for you. You can either enter your information on the onboarding page or go to Settings > Amazon Web Services > AWS Credentials and enter your credentials there. Make sure to use the correct region (the one AWS SES is located in). We will then validate your credentials. Note: You cannot access the secret key again, however, you can delete the access pair and create a new one.

4. Check your progress

If you already created templates or verified an email address or domain, it will now be displayed in Semplates. Otherwise, make sure to finish your setup by following the steps below.

connect email addresses with AWS simple email service
Connect email addresses with AWS Simple Email Service.

You can verify a new email address either from the settings or from the onboarding/progress page. Put in the email address you want to send emails from and confirm. AWS will then send an email to that address with a verification link. Once verified, you can start sending emails.

5. Create your first template

Now it’s time to create your first template. Navigate to the Templates tab or create a template directly using the button in the upright. Enter a name and a subject for the template and your template will be created.

Choose an already existing template to build yours on top of it.

You can then use our editor to set up your personalized emails. Send them from Semplates directly or the programmatic access (you can read more about how to use our API in the sections below).

Personalizing your emails is simply done by setting placeholders (refer to the image on the left-hand side). These placeholders have to be filled by the time you send the mail. To not deliver mails with unset placeholders, Semplates checks them for you, before sending the email to the recipients. Placeholders can be set as text or as hyperlinks.

6. Use API access

Once, everything is set up, you can use our API and the in your companies settings provided API key to send mails from your frontend or backend application. For more detailed information about that topic, check out the documentation.

Wow, you read all of the setup documentation. Request beta access now at https://semplates.io and join us!

--

--