That's great but invariably there are questions about how delivery performed. The Internet is a wild place with variability at every step. So to provide better visibility for our users, we've introduced the X-Mailinator-SMTP email header. Mailinator injects this into every email that enters the system. It looks something like this (json parsed version):
"x-mailinator-smtp": [ "open;0", "start;0", "220 mail.mailinator.com ESMTP Postfix;0", "EHLO r214.email.hm.com;90", "250-mail.mailinator.com 250-8BITMIME 250-SIZE 180000 250 Ok;90", "MAIL FROM: firstname.lastname@example.org;181",
"250 Ok;181", "RCPT TO:email@example.com;241",
"250 Ok;241", "DATA;331", "354 End data with . ;331" ],
You can see this on any email in the Mailinator system by viewing the email, then in the upper-right drop-down, click "json". Subscribers will get this in the API of course starting immediately.
In every line is an event that happened in the SMTP transaction followed by a semicolon and then the number of milliseconds since the connection was open. If you know SMTP, you know that the events above starting with 3-digit integers are responses from the Mailinator server. The other capitalized commands are sent from the sender.
The "open" notes the connection open (always 0ms) and the "start" indicates when the Mailinator queue started processing (hopefully also always 0ms). It's been pretty enlightening to see the different behaviors of different emailing systems (who are you folks who wait 20s to start sending SMTP?).
We hope this feature brings our customers further visibility into the delivery of email into Mailinator.