Validación del correo electrónico
Este artículo de referencia cubre las reglas de validación de la parte local y del host para las direcciones de correo electrónico. La validación se utiliza para las direcciones de correo electrónico del panel, las direcciones de correo electrónico del usuario final (tus clientes) y las direcciones de origen y de responder a de un mensaje de correo electrónico.
Cómo funciona
Braze valida una dirección de correo electrónico cuando se actualiza, se importa mediante la API, una carga de CSV o el SDK, o se modifica en el panel. Las direcciones de correo electrónico no pueden incluir espacios en blanco. Si usas la API, los espacios en blanco devuelven un error 400.
Braze rechaza ciertos caracteres y marca la dirección como no válida. Si un correo electrónico rebota, Braze marca la dirección como no válida y no cambia el estado de suscripción. Si el cuerpo del correo electrónico contiene caracteres ASCII no estándar, Braze no envía el correo electrónico.
Caracteres aceptados
- Letras (A-Z)
- Números (0-9)
- Símbolos
- -
- ^
- +
- $
- ’
- &
- #
- /
- %
- *
- =
- `
-
- ~
- !
- ?
- . (solo entre letras u otros caracteres)
Caracteres no aceptados
- Espacios en blanco (ASCII y Unicode)
Esta validación es una comprobación de sintaxis, no un servicio de validación. Uno de los objetivos de este proceso es admitir caracteres internacionales (como UTF-8) en la parte local de la dirección de correo electrónico.
Braze valida la sintaxis tanto de la parte local como de la parte del host de una dirección de correo electrónico. La parte local es todo lo que va antes de la arroba (@); la parte del host es todo lo que va después. La parte local puede empezar y terminar con cualquier carácter permitido, excepto un punto (.). Este proceso no tiene en cuenta si el dominio tiene un servidor MX válido ni si existe un usuario en ese dominio.

Si la parte del dominio contiene caracteres ASCII no estándar, tendrá que estar codificada en Punycode antes de proporcionarla a Braze.
Si Braze recibe una solicitud para añadir un usuario con una dirección de correo electrónico no válida, la API devuelve un error. En el caso de una carga de CSV, Braze crea el usuario, pero omite la dirección de correo electrónico no válida.
Reglas de validación de la parte local
Validación general de correo electrónico
Para la mayoría de los dominios, la parte local debe cumplir estos parámetros:
- Puede contener cualquier letra o número, incluidos letras y números Unicode, así como los siguientes caracteres: (+) (&) (#) (_) (-) (^) o (/)
- Puede contener el siguiente carácter, pero no puede empezar ni terminar con él: (.)
- No puede contener comillas dobles (“)
- Debe tener entre 1 y 64 caracteres de longitud

Braze normaliza las direcciones de correo electrónico convirtiendo las letras mayúsculas en minúsculas y eliminando los espacios en blanco al principio y al final. Esta normalización se aplica cuando las direcciones de correo electrónico se crean o actualizan a través de la API, la carga de CSV, el SDK o el panel.
Puedes usar la siguiente expresión regular para validar si una dirección de correo electrónico se considerará válida:
/\A([a-zA-Z0-9_\-\^+$'\&#\/!%\*=\?`\|~]|[[^\p{ASCII}\p{Space}]&&\p{Alnum}\p{Punct}\p{S}])(([a-zA-Z0-9_\-\^+$'\&#\/!%\*=\?`\|~\.]|[[^\p{ASCII}\p{Space}]&&\p{Alnum}\p{Punct}\p{S}])*([a-zA-Z0-9_\-\^+$'\&#\/!%\*=\?`\|~]|[[^\p{ASCII}\p{Space}]&&\p{Alnum}\p{Punct}\p{S}]))?\z/
Direcciones de Gmail
Si la parte del dominio es Gmail, la parte local debe tener al menos dos caracteres y cumplir la validación de la expresión regular indicada anteriormente en esta sección.
Dominios de Microsoft
Si el dominio del host incluye “msn”, “hotmail”, “outlook” o “live”, Braze usa la siguiente expresión regular para validar la parte local: /\A\w[\-\w]*(?:\.[\-\w]+)*\z/i
La parte local de una dirección de Microsoft debe cumplir estos parámetros:
- Puede empezar con una letra (a-z), un guion bajo (_) o un número (0-9).
- Puede contener cualquier carácter alfanumérico (a-z o 0-9) o un guion bajo (_)
- Puede contener los siguientes caracteres: (.) o (-)
- No puede empezar con un punto (.)
- No puede contener dos o más puntos consecutivos (.)
- No puede terminar con un punto (.)
La prueba de validación comprueba si la parte local que precede al “+” coincide con la expresión regular.
Reglas de validación de la parte del host
La parte del host no puede ser una dirección IPv4 o IPv6. El dominio de nivel superior (como .com, .org, .net) no puede ser completamente numérico.
Para validar el dominio se utiliza la siguiente expresión regular:
/^[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?(?:\.[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?)+$/i
El nombre de dominio debe cumplir estos parámetros:
- Consta de dos o más etiquetas separadas por puntos
- Cada parte de un nombre de dominio se denomina “etiqueta”. Por ejemplo, el nombre de dominio “example.com” consta de la etiqueta “example” y la etiqueta “com”.
- Debe contener al menos un punto (.)
- No puede contener dos o más puntos consecutivos
- Cada etiqueta separada por puntos debe:
- Contener únicamente caracteres alfanuméricos (a-z o 0-9) y el guion (-)
- Empezar con un carácter alfanumérico (a-z o 0-9)
- Terminar con un carácter alfanumérico (a-z o 0-9)
- Contener entre 1 y 63 caracteres
Validación adicional necesaria
La última etiqueta del dominio debe ser un dominio de nivel superior (TLD) válido, determinado por todo lo que aparece después del último punto (.). Este TLD debe figurar en la lista de TLD de ICANN. El validador de Braze solo comprueba la sintaxis. No detecta errores tipográficos ni direcciones inexistentes.

Unicode solo se acepta en la parte local de la dirección de correo electrónico. Unicode no se acepta en la parte del dominio, pero este puede estar codificado en Punycode.