Validation des e-mails
Cet article de référence couvre les règles de validation des parties locale et hôte pour les adresses e-mail. La validation est utilisée pour les adresses e-mail du tableau de bord, les adresses e-mail des utilisateurs finaux (vos clients) et les adresses d’expéditeur et de réponse d’un e-mail.
Fonctionnement
Braze valide une adresse e-mail lorsqu’elle est mise à jour, importée par API, par téléchargement CSV ou via le SDK, ou encore modifiée dans le tableau de bord. Les adresses e-mail ne peuvent pas contenir d’espaces. Si vous utilisez l’API, un espace renvoie une erreur 400.
Braze rejette certains caractères et marque l’adresse comme non valide. Si un e-mail fait l’objet d’un rebond (bounce), Braze marque l’adresse comme non valide sans modifier le statut d’abonnement. Si le corps de l’e-mail contient des caractères ASCII non standard, Braze n’envoie pas l’e-mail.
Caractères acceptés
- Lettres (A-Z)
- Chiffres (0-9)
- Symboles
- -
- ^
- +
- $
- ’
- &
- #
- /
- %
- *
- =
- `
-
- ~
- !
- ?
- . (uniquement entre des lettres ou d’autres caractères)
Caractères non acceptés
- Espaces (ASCII et Unicode)
Cette validation est une vérification de syntaxe, et non un service de validation. L’un des objectifs de ce processus est de prendre en charge les caractères internationaux (tels que l’UTF-8) dans la partie locale de l’adresse e-mail.
Braze valide la syntaxe de la partie locale et de la partie hôte d’une adresse e-mail. La partie locale correspond à tout ce qui précède l’arobase (@), et la partie hôte à tout ce qui la suit. La partie locale peut commencer et se terminer par n’importe quel caractère autorisé, à l’exception du point (.). Ce processus ne vérifie pas si le domaine dispose d’un serveur MX valide ni si un utilisateur existe sur ce domaine.

Si la partie domaine contient des caractères ASCII non standard, elle devra être encodée en Punycode avant d’être transmise à Braze.
Si Braze reçoit une demande d’ajout d’un utilisateur avec une adresse e-mail non valide, l’API renvoie une erreur. Pour un téléchargement CSV, Braze crée l’utilisateur mais omet l’adresse e-mail non valide.
Règles de validation de la partie locale
Validation générale des e-mails
Pour la plupart des domaines, la partie locale doit respecter les paramètres suivants :
- Peut contenir n’importe quelle lettre ou n’importe quel chiffre, y compris les lettres et chiffres Unicode, ainsi que les caractères suivants : (+) (&) (#) (_) (-) (^) ou (/)
- Peut contenir le caractère suivant, mais ne peut pas commencer ni se terminer par celui-ci : (.)
- Ne peut pas contenir de guillemets doubles (“)
- Doit comporter entre 1 et 64 caractères

Braze normalise les adresses e-mail en convertissant les lettres majuscules en minuscules et en supprimant les espaces au début et à la fin. Cette normalisation s’applique lorsque les adresses e-mail sont créées ou mises à jour via l’API, l’importation CSV, le SDK ou le tableau de bord.
Vous pouvez utiliser l’expression régulière suivante pour vérifier si une adresse e-mail sera considérée comme valide :
/\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/
Adresses Gmail
Si la partie domaine est Gmail, la partie locale doit comporter au moins deux caractères et respecter l’expression régulière de validation indiquée plus haut dans cette section.
Domaines Microsoft
Si le domaine hôte contient « msn », « hotmail », « outlook » ou « live », Braze utilise l’expression régulière suivante pour valider la partie locale : /\A\w[\-\w]*(?:\.[\-\w]+)*\z/i
La partie locale d’une adresse Microsoft doit respecter les paramètres suivants :
- Peut commencer par une lettre (a-z), un trait de soulignement (_) ou un chiffre (0-9).
- Peut contenir n’importe quel caractère alphanumérique (a-z ou 0-9) ou un trait de soulignement (_)
- Peut contenir les caractères suivants : (.) ou (-)
- Ne peut pas commencer par un point (.)
- Ne peut pas contenir deux points consécutifs ou plus (.)
- Ne peut pas se terminer par un point (.)
Le test de validation vérifie si la partie locale qui précède le « + » correspond à l’expression régulière.
Règles de validation de la partie hôte
La partie hôte ne peut pas être une adresse IPv4 ou IPv6. Le domaine de premier niveau (comme .com, .org, .net) ne peut pas être entièrement numérique.
L’expression régulière suivante permet de valider le domaine :
/^[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?(?:\.[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?)+$/i
Le nom de domaine doit respecter les paramètres suivants :
- Il se compose d’au moins deux libellés séparés par un point
- Chaque partie d’un nom de domaine est appelée « libellé ». Par exemple, le nom de domaine « example.com » se compose du libellé « example » et du libellé « com ».
- Il doit contenir au moins un point (.)
- Il ne peut pas contenir deux points consécutifs ou plus
- Chaque libellé séparé par un point doit :
- Contenir uniquement des caractères alphanumériques (a-z ou 0-9) et le trait d’union (-)
- Commencer par un caractère alphanumérique (a-z ou 0-9)
- Se terminer par un caractère alphanumérique (a-z ou 0-9)
- Contenir entre 1 et 63 caractères
Validation supplémentaire requise
Le dernier libellé du domaine doit être un domaine de premier niveau (TLD) valide, déterminé par tout ce qui suit le dernier point (.). Ce TLD doit figurer dans la liste des TLD de l’ICANN. Le validateur de Braze vérifie uniquement la syntaxe. Il ne détecte pas les fautes de frappe ni les adresses inexistantes.

L’Unicode est accepté uniquement pour la partie locale de l’adresse e-mail. L’Unicode n’est pas accepté pour la partie domaine, mais celle-ci peut être encodée en Punycode.