Lancer la vérification
curl -X POST https://api.klemail.io/v1/verify/bulk \
-H "Authorization: Token YOUR-API-KEY-HERE" \
-H "Content-Type: application/json" \
--data '{"emails":["aymeric@gmail.com", "aymeric@klemail.io"]}'
import requests
res = requests.post(
"https://api.klemail.io/v1/verify/bulk",
json={"emails":["aymeric@gmail.com", "aymeric@klemail.io"]},
headers={"Authorization": "Token YOUR-API-KEY-HERE"}
)
print(res.json())
{
"uuid": "387aba8b-e5e9-41b9-804b-4a97892024bd"
}
Limitation du nombre d'adresses e-mails
Pour des raisons de performance, les vérifications Bulk par l'API ne peuvent pas contenir plus de 10K adresses e-mails.
Si vous appelez l'API Bulk avec plus de 10K adresses e-mails, une erreur 400 vous sera renvoyée.
Taille maximale des adresses e-mails
Les adresses e-mails envoyé via l'API Bulk ne peuvent faire plus de 200 caractères. Les adresses e-mails de plus de 200 caractères présentes dans l'appel à l'API Bulk seront tout simplement ignorées, et n'apparaîtront pas dans les résultats.
Vérifier si la vérification est terminée
La vérification d'une liste d'adresses e-mails dépend très fortement du nombre d'adresse qu'il faut vérifier.
Une route de l'API permet de connaître le statut de la vérification. La solution à adopter est de faire une requête sur cette route régulièrement pour vérifier le statut.
Une requête toutes les 30 secondes paraît correcte.
curl -X POST https://api.klemail.io/v1/verify/bulk/387aba8b-e5e9-41b9-804b-4a97892024bd \
-H "Authorization: Token YOUR-API-KEY-HERE
import requests
res = requests.get(
"https://api.klemail.io/v1/verify/bulk/387aba8b-e5e9-41b9-804b-4a97892024bd",
headers={"Authorization": "Token YOUR-API-KEY-HERE"}
)
print(res.json())
Ci-dessous deux exemples de réponse, dans le premier onglet lorsque la vérification est encore en cours et dans le second onglet lorsque la vérification est terminé.
{
"uuid": "79d83c14-d4b5-46bb-be30-1b90d46e17b5",
"coming_from": "api",
"state": "Ended",
"nb_emails": 2,
"emails": null
}
{
"uuid": "79d83c14-d4b5-46bb-be30-1b90d46e17b5",
"coming_from": "api",
"state": "Ended",
"nb_emails": 2,
"emails": [
{
"Email": "aymeric@gmail.com",
"Simple result": "Good",
"Result": "GOOD",
"Role email": false,
"Disposable email": false,
"Free email": true,
"Error response": null
},
{
"Email": "aymeric@klemail.io",
"Simple result": "Good",
"Result": "GOOD",
"Role email": false,
"Disposable email": false,
"Free email": false,
"Error response": null
}
]
}