Interacciones y analíticas
Cuando un destinatario vota en una encuesta, envía un formulario o toca una calificación, esa interacción queda registrada por los endpoints alojados de MailInApp y atribuida a tu proyecto — en tiempo real.
Cómo viajan las interacciones
Los bloques interactivos llegan a los endpoints de registro de dos formas, siguiendo la filosofía de alternativas:
- Enlaces (universal). Cada opción de una encuesta o calificación es un enlace simple. Tocarlo abre una página ligera alojada que confirma la acción y la registra. Este camino funciona en el 100% de los clientes de correo.
- Envíos de formulario dentro del correo (mejora). En los clientes que lo admiten (Gmail web/Android, Yahoo), los formularios y encuestas pueden enviarse directamente desde el correo usando codificación estándar de formulario HTML — sin saltar de página. Después del envío, los destinatarios son redirigidos a la página que elijas.
Ambos caminos aceptan los mismos datos, así que los resultados terminan en un solo lugar sin importar qué cliente usó el destinatario.
El clic de Comprar ahora de un bloque de producto es la única excepción: no puede registrarse a través de este endpoint en absoluto, porque una compra solo puede completarse en la propia página de pago alojada por Stripe. Aun así, llega como un evento purchase aquí — con monto, moneda y cantidad — pero solo una vez que el webhook de Stripe confirma que el pago realmente se completó, nunca solo por el clic del comprador.
Protegido contra bots y escáneres
Las herramientas de seguridad corporativas precargan cada enlace de cada correo que escanean. Si un simple clic de enlace bastara para registrar un voto, los resultados de tu encuesta estarían llenos de robots. MailInApp no registra nada con una simple solicitud GET: las acciones basadas en enlaces requieren una acción de confirmación explícita del destinatario, y las interacciones de la vista en vivo se registran mediante envíos de formulario. Mira Enlaces de vista en vivo.
Como los endpoints son públicos por necesidad (una bandeja de entrada no puede autenticarse), cada payload se valida del lado del servidor, y los envíos personalizados se atribuyen mediante los mismos tokens firmados que protegen los enlaces de vista en vivo — un token falsificado o que no coincide se rechaza.
Dos capas más mantienen los resultados honestos:
- Deduplicación por destinatario. El voto, calificación, revelación o envío de formulario de un destinatario cuenta una sola vez — volver a hacer clic en su propio enlace (un doble toque impaciente, una recarga de página fallida) es una operación nula, no una segunda fila. Las vistas repetidas de una diapositiva de carrusel deliberadamente no se deduplican, ya que ahí las repeticiones son una señal de compromiso significativa en lugar de un doble conteo.
- Limitación de tasa para eventos anónimos. El
campaignIdde una campaña es visible directamente en el código fuente HTML del propio correo, así que nada impide que un script publique votos arbitrarios sin ningún token de destinatario. Los envíos no atribuidos están limitados por dirección IP, por campaña, por minuto. Esta es una red de mejor esfuerzo, no una identidad precisa — las redes corporativas o de webmail compartidas pueden poner a muchos destinatarios reales detrás de una misma IP — así que el límite se mantiene lo bastante generoso como para no bloquear una ráfaga legítima de aperturas.
Qué se registra
Cada evento de interacción captura:
- el proyecto (campaña) al que pertenece,
- el bloque que lo produjo (qué encuesta, qué formulario),
- el valor (la opción elegida, los campos enviados, la cantidad de estrellas),
- la fila de destinatario, cuando el correo se personalizó con una fuente de datos — así puedes ver quién respondió, no solo cuántos,
- una marca de tiempo.
Ciclo de vida de la encuesta
Un proyecto puede tener una fecha de cierre y/o un límite de respuestas (definidos junto a su configuración de envío). Una vez que se alcanza cualquiera de los dos, los endpoints de registro dejan de aceptar nuevos eventos para ese proyecto — la vista en vivo reemplaza los bloques interactivos por un aviso de cierre en lugar de dar un error — mientras que todo lo recopilado antes del cierre se mantiene exactamente como se registró. Mira Respuestas y webhooks.
Seguimiento de clics
Los enlaces simples (un botón, una imagen enlazada, un ícono social) no son una encuesta ni una calificación, pero igual vale la pena conocerlos. Cuando un correo se envió con un enlace personalizado por destinatario, MailInApp enruta estos clics simples a través de una redirección rastreada camino a su destino real. El clic se registra, y luego el destinatario llega a la URL que definiste, sin pasos adicionales ni demora. Los correos sin contexto de destinatario (por ejemplo, un envío libre a través de la API transaccional) enlazan directamente al destino en su lugar, ya que no hay nada a lo que atribuir un clic.
A diferencia de los votos y las calificaciones, los clics nunca se deduplican — un destinatario que hace clic en el mismo botón cinco veces cuenta como cinco clics, ya que ahí los clics repetidos son una señal de compromiso significativa, no un doble conteo. Los resultados se agregan en un mapa de calor de clics por bloque — mira Respuestas y webhooks.
Profundidad de desplazamiento
La página de vista en vivo alojada también reporta hasta dónde se desplazó un destinatario (25%, 50%, 75%, 100% de la página) mientras leía. Este es el único lugar en MailInApp donde se ejecuta un pequeño script. El correo enviado en sí se mantiene 100% libre de scripts, como debe ser, pero la vista en vivo ya es una página web alojada normal, así que un listener de desplazamiento ahí no compromete nada. Los hitos se agregan en un embudo de profundidad de desplazamiento; mira Respuestas y webhooks.
Seguimiento de aperturas
Cada correo enviado desde el panel también lleva un pequeño píxel invisible de seguimiento de aperturas, así tienes una señal para "abierto pero sin interactuar" frente a "nunca abierto" junto con las interacciones explícitas. Se muestra en la vista de Respuestas como un indicador de Abierto independiente (marca de tiempo de la primera apertura) por destinatario, en lugar de mezclarse con la lista de interacciones.
Esto es un mínimo de mejor esfuerzo, no una medición precisa: tanto la Protección de Privacidad de Correo de Apple como el proxy de imágenes de Gmail precargan o almacenan en caché las imágenes sin importar si el destinatario realmente abrió el mensaje, así que las aperturas pueden subcontarse o dar falsos positivos. Trátalo como una señal orientativa, no como una fuente de verdad.
Dónde viven los resultados
Los datos de interacción se recopilan por proyecto y regresan a ti de tres formas:
- Respuestas por destinatario — la vista de Respuestas del panel agrupa cada interacción por destinatario, combinada con tu fuente de datos para que veas quién respondió, no solo cuántos. Mira Respuestas y webhooks.
- Webhooks — cada interacción puede enviarse a tu propio endpoint en el momento en que llega, firmada para que puedas verificar que vino de MailInApp. También cubierto en Respuestas y webhooks.
- Resultados en vivo para destinatarios — los bloques de encuesta pueden mostrar resultados en vivo a los destinatarios en su página de resultados alojada.
Nota de privacidad: MailInApp registra las interacciones que los destinatarios hacen deliberadamente — votos, envíos, calificaciones — más el píxel de seguimiento de aperturas descrito arriba. Los endpoints están diseñados para no registrar ningún otro rastreo incidental en simples solicitudes de enlace.