Endpoint Classify
L'endpoint classify analyse une adresse email ou un domaine et retourne les informations du fournisseur et les details de classification.
Requete
GET /v1/classify
Parametres de requete
| Parametre | Type | Requis | Description |
|---|---|---|---|
| email | string | Oui* | L'adresse email a classifier |
| domain | string | Oui* | Le domaine a classifier |
| enrich | string | Non | Mettre a true pour inclure les informations sur l'entreprise du domaine |
*Au moins un des parametres email ou domain doit etre fourni. Si les deux sont fournis, le domaine de l'email prevaut.
Exemples
cURL
# Classifier par email
curl -H "Authorization: Bearer sk_live_VOTRE_CLE" \
"https://emailkind.com/v1/[email protected]"
# Classifier par domaine
curl -H "Authorization: Bearer sk_live_VOTRE_CLE" \
"https://emailkind.com/v1/classify?domain=google.com"
# Classifier avec enrichissement entreprise
curl -H "Authorization: Bearer sk_live_VOTRE_CLE" \
"https://emailkind.com/v1/classify?domain=stripe.com&enrich=true"
Python SDK
from emailkind import EmailKind
client = EmailKind("sk_live_VOTRE_CLE")
result = client.classify(email="[email protected]")
if result.classification.is_disposable:
print("Bloque : email jetable")
elif result.classification.is_business:
print(f"Email pro de {result.provider.name}")
Node.js SDK
import EmailKind from 'emailkind';
const client = new EmailKind('sk_live_VOTRE_CLE');
const result = await client.classify({ email: '[email protected]' });
if (result.classification.is_disposable) {
console.log('Bloque : email jetable');
} else if (result.classification.is_business) {
console.log('Email pro de', result.provider.name);
}
Go SDK
client := emailkind.NewClient("sk_live_VOTRE_CLE")
result, _ := client.Classify(ctx, &emailkind.ClassifyParams{
Email: "[email protected]",
})
if result.Classification.IsDisposable {
fmt.Println("Bloque : email jetable")
} else if result.Classification.IsBusiness {
fmt.Println("Email pro de", result.Provider.Name)
}
PHP
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => "https://emailkind.com/v1/classify?" . http_build_query(["email" => "[email protected]"]),
CURLOPT_HTTPHEADER => ["Authorization: Bearer sk_live_VOTRE_CLE"],
CURLOPT_RETURNTRANSFER => true,
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
if ($result["classification"]["is_disposable"]) {
echo "Bloque : email jetable";
}
Ruby
require "net/http"
require "json"
uri = URI("https://emailkind.com/v1/[email protected]")
req = Net::HTTP::Get.new(uri)
req["Authorization"] = "Bearer sk_live_VOTRE_CLE"
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
data = JSON.parse(res.body)
Reponse
{
"success": true,
"request_id": "req_abc123",
"email": "[email protected]",
"domain": "gmail.com",
"provider": {
"id": "gmail",
"name": "Gmail",
"type": "personal"
},
"classification": {
"is_business": false,
"is_free": true,
"is_disposable": false,
"is_education": false,
"is_custom_domain": false
},
"mx": [
"gmail-smtp-in.l.google.com",
"alt1.gmail-smtp-in.l.google.com"
],
"confidence": 0.98,
"cached": true
}
Reponse avec enrichissement (enrich=true)
{
"success": true,
"request_id": "req_def456",
"domain": "stripe.com",
"provider": {
"id": "google_workspace",
"name": "Google Workspace",
"type": "business"
},
"classification": {
"is_business": true,
"is_free": false,
"is_disposable": false,
"is_education": false,
"is_custom_domain": true
},
"company": {
"name": "Stripe, Inc",
"source": "ssl",
"has_favicon": true
},
"mx": ["aspmx.l.google.com"],
"confidence": 0.98,
"cached": true
}
Champs de reponse
| Champ | Type | Description |
|---|---|---|
| success | boolean | Si la requete a reussi |
| request_id | string | Identifiant unique de la requete pour le support |
| email | string | L'email soumis (vide si requete par domaine uniquement) |
| domain | string | Le domaine analyse |
| provider.id | string | Identifiant unique du fournisseur (ex. google_workspace, gmail, microsoft_365) |
| provider.name | string | Nom lisible du fournisseur |
| provider.type | string | Un parmi : business, personal, disposable, hosting, education, isp, self_hosted, unknown |
| classification.is_business | boolean | Vrai si l'email est professionnel |
| classification.is_free | boolean | Vrai si le fournisseur est gratuit |
| classification.is_disposable | boolean | Vrai si l'email est jetable/temporaire |
| classification.is_education | boolean | Vrai si le domaine appartient a un etablissement educatif |
| classification.is_custom_domain | boolean | Vrai si le domaine utilise un fournisseur connu |
| mx | string[] | Enregistrements MX trouves pour le domaine |
| confidence | number | Score de confiance de 0.0 a 1.0 |
| cached | boolean | Si le resultat DNS provient du cache |
| company | object | Informations sur l'entreprise (present uniquement avec enrich=true) |
| company.name | string | Nom de l'entreprise resolu a partir du domaine |
| company.source | string | Source de resolution : ssl, website, rdap ou domain |
| company.has_favicon | boolean | Si le domaine sert un favicon (signal de site web actif) |
Sources d'enrichissement entreprise
| Source | Description | Fiabilite |
|---|---|---|
| ssl | Champ Organisation du certificat TLS (certificats EV/OV) | Haute — nom legal officiel |
| website | Extrait des balises meta OpenGraph (og:site_name, og:title) ou <title> | Moyenne — peut inclure des slogans |
| rdap | Organisation du registrant WHOIS/RDAP | Moyenne — souvent masque (RGPD) |
| domain | Derive du nom de domaine (fallback pour les sites proteges anti-bot) | Basse — capitalisation automatique |
Types de fournisseurs
| Type | Description | Exemples |
|---|---|---|
| business | Fournisseur email professionnel | Google Workspace, Microsoft 365, Zoho |
| personal | Email personnel gratuit | Gmail, Outlook.com, Yahoo Mail |
| disposable | Email temporaire/jetable | Guerrilla Mail, Mailinator |
| hosting | Email d'hebergeur | GoDaddy, OVH, Namecheap |
| education | Etablissement educatif | Systemes email universitaires |
| isp | Fournisseur d'acces internet | Comcast, AT&T, Vodafone |
| self_hosted | Serveur mail auto-heberge | Enregistrements MX personnalises |
| unknown | Indeterminable | Aucun enregistrement MX ou fournisseur non reconnu |
Exemples de classification
| Email | Fournisseur | is_business | is_free | is_disposable | is_education |
|---|---|---|---|---|---|
| [email protected] | Google Workspace | true | false | false | false |
| [email protected] | Gmail | false | true | false | false |
| [email protected] | Disposable | false | false | true | false |
| [email protected] | Microsoft 365 | true | false | false | true |
| [email protected] | Yahoo Mail | false | true | false | false |
| [email protected] | Cloudflare Email Routing | true | false | false | false |