listmonk icon indicating copy to clipboard operation
listmonk copied to clipboard

AWS SES bounce processing docs incomplete

Open LukeLambert opened this issue 1 year ago • 3 comments

While setting up bounce processing on a new instance, I noticed that the SES docs could be improved. Specifically, the link to the Mautic docs is no longer relevant as their docs have changed. I've rewritten the complete steps below. I could submit a PR, but I'm not sure where in the docs this would live. Alternatively, if the docs were reorganized into provider-specific instructions, I'd be happy to expand this to cover all aspects of using SES with listmonk, including SMTP and IAM.

Bounce processing with AWS SES

  1. In listmonk, click "Bounces" and use the following settings:
    • Enable bounce processing: Enabled
      • Complaint: 1 (with Blocklist or Delete)
    • Enable bounce webhooks: Enabled
    • Enable SES: Enabled
  2. In the AWS console, go to Simple Notification Service and create a new topic with the following settings:
    • Type: Standard
    • Name: ses-bounces (or any other name)
  3. Once created, click "Create subscription" and use the following settings:
    • Protocol: HTTPS
    • Endpoint: https://<your-listmonk-domain>/webhooks/service/ses
    • Enable raw message delivery: Disabled (unchecked)
  4. If successful, the subscription should say "Confirmed" after a page refresh. If not, your endpoint may be incorrect or not publicly accessible.
  5. In the AWS console, go to Simple Email Service and click "Verified identities" in the left sidebar.
  6. Click your verified domain and go to the "Notifications" tab.
  7. Next to "Feedback notifications", click "Edit".
  8. For "Bounce feedback" and "Complaint feedback", select the SNS topic you created earlier.
  9. Check "Include original email headers" for both and save changes.
  10. You can test that bounce processing is working with SES simulator addresses. Add them as subscribers, send them campaign previews, and observe that the appropriate action was taken after the configured bounce threshold was reached.
  11. Once bounce processing is working, you can safely disable "Email feedback forwarding" under the "Notifications" tab of your verified domain in SES.

LukeLambert avatar Jan 13 '24 19:01 LukeLambert

IMO, "delete" should not be used for complaints. If you delete them and they're added back again and you send them another email that will hurt your sender reputation. Since hard bounces may be due to emails that don't currently exist, but may exist in the future, it might make sense to use delete for those, but I use blocklist for all 3 options. Maybe purging hard bounces once a year may be reasonable and an option for that could be added to /admin/settings/maintenance.

Here's an archived version if needed https://web.archive.org/web/20230521055826/https://docs.mautic.org/en/channels/emails/bounce-management#amazon-webhook

Maybe SES can be taken out of that grid https://listmonk.app/docs/bounces/#external-webhooks and an Amazon SES subheading can be made under external webhooks, and you could copy-paste your text there.

Otherwise, the Mautic steps link could be replaced with the archived version or the link to this issue. Not sure which knadh would prefer.

MaximilianKohler avatar Jan 13 '24 20:01 MaximilianKohler

I agree about complaints. The current defaults are {"count": 2, "action": "delete"}, and I wasn't sure if there was a reason for that. Count should certainly be 1 for SES.

I worked from the old Mautic docs, which are also available in their repo, but the AWS console has changed quite a bit, so the directions vary slightly and the screenshots are out of date.

LukeLambert avatar Jan 13 '24 21:01 LukeLambert

I could submit a PR, but I'm not sure where in the docs this would live.

We can add them as sub-sections here https://listmonk.app/docs/bounces/ or add sub-pages under /bounces.

knadh avatar Jan 15 '24 05:01 knadh

Hey guys, so I set up the listmonk app using the following tutorial. https://rameerez.com/free-mailchimp-alternative-email-marketing-service/#listmonk-tutorial

But I haven't been able to setup the bouncing with SES and SNS with the documentation.

I have added the webook to SNS, but can't get confirmation. image

Then I followed Lukes recomendation, and now I got confirmation from the SNS.

I have sent a campaing email as test to the AWS test emails: image

But I don't get them in the bounces list. image

I have the following configuration in the listmonk app: image

And the SNS subscription: image

And the SES feedback in domain: image

I would like to see the bounces emails in the listmonk app when sending the test mails.

Jhchavezr avatar Mar 13 '24 15:03 Jhchavezr

Have you configured feedback notifications in the SES admin? That would be steps 5-8 from the docs and should look something like this:

SES Admin

LukeLambert avatar Mar 13 '24 15:03 LukeLambert

Got it working. Thanks a lot for the follow up.

image

Documentation should be updated with lukes comment process.

https://github.com/knadh/listmonk/issues/1668#issue-2080438101

Have a great day!

Jhchavezr avatar Mar 13 '24 16:03 Jhchavezr

It's already there https://listmonk.app/docs/bounces/#amazon-simple-email-service-ses.

MaximilianKohler avatar Mar 13 '24 19:03 MaximilianKohler