A chi è rivolto
Usa la suite per migliorare la gestione dei form, dare priorità alla revisione manuale, arricchire le organizzazioni e collegare risorse dichiarate dai siti web.
Prova un prodotto, un risultato, un percorso di endpoint o un argomento API.
Valuta la sintassi dell’indirizzo email, la configurazione email del dominio, i segnali di indirizzi usa e getta e il rischio di consegna senza affermare l’esistenza della casella.
Valuta la sintassi dell’indirizzo email, la configurazione email del dominio, i segnali di indirizzi usa e getta e il rischio di consegna senza affermare l’esistenza della casella.
Usa la suite per migliorare la gestione dei form, dare priorità alla revisione manuale, arricchire le organizzazioni e collegare risorse dichiarate dai siti web.
Sceglilo per segnali di sintassi, configurazione email del dominio, indirizzi usa e getta, rischio e limiti. Non dimostra l’esistenza della casella.
Valuta la sintassi dell’indirizzo email, la configurazione email del dominio, i segnali di indirizzi usa e getta e il rischio di consegna senza affermare l’esistenza della casella.
Esamina le operazioni, gli input, gli output, le modalità di esecuzione e i limiti di risposta supportati prima dell’integrazione.
2 Autenticazione richiesta. Consulta il riferimento dell’operazione per il costo esatto e gli eventuali prezzi per elemento.
Usa operazioni documentate per raccogliere, valutare, arricchire, verificare, confrontare, proteggere o monitorare prove pubbliche.
| Parametro | Tipo | obbligatorio |
|---|---|---|
| string | obbligatorio | |
| full |
boolean
Predefinito
false
|
facoltativo |
| Campo | Tipo |
|---|---|
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_lookup_failed |
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.dnsbl_status |
string |
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 |
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/email/verify?email=user%40company.com&full=false"const response = await fetch("https://domscan.net/v1/email/verify?email=user%40company.com&full=false", {
headers: { "X-API-Key": process.env.DOMSCAN_API_KEY },
});
const data = await response.json();
console.log(data);import os
import requests
response = requests.get(
"https://domscan.net/v1/email/verify?email=user%40company.com&full=false",
headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
)
print(response.json())package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest(http.MethodGet, "https://domscan.net/v1/email/verify?email=user%40company.com&full=false", nil)
if err != nil {
panic(err)
}
req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
data, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(resp.Status, string(data))
}require "json"
require "net/http"
uri = URI("https://domscan.net/v1/email/verify?email=user%40company.com&full=false")
request = Net::HTTP::Get.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
http.request(request)
end
puts JSON.pretty_generate(JSON.parse(response.body)){
"email": "[email protected]",
"normalized_email": "[email protected]",
"risk": "low",
"confidence": 0.62,
"confidence_level": "medium",
"decision": "accept",
"reasons": [
"mx_found",
"not_disposable",
"redundant_mx_records",
"domain_authentication_strong",
"mailbox_not_checked"
],
"signals": {
"syntax": {
"status": "pass",
"confidence": 1,
"reason": "syntax_valid"
},
"dns": {
"status": "pass",
"confidence": 0.92,
"reason": "mx_found",
"details": {
"mx_records": [
"mx1.mailhost-example.net",
"mx2.mailhost-example.net"
],
"null_mx": false
}
},
"mailbox": {
"status": "not_checked",
"confidence": 0.35,
"reason": "mailbox_not_checked"
},
"catch_all": {
"status": "unknown",
"confidence": 0.35,
"reason": "not_checked"
},
"disposable": {
"status": "pass",
"confidence": 0.7,
"reason": "not_disposable",
"details": {
"confidence": null
}
},
"role": {
"status": "pass",
"confidence": 0.86,
"reason": "not_role_based",
"details": {
"role_type": null
}
},
"free_provider": {
"status": "pass",
"confidence": 0.9,
"reason": "business_or_custom_domain",
"details": {
"provider": null
}
},
"reputation": {
"status": "pass",
"confidence": 0.72,
"reason": "not_listed",
"details": {
"threat_level": "none"
}
},
"typo": {
"status": "pass",
"confidence": 0.7,
"reason": "no_common_provider_typo",
"details": {
"did_you_mean": null
}
},
"random_input": {
"status": "pass",
"confidence": 0.65,
"reason": "not_random_like"
},
"reserved_domain": {
"status": "pass",
"confidence": 0.78,
"reason": "not_reserved_domain",
"details": {
"domain": "acme-widgets.com",
"tld": "com",
"reserved": false,
"domain_literal": false
}
},
"domain_profile": {
"status": "pass",
"confidence": 0.68,
"reason": "clean_domain_profile",
"details": {
"normalized": "acme-widgets.com",
"tld": "com",
"label_count": 2,
"reserved": false,
"domain_literal": false,
"punycode": false,
"suspicious_reasons": []
}
},
"local_part": {
"status": "pass",
"confidence": 0.66,
"reason": "clean_local_part",
"details": {
"base_local_part": "jane.doe",
"numeric_ratio": 0,
"separator_count": 1,
"suspicious_reasons": []
}
},
"subaddressing": {
"status": "pass",
"confidence": 0.65,
"reason": "no_plus_tag",
"details": {
"plus_addressed": false,
"base_local_part": "jane.doe",
"tag": null
}
},
"mx_redundancy": {
"status": "pass",
"confidence": 0.82,
"reason": "redundant_mx_records",
"details": {
"mx_count": 2
}
},
"domain_authentication": {
"status": "pass",
"confidence": 0.86,
"reason": "domain_authentication_strong",
"details": {
"checked": true,
"spf": {
"exists": true,
"policy": "fail",
"record": "v=spf1 include:_spf.mailhost-example.net -all"
},
"dmarc": {
"exists": true,
"policy": "reject",
"record": "v=DMARC1; p=reject; rua=mailto:[email protected]",
"percentage": null
},
"mta_sts": {
"exists": true,
"record": "v=STSv1; id=20260101T000000"
},
"tls_rpt": {
"exists": true,
"record": "v=TLSRPTv1; rua=mailto:[email protected]"
},
"status": "strong",
"issues": []
}
},
"toxicity": {
"status": "pass",
"confidence": 0.68,
"reason": "not_toxic",
"details": {
"score": 0,
"toxic": false,
"do_not_mail": false,
"reasons": []
}
},
"provider_profile": {
"status": "unknown",
"confidence": 0.55,
"reason": "custom_domain_mail",
"details": {
"provider": null,
"category": "custom_domain_mail",
"confidence": 0.55
}
},
"smtp_server": {
"status": "not_checked",
"confidence": 0,
"reason": "not_checked"
}
},
"evidence": {
"mx_records": [
"mx1.mailhost-example.net",
"mx2.mailhost-example.net"
],
"provider": null,
"checked_via": [
"worker"
],
"normalized_parts": {
"local_part": "jane.doe",
"domain": "acme-widgets.com",
"base_local_part": "jane.doe",
"tag": null
},
"domain_profile": {
"tld": "com",
"label_count": 2,
"reserved": false,
"domain_literal": false,
"punycode": false,
"suspicious_reasons": []
},
"domain_authentication": {
"checked": true,
"spf": {
"exists": true,
"policy": "fail",
"record": "v=spf1 include:_spf.mailhost-example.net -all"
},
"dmarc": {
"exists": true,
"policy": "reject",
"record": "v=DMARC1; p=reject; rua=mailto:[email protected]",
"percentage": null
},
"mta_sts": {
"exists": true,
"record": "v=STSv1; id=20260101T000000"
},
"tls_rpt": {
"exists": true,
"record": "v=TLSRPTv1; rua=mailto:[email protected]"
},
"status": "strong",
"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": null
},
"limitations": [
"basic_tier_does_not_confirm_mailbox_existence"
],
"result": "valid",
"result_detail": "mx_verified",
"verification": {
"syntax_valid": true,
"mx_found": true,
"mx_records": [
"mx1.mailhost-example.net",
"mx2.mailhost-example.net"
],
"null_mx": false,
"smtp_verified": null,
"mailbox_exists": null,
"catch_all": null,
"full_inbox": null,
"smtp_provider": null
},
"classification": {
"disposable": false,
"disposable_confidence": null,
"role_based": false,
"role_type": null,
"free_provider": false,
"provider": null
},
"reputation": {
"dnsbl_listed": false,
"threat_level": "none"
},
"quality": {
"score": 100,
"grade": "A",
"flags": []
},
"tier": "basic",
"credits_used": 2,
"verified_at": "2026-10-09T10:15:30.000Z"
}
200 OK400 Richiesta non valida401 Non autorizzato402 Pagamento richiesto429 Troppe richiesteUsa il riferimento API di Verifica e-mail per esaminare parametri, campi di risposta, esempi, codici di stato e modalità operative supportate.
I risultati sconosciuti o parziali indicano che le prove richieste non hanno potuto essere determinate completamente. Conserva stato del risultato, confidenza, aggiornamento e limiti nelle decisioni successive.
Il prezzo dipende dall’operazione e dalla modalità di esecuzione. Consulta il riferimento dell’endpoint per il costo attuale in crediti, il requisito di autenticazione e le regole per elemento.
Usato da persone di queste aziende