Product
Seguimiento de respuestas en Mailgun (o cualquier otro servicio de envío de emails)
Últimamente recibimos muchas preguntas sobre cómo hacer el seguimiento para saber a qué email han respondido los destinatarios. Existen muchos casos de uso en los que es necesario hacerlo. Es posible que quieras agrupar una conversación en tu aplicación o medir la interacción. El problema de depender de las etiquetas o los ID de campaña de Mailgun es que no son encabezados MIME estándar, por lo que el proveedor de servicios de envío de emails (ESP) receptor podría eliminarlos.
La forma correcta de hacerlo es usar el encabezado Message-ID porque al responder a un email, el Message-ID del email original se incluye en el encabezado In-Reply-To de la respuesta.
Veamos un ejemplo.
Al enviar un email con Mailgun, este crea automáticamente un Message-ID y lo incluye en la respuesta (también puedes configurar tu propio Message-ID personalizado).
Por lo tanto, si envío un mensaje mediante la API de mensajes:
curl -s -k --user api:key-3ax6xnjp29jd6fds4gc373sgvjxteol0 https://api.mailgun.net/v2/samples.mailgun.org/messages -F from='Excited User <me@samples.mailgun.org>' -F to='test <test@mailgunhq.com>' -F subject='Hello' -F text='Testing some Mailgun awesomness!'
Mailgun responde con:
"message": "Queued. Thank you.",rn "id": "<20120502235917.29259.30669@samples.mailgun.org>"
Puedes verlo en una captura de pantalla de mi terminal:

Ahora, al abrir ese email en un cliente de email y revisar los encabezados de origen del email, puedes ver ese Message ID:

Bien, ahora veamos qué pasa cuando respondo a ese email. He creado una ruta en Mailgun que envía mi respuesta a una URL de Postbin. Por supuesto, Mailgun envía debidamente todos los encabezados. Como puedes ver a continuación, el encabezado In-Reply-To tiene el mismo Message-ID que luego puedes usar para identificar a qué email específico se respondió:

Y ya está, una forma sencilla de hacer el seguimiento de quién responde a qué.
Disfruta de tus envíos.
El equipo de Mailgun