¿Qué significa "Enviar en nombre de" en la API de correo electrónico?
Enviar correos electrónicos en nombre de un usuario significa que tu aplicación envía mensajes directamente desde el buzón del propio usuario, no desde un remitente transaccional compartido. El destinatario ve la dirección de correo electrónico real del usuario en el campo "De". Esta es la base de cualquier producto SaaS que maneje el correo electrónico para sus usuarios.
Qué aprenderás
Por qué los productos SaaS necesitan envío de correos electrónicos "en nombre de"
La mayoría de los productos SaaS que interactúan con el correo electrónico eventualmente se enfrentan al mismo requisito: el usuario quiere que los mensajes provengan de su propia dirección, no de un dominio genérico de la plataforma. Ya sea un CRM, un asistente de escritura de IA o una herramienta de soporte, en el momento en que tu producto envía correos electrónicos para los usuarios, necesitas el envío en nombre de ellos. Aquí te explicamos por qué es importante y cómo los tres casos de uso principales se mapean a la API.
Los representantes de ventas envían desde su Gmail u Outlook real
En un contexto de CRM, el vendedor es quien construye la relación. Si tu plataforma envía seguimientos desde noreply@yourcrm.com, la entregabilidad disminuye y el prospecto se confunde. Con el envío en nombre de, tu CRM llama a la API de Unipile utilizando la cuenta vinculada del vendedor. Cada correo electrónico llega a la bandeja de entrada del prospecto mostrando la dirección real del representante.
La IA redacta y envía desde el buzón del usuario
Los asistentes de correo electrónico de IA, ya sea que redacten respuestas automáticamente, programen seguimientos o resuman hilos, necesitan acceso de escritura al buzón del usuario. Sin el envío "en nombre de", la IA solo puede sugerir; no puede ejecutar. Con una cuenta vinculada a través de la API de Unipile, su asistente puede enviar el mensaje aprobado directamente desde Gmail u Outlook del usuario con una sola llamada API.
Los agentes de soporte responden desde una bandeja de entrada de soporte compartida
Las plataformas de atención al cliente a menudo enrutan las solicitudes a través de una bandeja de entrada compartida como support@company.com. Esa bandeja de entrada es en sí misma un buzón de correo; debe vincularse como una cuenta. Con Unipile, tu plataforma puede conectar ese buzón compartido de Outlook o IMAP, permitiendo que cualquier agente envíe respuestas que parezcan provenir directamente de la dirección oficial de soporte, con el contexto completo del hilo conservado.
POST /api/v1/correos el endpoint maneja cuentas de Gmail, Outlook y IMAP.Cómo funciona la API de correo electrónico "On-Behalf" (Flujo de OAuth 2.0)
Enviar correos electrónicos en nombre de un usuario requiere tres cosas: el consentimiento del usuario, un token de acceso válido y una llamada de envío a través de la infraestructura del proveedor. Así es como funciona ese flujo en la práctica y cómo Unipile lo abstrae en una única API unificada. Para una referencia técnica más amplia sobre puntos finales de envío, parámetros y diferencias entre proveedores, consulte nuestra guía completa. Guía de la API para enviar correos electrónicos.
El usuario otorga permiso OAuth
El usuario hace clic en "Conectar tu correo" dentro de tu producto SaaS. Unipile lo redirige a la pantalla de consentimiento OAuth de su proveedor: Google para usuarios de Gmail, Microsoft para usuarios de Outlook y Microsoft 365. El usuario inicia sesión y aprueba los ámbitos solicitados, que incluyen la capacidad de enviar correos electrónicos en su nombre. Nunca se comparte ninguna contraseña con tu aplicación.
Tu aplicación recibe un ID de cuenta vinculado
Una vez que el usuario completa el flujo de OAuth, Unipile almacena de forma segura el token de acceso y devuelve un account_id a tu aplicación. Este es un identificador estable para el buzón conectado del usuario. Almacenas este ID en tu base de datos junto con el registro del usuario. Todas las operaciones de correo electrónico subsiguientes para este usuario hacen referencia a este account_id; nunca tocas el token OAuth sin procesar.
Enviar a través de la infraestructura del proveedor
Cuando su aplicación necesita enviar un correo electrónico, llama a POST /api/v1/correos con el account_id y el payload del mensaje. Unipile enruta la solicitud a través del proveedor correcto: la API de Gmail para cuentas de Google, la API de Microsoft Graph para cuentas de Outlook y Microsoft 365, y SMTP para cuentas IMAP. El correo electrónico se envía desde el propio buzón del usuario y aparece en su carpeta Enviados.
Ejemplos de códigos
import solicita # account_id recuperado después de que el usuario completa el flujo de OAuth UNIPILE_DSN = "https://api1.unipile.com:13301" ACCESS_TOKEN = "TU_TOKEN_DE_ACCESO" ACCOUNT_ID = "id_cuenta_de_usuario_de_la_base_de_datos" carga_útil = { "account_id": ID_DE_CUENTA, "a": [{ "nombre_a_mostrar": "Sarah Connor", "identificador": "sarah@acme.com" }], "Asunto": "Dando seguimiento a nuestra conversación", "cuerpo": "Hola Sarah, solo para dar seguimiento...
" } respuesta = requests.Correo electrónico:( f"{UNIPILE_DSN}/api/v1/correos", json=payload, encabezados={"Clave API X": ACCESS_TOKEN} ) print(respuesta.json()) # {"object": "EmailSent", "email_id": "..."}
// account_id recuperado después de que el usuario complete el flujo OAuth const UNIPILE_DSN = "https://api1.unipile.com:13301"; const ACCESS_TOKEN = "TU_TOKEN_DE_ACCESO"; const ID_DE_CUENTA = "id_cuenta_de_usuario_de_la_base_de_datos"; const carga_útil = { account_id: ID_DE_CUENTA, a: [{ nombre_mostrador: "Sarah Connor", identificador: "sarah@acme.com" }], tema: "Dando seguimiento a nuestra conversación", cuerpo: "Hola Sarah, solo para dar seguimiento...
" }; const response = await fetch(`${UNIPILE_DSN}/api/v1/emails`, { método: "PUBLICAR", cabeceras: { "Clave API X": TOKEN_DE_ACCESO, "Tipo-Contenido": "application/json" }, cuerpo: JSON.stringify(carga útil) }); const datos = await respuesta.json(); consola.log(datos); // { objeto: "EmailEnviado", email_id: "..." }
API de correo electrónico "On-Behalf" vs. transaccional: La diferencia clave
Estas dos categorías de API de correo electrónico resuelven problemas fundamentalmente diferentes. Mezclarlas es el error más común que cometen los equipos al especificar una integración de correo electrónico. Aquí se comparan en cada dimensión que importa.
Crea el envío de correo electrónico en nombre de con Unipile
Unipile proporciona una única API unificada que abstrae Gmail, Outlook e IMAP tras una interfaz coherente. Escribes una integración: Unipile se encarga de los flujos de OAuth específicos del proveedor, la actualización de tokens, el enrutamiento SMTP y el manejo de errores para los tres. Aquí tienes lo que está disponible para cada proveedor.
API de envío de correo electrónico en nombre del usuario - Preguntas frecuentes
Preguntas frecuentes sobre el envío de correos electrónicos en nombre de con Unipile
Sí, siempre y cuando el usuario otorgue permiso explícitamente. El envío de correos electrónicos en nombre de otros se basa en OAuth 2.0 (para Gmail y Outlook) o en el intercambio explícito de credenciales (para IMAP). En ambos casos, el usuario autoriza conscientemente a tu aplicación a enviar desde su buzón. Este es el mismo mecanismo utilizado por todos los principales clientes de correo electrónico y herramientas de productividad.
Los requisitos clave de cumplimiento son:
- El usuario debe dar su consentimiento activamente antes de que envíes algo en su nombre
- Tu política de privacidad debe revelar que accedes y envías desde el buzón del usuario
- El usuario debe poder revocar el acceso en cualquier momento (revocación de OAuth o desconexión de cuenta)
- No debes enviar contenido que viole los términos de servicio del proveedor (por ejemplo, spam)
No es legal para enviar desde la dirección de alguien sin su consentimiento. El flujo de vinculación basado en OAuth de Unipile garantiza que siempre tenga la autorización explícita del usuario antes de cualquier operación de envío.
El destinatario ve el dominio propio del usuario en el campo De: no el dominio de tu plataforma. Este es el valor central de enviar en nombre de. Por ejemplo, si un representante de ventas con la dirección john@acme.com ha vinculado su cuenta de Gmail, cada correo electrónico enviado a través de su CRM a través de Unipile mostrará De: john@acme.com.
El correo electrónico se envía a través del proveedor de correo real del usuario (API de Gmail, Microsoft Graph o SMTP), lo que significa:
- Los registros SPF pasan porque la IP de envío está autorizada por el dominio del usuario.
- Las firmas DKIM son válidas porque el proveedor firma con la clave de dominio del usuario
- La alineación DMARC pasa por las mismas razones
Esto es fundamentalmente diferente de una API transaccional donde envías desde una infraestructura compartida y el destinatario ve el dominio de tu plataforma.
Los ámbitos requeridos dependen del proveedor. Unipile maneja la pantalla de consentimiento OAuth automáticamente: sus usuarios verán un diálogo de permisos estándar de Google o Microsoft. Los ámbitos exactos solicitados son:
- Gmail: el ámbito de la API de Gmail que permite enviar mensajes
https://mail.google.com/o el más limitadogmail.enviarámbito (si solo necesitas acceso de envío) - Outlook / Microsoft 365: Microsoft Graph
Mail.Enviaralcance, másMail.ReadWritesi también necesitas leer o sincronizar la bandeja de entrada - IMAP: El usuario proporciona su nombre de host IMAP, puerto, nombre de usuario y su contraseña o una contraseña específica de la aplicación (requerida para cuentas con autenticación de dos factores habilitada).
Los usuarios pueden revocar estos permisos en cualquier momento desde la configuración de seguridad de su cuenta de Google o Microsoft, o desconectando la cuenta vinculada dentro de su producto.
Sí. Cualquier buzón de correo que pueda ser autenticado a través de credenciales OAuth o IMAP puede vincularse como una cuenta de Unipile. Esto incluye:
- Buzones compartidos en Microsoft 365 (ej. support@company.com) - enlazado a través de una cuenta de servicio con los permisos delegados correctos
- Bandejas de entrada compartidas de Google Workspace y direcciones de grupo con permisos de Enviar como configurados
- Cualquier alias de correo electrónico que sea administrado por un buzón de correo accesible IMAP
También puedes personalizar la nombre a mostrar en el campo De usando el from parámetro en la carga útil de la API, sin cambiar la dirección de envío subyacente.
Unipile maneja la actualización automática de tokens para cuentas de Gmail y Outlook. Los tokens de acceso OAuth generalmente expiran después de una hora, pero el token de actualización tiene una vida útil larga. Cuando Unipile detecta un token de acceso expirado antes de una operación de envío, solicita uno nuevo de forma silenciosa utilizando el token de actualización almacenado; su aplicación nunca ve que esto suceda y la llamada de envío se completa normalmente.
La única vez que necesitas solicitar al usuario que se reautentique es si tiene acceso revocado manualmente desde su cuenta de Google o Microsoft. Unipile muestra esto como un cambio de estado de cuenta que puede detectar a través de webhook o consultando el punto final de la cuenta.
¿Aún tiene preguntas? Nuestro equipo está aquí para ayudarle.