Hacker News new | past | comments | ask | show | jobs | submit login

I haven't used mailgun's API (yet) but I worked on a fairly involved incoming email system that used sendgrid's parse API and I'm currently deciding between the two for another reply system. Sendgrid's parse API (in it's current state) is pretty basic - they forward anything that match the MX record to your endpoint without any process. Mailgun seems to smooth out a lot of the nasty things. In particular: 1) Signature/Quoted reply removal - this is the part I'm most excited about (and cautious about since I've seen how much of a headache this can be). We wasted countless hours tweaking regexs to handle weird signatures - if they can get to even 90% I'd be happy. 2) UTF-8 transcoding - Sendgrid tries to parse out which format things are but it's still up to you to get it into UTF-8 (or whatever format you want it in). This wasn't a huge problem, but every now and then gmail would decide to use some really specific character sets that we had trouble converting (this could also be partially a PHP issue) 3) Routing on their server - this wasn't a big deal for what we were building, but it'd be nice to isolate the routing code from the processing code and have actual rules rather than just a catch all.

The other nice thing is that with sendgrid's pricing changes, you can't start to play with the parse API unless you're willing to shell out $80/month. Mailgun lets you use it on the free plan and it's only $20/month for custom domains.




Thanks Andrew,

I could add a few other things which were not mentioned in the blog post:

* Mailgun can forward cleaned up messages in MIME format to you as well, if you prefer to do your own parsing of some sort. By "cleaned up" I mean they're all UTF-8 and can be processed by your typical weak MIME parser (like Ruby's or even Python's)

* Mailgun can also store all incoming mail for you for debugging/archival purposes and you can query it later via POP3/IMAP

* Mailgun can also route messages to different email addresses, i.e. Mailgun routes aren't "parsing API" at all - they act as a proper mail processing engine and people are getting quite creative with their rules, parsing is just something they have to do. For example you can have multiple destinations for a route, i.e. by creating a route "sales@myapp.com -> [array of emails for your sales team]" you're essentially creating a mailing list without any coding on your end.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: