How To View Your Messages with Mailgun

Written by Anton Efimenko

Categories: Email DIY

2 minute read time

Recently, we began to receive a lot of requests from customers to have access to the content of their messages.

Internally, we store messages for 3 days for scheduled sends, troubleshooting and compliance verification. We’re happy to announce that we have exposed this feature in our events API!

You can see the API URL to the message along with its unique key under the “storage” section when expanding the log entry:


To view the message in the browser just copy the URL and enter “API” as username and your API key in the password box. This will let you view the parsed message:

Message View

Sometimes it’s handy to analyze the raw MIME and maybe render it in your favorite email client. Not a problem, here is an example on how you can do that with Thunderbird and a little bit of python magic 🙂

# View a message using it’s Mailgun storage key.
import os 
import sys 
import requests 

if len(sys.argv) != 2: 
    print "Usage: message_key" 

# keep it in secret! 
api_key = "key-...." 

# output file name
file_name = "message.eml" 

# let's make the url for retrieval 
domain = "" 
key = sys.argv[1] 
url = "" 
url = url % (domain, key) 

# this will help us to get the raw MIME 
headers = {"Accept": "message/rfc2822"} 

# let's make a request to the API 
r = requests.get(url, auth=("api", api_key), headers=headers) 

if r.status_code == 200: 
    # dump the body to a file 
    with open(file_name, "w") as message: 
    # open it in the bird 
    os.system("thunderbird -file %s" % file_name) 
    print "Oops! Something went wrong: %s" % r.content

When you run the script with the storage key as a parameter it will retrieve the message from Mailgun; save it to “message.eml” and open it in Thunderbird.


While we’re here we want to remind you that we made some improvements to our logs allowing you to view individual message history.

Happy message viewing!

Modified on: March 13, 2019

Stay up-to-date with our blog & new email resources

We'll let you know when we add new email resources and blog posts. We promise not to spam you.