Référence API

API Vérification d'e-mail

Évaluez la syntaxe de l’adresse e-mail, la configuration de messagerie du domaine, les signaux d’adresses jetables et le risque de distribution, sans affirmer l’existence de la boîte aux lettres. Utilisez cette référence pour choisir une opération et intégrer son contrat de réponse documenté.

Opérations

GET /v1/email/verify Voir la référence API
POST /v1/email/verify/bulk Voir la référence API

GET /v1/email/verify

Opération: verifyEmail Crédits et authentification: 2 Authentification requise
GET /v1/email/verify

Paramètres de Requête

Paramètre Type requis
email string requis
full boolean
Défaut false
optionnel

Champs de Réponse

Champ Type
email string
normalized_email string
result string
result_detail string
message string | null
risk string
confidence number
confidence_level string
decision string
reasons[] string[]
verification object
verification.syntax_valid boolean
verification.mx_found boolean
verification.null_mx boolean
verification.mx_records[] string[]
verification.smtp_verified boolean | null
verification.mailbox_exists boolean | null
verification.catch_all boolean | null
verification.full_inbox boolean | null
verification.smtp_provider string | null
classification object
classification.disposable boolean
classification.disposable_confidence string | null
classification.role_based boolean
classification.role_type string | null
classification.free_provider boolean
classification.provider string | null
reputation object
reputation.dnsbl_listed boolean
reputation.threat_level string | null
quality object
quality.score integer
quality.grade string
quality.flags[] string[]
signals object
evidence object
evidence.mx_records[] string[]
evidence.provider string | null
evidence.checked_via[] string[]
evidence.normalized_parts object
evidence.normalized_parts.local_part string
evidence.normalized_parts.domain string
evidence.normalized_parts.base_local_part string
evidence.normalized_parts.tag string | null
evidence.domain_profile object
evidence.domain_profile.tld string | null
evidence.domain_profile.label_count integer
evidence.domain_profile.reserved boolean
evidence.domain_profile.domain_literal boolean
evidence.domain_profile.punycode boolean
evidence.domain_profile.suspicious_reasons[] string[]
evidence.domain_authentication object
evidence.domain_authentication.checked boolean
evidence.domain_authentication.status string
evidence.domain_authentication.spf object
evidence.domain_authentication.spf.exists boolean
evidence.domain_authentication.spf.policy string
evidence.domain_authentication.spf.record string | null
evidence.domain_authentication.dmarc object
evidence.domain_authentication.dmarc.exists boolean
evidence.domain_authentication.dmarc.policy string
evidence.domain_authentication.dmarc.record string | null
evidence.domain_authentication.dmarc.percentage integer | null
evidence.domain_authentication.mta_sts object
evidence.domain_authentication.mta_sts.exists boolean
evidence.domain_authentication.mta_sts.record string | null
evidence.domain_authentication.tls_rpt object
evidence.domain_authentication.tls_rpt.exists boolean
evidence.domain_authentication.tls_rpt.record string | null
evidence.domain_authentication.issues[] string[]
recommendation object
recommendation.signup string
recommendation.marketing string
recommendation.cold_outreach string
deliverability object
deliverability.status string
deliverability.sub_status string
deliverability.safe_to_send boolean
deliverability.mailbox_checked boolean
deliverability.smtp_confirmed boolean
deliverability.domain_accepts_mail boolean
deliverability.accepts_all boolean | null
deliverability.is_role boolean
deliverability.is_free_provider boolean
deliverability.is_disposable boolean
deliverability.is_toxic boolean
deliverability.is_no_reply boolean
deliverability.is_gibberish boolean
suggestions object
suggestions.did_you_mean string | null
limitations[] string[]
tier string
credits_used integer
verified_at string

Exemple de Requête

curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/email/verify?email=user%40company.com&full=example.com"

Exemple de Réponse

