"Discourse::NotFound" error when click "Email Type" field on admin/email/bounced

I think clicking on an “Email Type” field, e.g. user_watching_first_post is meant to display details of the bounce message received from the intended recipient.

But on my self-hosted site I get the error message stated above. Is there anything I can do to fix this?



That is correct. I’ve just checked this on my hosted Discourse site and it’s working without any problems. If your site is on the latest version of Discourse, I’m wondering is the issue is related to how your mail server handles forwarding the bounce message.


Thanks. For outgoing mail I’m using Mailgun. I think I used Discourse’s recommended settings.

For incoming mail I’m using this Straightforward direct-delivery incoming mail But I’ve never updated it since installation - might that be the problem? As it’s ./launcher rebuild app for Discourse, is it ./launcher rebuild mail-receiver?

1 Like

Yes, that’s how to upgrade it. It’s been a while since the last update, I think, but a good first stop) step would be to upgrade it and discourse.


I have upgraded both and still get the same error, including (I think) for emails received since the upgrade. Any further ideas?


Same problem here. Self-hosted, up to date. Bounces being handled the recommended way. Links from before we changed to proper bounce handling work fine.


Yes likely Discourse isn’t getting it from Mailgun. I don’t know how the webhooks work but suspect it just tells Discourse there has been a temporary/permanent failure without sending the bounce message.


Is there any way to make this Discourse feature work with Mailgun?

It should be possible to show at least the error code and message:

Both SMTP error code and SMTP error message are preserved
“code”: 550,
“address”: “'baz@example.com”,
“error”: “Message was not accepted – invalid mailbox. Local mailbox 'baz@example.com is unavailable: user not found”


If not then at least we need a sensible error message to explain why the link doesn’t work :slight_smile:


Has any work been done on this. I’d be very grateful if there had :slight_smile:

I use Digital Ocean and Mailgun (ie the main recommendations) so imagine it’s not just me with the problem.


After my own testing it seems in many cases, bounces are not received by the mail receiver at all. (I only found a connection attempt for one, which was promptly lost). I’m not seeing the Return-Path header being set at all (is it supposed to be?) which makes me think that they’re not even being sent back most of the time.


Still a problem here as well. Despite my earlier statement, it now appears that none of these links work, going back to site startup. Initially it only seemed to affect bounces from before we started handling bounces properly (Handling bouncing e-mails).


I’ve just noticed stacks of warnings in the error log along these lines:

Email can not be processed: Email::Receiver::AutoGeneratedEmailError

Received: from ...
	for <bounce+f7e463.5f70e9-...@forum.example.com>; ...
Subject: Your message couldn't be delivered

Perhaps this is why Discourse doesn’t have any details for the bounced emails.

I’m not seeing those errors in the logs, but the problem persists. When I click the Email Type value for an entry in the Bounced email list, I get “An error occurred: Discourse::NotFound”.

What if you tick “Warning”?

It was already selected. I went back a bit further in the log, and while I do see the occasional email-related message, I’m not seeing the ones you mentioned.

I’ve got the same issue with Mailgun. Different host, so it isn’t that!

I wonder if there is a problem with the Mailgun config instructions for VERP setup:


This has been there for a little while, but it has only just started causing problems as I aim to investigate why I’m getting so many bounces at present.

The issue seems to be that there is no link in the Email Type column and nothing behind the :information_source: icon (red arrows):

When I click on these I get this:


Looking into the page code, the anchor tags in the HTML seems to be missing the href altogther:


I’ve got VERP configured for Mailgun, and it seems to be working well otherwise.

1 Like

That is the expected behavior when the bounced response was not processed by Discourse. The feature is working fine if Discourse receives the bounces, otherwise it will show that response for all bounces.

Can you double check and run the test according to Configure VERP to handle bouncing e-mails ?

1 Like

A better message would be good in that case.

I think you mean that if Discourse only finds out about the bounce from a Mailgun webhook then the details of the bounce never get sent to Discourse. Is that right?

If it is right – would there be any way for those details to be sent to Discourse and recorded and displayed in the same place as bounces received by Discourse? I think the Mailgun API would allow that ("Discourse::NotFound" error when click "Email Type" field on admin/email/bounced - #8 by Jonathan5).

In what circumstance would Discourse handle bounces rather than the external email service? (I know Discourse can bounce/reject emails, but I mean handling bounce messages received from intended email recipients.)


Agreed. If something isn’t actually broken, it should not appear to be broken. Discourse can surely provide a more reassuring message.