Amazon Simple Email Service (SES) - Should I use SMTP Interface or SES API?

AlexG picture AlexG · Jun 9, 2015 · Viewed 10.2k times · Source

I'm new to Amazon SES and I see that there are two ways to programmatically send emails:

  1. SES API (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-api.html)
  2. SES SMTP Interface (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-using-smtp-java.html)

What are the pros and cons of each method? They seem interchangeable to me, but I'd like to hear from folks who have had experience with SES.

In terms of my own requirements, I'll be sending transactional emails (i.e. receipts, account confirmation, etc.) and notification emails (i.e. "you have a new message", status change, etc.) to my users as they interact with my web and mobile app. If possible, I'd like to keep a history of all these outgoing emails.

Answer

Mircea picture Mircea · Jun 11, 2015

The SES API ties you to AWS, the SMTP interface... well it's SMTP.

Do you foresee, in the future the need to move off AWS? Does your application already speak SMTP to another email server?

Depending on your current application it may be easier to go with SMTP.

If you're starting from scratch and don't foresee any need to move off AWS you should probably go with the SES API.