Lista negra de correo electrónico Documentación API
Lista negra de correo electrónico Documentación API: API completa de validación de correo electrónico para detectar direcciones de correo electrónico desechables/temporales, direcciones basadas en roles, proveedores gratuitos y comprobar la reputación del dominio. Nuestra base de datos contiene más de 80.000 dominios de correo electrónico desechables con puntuación de confianza alta/media/baja. Esencial para la prevención de fraude en registros y el filtrado de calidad de leads.
Lista negra de correo electrónico
API completa de validación de correo electrónico para detectar direcciones de correo electrónico desechables/temporales, direcciones basadas en roles, proveedores gratuitos y comprobar la reputación del dominio. Nuestra base de datos contiene más de 80.000 dominios de correo electrónico desechables con puntuación de confianza alta/media/baja. Esencial para la prevención de fraude en registros y el filtrado de calidad de leads.
Parámetros de consulta
| Parámetro | Tipo | Descripción |
|---|---|---|
| email obligatorio | string | Dirección de correo electrónico a comprobar (p. ej., "user@tempmail.com") |
| checks opcional | string | Comprobaciones separadas por comas a ejecutar: disposable, role, free, mx, dnsbl. Predeterminado: todas |
Comprobaciones disponibles
| Comprobar | Descripción | Puntos de riesgo |
|---|---|---|
disposable | Comprueba contra una base de datos de más de 80.000 dominios desechables | +80 |
role | Detecta direcciones basadas en roles (admin@, support@, etc.) | +20 |
free | Identifica proveedores de correo gratuitos (gmail, yahoo, etc.) | +10 |
mx | Valida que existan registros MX para el dominio | +50 (si no hay ninguno) |
dnsbl | Comprueba el dominio contra listas negras de DNS (Spamhaus, etc.) | +15-60 |
Niveles de riesgo
- Bajo (0-39):: Seguro para aceptar
- Medio (40-69):: Se recomienda revisar
- Alto (70-100):: Probablemente fraudulento/temporal
Solicitud de ejemplo
# Full check (all validations)
curl "https://domscan.net/v1/email/check?email=user@tempmail.com"
# Quick disposable check only
curl "https://domscan.net/v1/email/check?email=user@gmail.com&checks=disposable"
import requests
response = requests.get(
"https://domscan.net/v1/email/check",
params={"email": "user@tempmail.com"}
)
data = response.json()
if data['risk_level'] == 'high':
print(f"Reject: {data['flags']}")
elif data['checks']['disposable']['is_disposable']:
print("Disposable email detected")
Respuesta de ejemplo
{
"email": "user@tempmail.com",
"domain": "tempmail.com",
"local_part": "user",
"valid_syntax": true,
"checks": {
"disposable": {
"is_disposable": true,
"confidence": "high"
},
"role": {
"is_role": false,
"role_type": null
},
"free": {
"is_free": false,
"provider": null
},
"mx": {
"has_mx": true,
"records": ["mx.tempmail.com"]
},
"dnsbl": {
"listed": false,
"threat_level": "none"
}
},
"risk_score": 80,
"risk_level": "high",
"flags": ["DISPOSABLE_DOMAIN"],
"checked_at": "2025-01-15T12:00:00Z"
}
Campos de respuesta
| Campo | Tipo |
|---|---|
email |
string |
domain |
string |
local_part |
string |
valid_syntax |
boolean |
checks |
object |
checks.disposable |
object |
checks.disposable.is_disposable |
boolean |
checks.disposable.confidence |
string |
checks.role |
object |
checks.role.is_role |
boolean |
checks.role.role_type |
string | null |
checks.free |
object |
checks.free.is_free |
boolean |
checks.free.provider |
string | null |
checks.mx |
object |
checks.mx.has_mx |
boolean |
checks.mx.records[] |
string[] |
checks.dnsbl |
object |
checks.dnsbl.listed |
boolean |
checks.dnsbl.threat_level |
string |
risk_score |
integer |
risk_level |
string |
flags[] |
string[] |
checked_at |
string |
Cuerpo de la solicitud
| Parámetro | Tipo | Descripción |
|---|---|---|
| emails obligatorio | string[] | Array de direcciones de correo a comprobar (máximo 100 por solicitud) |
| checks opcional | string[] | Comprobaciones a ejecutar: ["disposable", "role", "free", "mx", "dnsbl"] |
Casos de uso
- Limpiar listas de correo antes de campañas de marketing
- Validar registros de usuarios en tiempo real
- Puntuar leads por calidad de correo electrónico
- Detectar patrones de fraude en registros
Solicitud de ejemplo
curl -X POST "https://domscan.net/v1/email/check/bulk" \
-H "Content-Type: application/json" \
-d '{
"emails": [
"user@gmail.com",
"test@tempmail.org",
"admin@company.com"
],
"checks": ["disposable", "role"]
}'
Respuesta de ejemplo
{
"results": [
{
"email": "user@gmail.com",
"risk_level": "low",
"risk_score": 10,
"flags": ["FREE_PROVIDER"]
},
{
"email": "test@tempmail.org",
"risk_level": "high",
"risk_score": 80,
"flags": ["DISPOSABLE_DOMAIN"]
},
{
"email": "admin@company.com",
"risk_level": "medium",
"risk_score": 20,
"flags": ["ROLE_ADDRESS"]
}
],
"summary": {
"total": 3,
"disposable": 1,
"role_based": 1,
"free_provider": 1,
"high_risk": 1,
"medium_risk": 1,
"low_risk": 1
},
"checked_at": "2025-01-15T12:00:00Z"
}
Campos de respuesta
| Campo | Tipo |
|---|---|
results[] |
object[] |
results[] |
object |
summary |
object |
summary.total |
integer |
summary.disposable |
integer |
summary.role_based |
integer |
summary.free_provider |
integer |
summary.no_mx |
integer |
summary.dnsbl_listed |
integer |
summary.high_risk |
integer |
summary.medium_risk |
integer |
summary.low_risk |
integer |
checked_at |
string |
Parámetros de consulta
| Parámetro | Tipo | Descripción |
|---|---|---|
| limit opcional | number | Número de dominios a devolver (por defecto: 1.000, máximo: 10.000) |
| offset opcional | number | Desplazamiento para paginación (por defecto: 0) |
| format opcional | string | json (por defecto) o txt para lista de texto plano |
Descripción
Descarga nuestra lista negra de dominios de correo desechable. Gratis para todos los usuarios. Usa /v1/email/blacklist/download para la lista completa como archivo descargable.
Solicitud de ejemplo
# Get first 1000 domains as JSON
curl "https://domscan.net/v1/email/blacklist"
# Get as plain text for firewall rules
curl "https://domscan.net/v1/email/blacklist?format=txt&limit=5000"
# Download complete blacklist
curl "https://domscan.net/v1/email/blacklist/download" -o disposable.json
Respuesta de ejemplo
{
"domains": [
"tempmail.com",
"guerrillamail.com",
"10minutemail.com",
"mailinator.com",
"..."
],
"total": 85432,
"offset": 0,
"limit": 1000,
"metadata": {
"last_updated": "2025-01-15T00:00:00Z",
"total_domains": 85432,
"high_confidence_count": 12500,
"wildcard_count": 234,
"sources": [
"disposable-email-domains",
"ivolo/disposable-email-domains"
]
}
}
Campos de respuesta
| Campo | Tipo |
|---|---|
domains[] |
string[] |
total |
integer |
offset |
integer |
limit |
integer |
metadata |
object |
metadata.last_updated |
string |
metadata.total_domains |
integer |
metadata.high_confidence_count |
integer |
metadata.wildcard_count |
integer |
metadata.sources[] |
string[] |
Parámetros de consulta
| Parámetro | Tipo | obligatorio |
|---|---|---|
| format | string | opcional |
Campos de respuesta
| Campo | Tipo |
|---|---|
domains[] |
string[] |
wildcards[] |
string[] |
metadata |
object |
Solicitud de ejemplo
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/email/blacklist/download?format=example.com"
Respuesta de ejemplo
{
"domains": [
"example.com"
],
"wildcards": [
"string"
],
"metadata": {}
}