Mailgun hack day: Making our API documentation smarter

Written by Lee Munroe

Categories: For Devs

2 minute read time

Each month our team has the opportunity to hack on whatever it is we want to hack on. A fun way to learn something new, collaborate with different team members or just tidy up something that has been bugging us.

For January’s hack day, a few of us (Anton, Jesse and myself) set out to make some improvements to our API Docs.

The problem

Our API is well documented and has a good range of code samples for all the major programming languages. However, there are a couple of things we noticed about the workflow.

To try an API request, a developer would typically:

  1. Copy a code sample to a text editor
  2. Edit some parameters (e.g. sender, recipient, body text)
  3. Go to their Mailgun Control Panel to copy their API key
  4. Go back to the code editor and paste the key
  5. Copy that sample to their command line and execute

For quickly exploring a new service or testing out a new endpoint, this seems like a couple of steps too many.

The solution

Part 1: Your Mailgun settings injected into code samples

Now the code samples we show you are a bit smarter. If you’re logged in to Mailgun, we will inject your API key and some smart defaults for you.

Therefore it’s just a matter of copy/pasting the code samples into your command line, executing, and they should work off the bat.

Documents Edit
Part 2: Code samples are editable in the browser

We’ve also made the code samples editable. Using Ace editor, clicking on any code sample will turn it into a small in-browser text editor that you can make changes to.


API docs are instrumental to the user experience of a developer service. With the above changes shipped to production, we hope that trying out our API should be a lot easier for new developers exploring our service and existing developers that want to test or troubleshoot different API endpoints.

Check out the improvements to the Mailgun developer docs.

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.