{
  "email": "[email protected]",
  "normalized_email": "[email protected]",
  "result": "valid",
  "result_detail": "mx_verified",
  "message": "string",
  "risk": "low",
  "confidence": 0.93,
  "confidence_level": "high",
  "decision": "accept",
  "reasons": [
    "mx_found",
    "not_disposable",
    "mailbox_not_checked"
  ],
  "verification": {
    "syntax_valid": true,
    "mx_found": true,
    "null_mx": false,
    "mx_records": [
      "aspmx.l.google.com"
    ],
    "smtp_verified": null,
    "mailbox_exists": null,
    "catch_all": null,
    "full_inbox": null,
    "smtp_provider": null
  },
  "classification": {
    "disposable": false,
    "disposable_confidence": "high",
    "role_based": false,
    "role_type": "string",
    "free_provider": true,
    "provider": "gmail.com"
  },
  "reputation": {
    "dnsbl_listed": false,
    "threat_level": "high"
  },
  "quality": {
    "score": 95,
    "grade": "A",
    "flags": [
      "FREE_PROVIDER"
    ]
  },
  "signals": {},
  "evidence": {
    "mx_records": [
      "string"
    ],
    "provider": "google_workspace",
    "checked_via": [
      "worker"
    ],
    "normalized_parts": {
      "local_part": "user",
      "domain": "company.com",
      "base_local_part": "user",
      "tag": null
    },
    "domain_profile": {
      "tld": "com",
      "label_count": 2,
      "reserved": false,
      "domain_literal": false,
      "punycode": false,
      "suspicious_reasons": []
    },
    "domain_authentication": {
      "checked": true,
      "status": "strong",
      "spf": {
        "exists": true,
        "policy": "fail",
        "record": "v=spf1 include:_spf.company.com -all"
      },
      "dmarc": {
        "exists": true,
        "policy": "reject",
        "record": "v=DMARC1; p=reject; pct=100",
        "percentage": 100
      },
      "mta_sts": {
        "exists": true,
        "record": "v=STSv1; id=20260506"
      },
      "tls_rpt": {
        "exists": true,
        "record": "v=TLSRPTv1; rua=mailto:[email protected]"
      },
      "issues": []
    }
  },
  "recommendation": {
    "signup": "allow",
    "marketing": "send",
    "cold_outreach": "send"
  },
  "deliverability": {
    "status": "deliverable",
    "sub_status": "mx_verified",
    "safe_to_send": true,
    "mailbox_checked": false,
    "smtp_confirmed": false,
    "domain_accepts_mail": true,
    "accepts_all": null,
    "is_role": false,
    "is_free_provider": false,
    "is_disposable": false,
    "is_toxic": false,
    "is_no_reply": false,
    "is_gibberish": false
  },
  "suggestions": {
    "did_you_mean": "[email protected]"
  },
  "limitations": [
    "basic_tier_does_not_confirm_mailbox_existence"
  ],
  "tier": "basic",
  "credits_used": 2,
  "verified_at": "2026-04-15T12:00:00Z"
}

POST /v1/email/verify/bulk

Opération: verifyEmailBulk Crédits et authentification: 2 Authentification requise
POST /v1/email/verify/bulk

Paramètres du Corps

Paramètre Type requis
emails string[] requis

Champs de Réponse

Champ Type
results[] object[]
results[] object
summary object
summary.total integer
summary.valid integer
summary.invalid integer
summary.risky integer
summary.unknown integer
summary.pending integer
credits_used integer

Exemple de Requête

curl -X POST "https://domscan.net/v1/email/verify/bulk" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $DOMSCAN_API_KEY" \
  -d '{
  "emails": [
    "[email protected]",
    "[email protected]",
    "[email protected]"
  ],
  "full": false
}'

Exemple de Réponse

{
  "results": [
    {}
  ],
  "summary": {
    "total": 3,
    "valid": 2,
    "invalid": 0,
    "risky": 1,
    "unknown": 0,
    "pending": 0
  },
  "credits_used": 6
}

Ressources de référence