Geolocation and user agent detection now available in webhooks

Written by Mailgun Team

Categories: Email DIY

2 minute read time

We believe in doing hard work for our customers. So when we decided to add geolocation and user agent parameters to our open, click and unsubscribe webhooks, we decided to take it one step further than simply providing an IP address and a raw user agent string for customers. Providing only these values forces you to translate IP to city or country and to delve into the obscure world of user agent strings to find out if the email was opened on a tablet or desktop or whatever. You’ve got better things to do, so here are the details.

With the new geolocation parameters in open, click and unsubscribe web hooks, Mailgun provides the following:

IPIP address the event originated from.

Country– Two-letter country code (as specified by ISO3166) the event came from or ‘unknown’ if it couldn’t be determined.

Region– Two-letter or two-digit region code or ‘unknown’ if it couldn’t be determined.

City- Name of the city the event came from or ‘unknown’ if it couldn’t be determined.

In short, you still get the IP address, but you also get the most common information that can be derived from IP address, without any additional parsing or decoding on your end.

For user agent detection, you get

User-agentUser agent string of the client triggered the event.

Device-type– Device type the link was clicked on. Can be ‘desktop’, ‘mobile’, ‘tablet’, ‘other’ or ‘unknown’.

Client-type– Type of software the link was opened in, e.g. ‘browser’, ‘mobile browser’, ‘email client’.

Client-name– Name of the client software, e.g. ‘Thunderbird’, ‘Chrome’, ‘Firefox’.

In short, you get the plain English version of user agent, without writing your own parser.

See our docs for a full list of web hook parameters for opens, clicks and unsubscribes.

Review on setting up web hooks

If you want to capture this detailed geo-location and user agent data in your application, say, to create custom reports in your email marketing application built on top of Mailgun, its really easy. All you have to do is set up a web hook in the Mailgun Control panel. When you specify a url where you will accept POSTs, Mailgun will send you all these parameters.

Setting up webhooks

Anything else you’d like to see passed in web hooks? Let us know in the comments.

The Mailgunners

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.