Message-ID Issue with Mailgun Batch Sending API?
Hi HN,
Hoping someone else has seen and resolved this issue. We've been testing moving some email sending load over to Mailgun from our current provider. One of our main goals is to improve performance and speed by utilizing Mailgun's batch sending api with recipient variables.
We've run into an interesting issue and aren't sure how to resolve it (or if we can resolve it).
When we submit the batch, Mailgun does indeed send all the messages in the batch, whether it's one or 1,000. However, Mailgun assigns them all the exact same "Message-Id" header.
This causes strange and undesirable behavior in the email clients. Specifically, if an email client receives two or more messages from the batch, it simply drops all but one of them. It's as if they don't exist. That's because the Message-Id header is supposed to be, according to the RFC, unique for each and every message. That's why it appears to exist. Mailgun APPEARS to be violating the RFC by setting the Message-ID header as the same for each message in the batch. We were able to "resolve" the issue by passing the messages to Mailgun's api one at a time, but that is not a real solution. That worked for testing a dozen messages, but what about when we're sending 300,0000 or 1,000,000? That's part of the reason we wanted to use the batch api. Our opt-in newsletter is around 70,000. We'd rather make 70 api calls instead of 70,000 for obvious reasons.
here is the actual RFC: https://tools.ietf.org/html/rfc2392
It states, "the message-id of an email message to refer to a SPECIFIC message." and "Both message-id and content-id are required to be globally unique. That is, no two different messages will ever have the same Message-ID "
Has anyone else seen this? And (please), if you have, has anyone else come up with a way to resolve it? Send a support mail to Mailgun and hear what they have to say about it. You can also consider using their mailing list option: https://documentation.mailgun.com/en/latest/api-mailinglists...