after struggling to configure Mailgun several times with Ghost and then finally getting it to work only to build a workaround for the new bulk sending limitations within Mailgun…I got fed up and build a adapter for Amazon SES which works like a charm for me. Happy to share it here with you.
In the end, it is a fairly easy setup but the road there was a bit bumpy. Haven’t tested in the long run but so far I am happy with it. Please share, contribute, edit, give feedback.
A few pointers, since I have done something similar at Magic Pages, before I migrated to Mailgun.
In my eyes, the nicer way to configure Ghost to use a different endpoint would be the configuration – not the database. The Mailgun configuration object is not documented in XXX, but you can access the endpoint at bulkEmail.mailgun.baseUrl, or by adding bulkEmail__mailgun__baseUrl as environment variable (mostly used by Docker setups).
What makes the overall approach unusable for “bigger” publications, in my eyes (and the reason I switched to Mailgun for Magic Pages), is the fact that sending email works brilliantly, but getting the newsletter analytics (open events, bounces) will not.
It is possible, but SES does not have a simple API call for things like this. You’ll need to set up event publishing with SNS or Cloudwatch. And even then, getting them into Ghost is phew…interesting.
So, this approach will work for smaller publications – and brilliantly at that. But anyone who relies on these data points should be aware of the drawbacks. It’s definitely not a drop-in replacement.