Aller au contenu principal

Vérification des adresses e-mail

Il est également possible d'effectuer une vérification de l'adresse e-mail sans s'appuyer sur le système de widgets. Ce processus est indépendant du widget et nécessite une implémentation de la vérification du courrier électronique côté serveur. Par conséquent, il n'est pas nécessaire de charger un widget si vous souhaitez uniquement vérifier la validité des adresses électroniques.

adresses e-mail

En vérifiant les adresses électroniques à l'aide de notre API, vous pouvez vous assurer que seuls les utilisateurs qualifiés ont accès à vos services, tout en garantissant la livraison sécurisée de vos courriels dans leurs boîtes de réception. Grâce à cette vérification, vous pouvez facilement refuser l'accès ou bloquer les utilisateurs ayant des adresses électroniques temporaires. Cette fonctionnalité garantit qu'ils saisissent toujours l'adresse e-mail correcte, ce qui protège la réputation de votre serveur de messagerie et vous permet d'économiser de l'argent.

La vérification des adresses électroniques fonctionne de la même manière que la solution captcha, seule la finalité est différente (/emailverify). Encore une fois, pour éviter d'exposer votre clé secrète, vous ne devez le faire que sur votre serveur.

Vous aurez besoin de votre clé secrète. Celle-ci peut être générée automatiquement lorsque vous ajoutez un projet à votre tableau de bord ou en utilisant un projet existant. Pour vous assurer qu'il s'agit d'une adresse email valide qui peut recevoir des emails, vous vérifierez l'adresse email avec le point de terminaison de l'API. Vous devez également vous assurer qu'il ne s'agit pas d'une adresse électronique jetable.

Pour vérifier les adresses électroniques, faites une demande POST à

https://www.zencaptcha.com/captcha/emailverify

avec les paramètres suivants :

Paramètre de POSTDescription
secretVotre clef secrète (ajoutez simplement un projet à votre tableau de bord ou utilisez un projet existant)
emailFacultatif: Adresse électronique de l'utilisateur. Vous pouvez également obscurcir la première partie avant le symbole @ (john@example.com -> xxx@example.com), ou simplement spécifier le nom de domaine de l'adresse électronique (pour une confidentialité maximale : example.com).
Utiliser POST

N'utilisez pas de requête GET pour appeler /emailverify (ou cela échouera).

Example Curl

Remplacez john@example.com et VOTRE-CLÉ-SECRÈTE par vos valeurs :

curl
curl https://www.zencaptcha.com/captcha/emailverify
-X POST
-H "Content-Type: application/x-www-form-urlencoded"
-d 'email=john@example.com&secret=VOTRE-CLÉ-SECRÈTE'

Résumé de la réponse de la requête POST

Clé de réponseDescription
successtrue signifie que l'adresse électronique est valide et qu'il ne s'agit pas d'une adresse jetable ou temporaire.
false signifie qu'il s'agit d'une adresse email invalide ou jetable / temporaire.
emailvalid"valid_email"signifie qu'il est valide. (Idéalement, vous devriez seulement vérifier s'il s'agit de "valid_email"). "invalid_email" signifie qu'il s'agit d'une adresse électronique non valide ou qu'il n'est pas possible d'envoyer des courriels à cette adresse électronique. "disposable_email" signifie qu'il s'agit d'une adresse électronique jetable ou temporaire. "upgrade_plan" signifie que vous devez être sur un plan payant pour utiliser cette fonctionnalité. "none" signifie que l'adresse e-mail n'a pas été vérifiée (probablement aucune adresse e-mail transmise pour vérification).

Exemples: PHP / Node / Python / Ruby

PHP
$email = $_POST['email'];

$secret = "VOTRE-CLÉ-SECRÈTE"; //ne jamais partager votre clé secrète

$data = array(
"secret" => $secret,
"email" => $email, //l'adresse électronique de l'utilisateur
);

$options = array(
"http" => array(
"header" => "Content-type: application/x-www-form-urlencoded",
"method" => "POST",
"content" => http_build_query($data),
),
);

$context = stream_context_create($options);
$verify = file_get_contents("https://www.zencaptcha.com/captcha/emailverify", false, $context);
$email_success = json_decode($verify);

if ($email_success->success==false) {
#adresse électronique non valide (ne fait pas confiance à l'utilisateur)
#email_success["emailvalid"] -Vérifier si "invalid_email" ou "disposable_email".
exit();
}
else{
//adresse email valide - continuer avec votre code
}