Eventos de verificación
Direcciones individuales verificadas con la API, y cada dirección de una lista de direcciones a medida que termina su verificación.
email_verification.created
Se envía cuando verificas una dirección con Verificar una dirección. La verificación ya está completa y el payload coincide con la respuesta de la API. Las direcciones que se verifican en listas envían email_verification.updated en su lugar.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre email_verification.created.
objectobjectLa verificación que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de verificación
idstringEl ID de la verificación (ev_…).
objectstringSiempre email_verification.
emailstringLa dirección verificada.
statusstringcompleted si la comprobación terminó, o failed.
scoreintegerLa puntuación, de 0 a 100.
riskstringlow, medium o high.
resultstringsafe, invalid, disposable, disabled, inbox_full, role o unknown. Consulta Verificar una dirección.
modestringfast o full. Las direcciones de las listas siempre se comprueban en modo full.
checksobjectLas comprobaciones individuales. Las comprobaciones del buzón smtp_connect, deliverable, disabled, inbox_full y catch_all son null en modo fast.
addressobjectLa dirección dividida en mailbox, domain, suffix (la parte que va después de +) y root.
did_you_meanstring | nullLa corrección sugerida para una probable errata.
mx_recordsobject[]Los registros MX del dominio, cada uno con priority y exchange.
created_atstringCuándo se creó la verificación, en formato ISO 8601 con desfase respecto a UTC.
updated_atstringCuándo se actualizó la verificación por última vez.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email_verification.created",
"object": {
"id": "ev_2xLd4Wq8Bn1Ys6Pk3Rm9Tc0Fh5a",
"object": "email_verification",
"email": "ada@example.com",
"status": "completed",
"score": 100,
"risk": "low",
"result": "safe",
"mode": "fast",
"checks": {
"valid_syntax": true,
"disposable": false,
"role_account": false,
"inbox_full": null,
"deliverable": null,
"disabled": null,
"free_email": false,
"gibberish": false,
"catch_all": null,
"smtp_connect": null,
"has_mx_records": true,
"domain_age": 10957
},
"address": {
"mailbox": "ada",
"domain": "example.com",
"suffix": null,
"root": "ada@example.com"
},
"did_you_mean": null,
"mx_records": [
{
"priority": 10,
"exchange": "mx1.example.com"
}
],
"created_at": "2026-10-01T10:20:31.118000+00:00",
"updated_at": "2026-10-01T10:20:31.118000+00:00"
},
"data": {
"object": {
"id": "ev_2xLd4Wq8Bn1Ys6Pk3Rm9Tc0Fh5a",
"object": "email_verification",
"email": "ada@example.com",
"status": "completed",
"score": 100,
"risk": "low",
"result": "safe",
"mode": "fast",
"checks": {
"valid_syntax": true,
"disposable": false,
"role_account": false,
"inbox_full": null,
"deliverable": null,
"disabled": null,
"free_email": false,
"gibberish": false,
"catch_all": null,
"smtp_connect": null,
"has_mx_records": true,
"domain_age": 10957
},
"address": {
"mailbox": "ada",
"domain": "example.com",
"suffix": null,
"root": "ada@example.com"
},
"did_you_mean": null,
"mx_records": [
{
"priority": 10,
"exchange": "mx1.example.com"
}
],
"created_at": "2026-10-01T10:20:31.118000+00:00",
"updated_at": "2026-10-01T10:20:31.118000+00:00"
}
}
}email_verification.updated
Se envía cuando Emailit termina de verificar una dirección de una lista de direcciones, una vez por dirección. Una lista de 10.000 direcciones envía 10.000 de estos eventos; si solo necesitas saber cuándo ha terminado toda la lista, escucha email_verification_list.updated en su lugar.
Las peticiones de webhook contienen un array JSON de eventos como este; consulta Peticiones de webhook.
Campos
event_idstringEl ID del evento (evt_…). Una petición reintentada lleva el mismo ID, así que úsalo para omitir los eventos que ya hayas procesado. También puedes consultar el evento con Obtener un evento.
typestringSiempre email_verification.updated.
objectobjectLa verificación que describe el evento. Sus campos se indican a continuación.
data.objectobjectEl mismo objeto otra vez, con la forma que devuelve la API de eventos en data.
Objeto de verificación
idstringEl ID de la verificación (ev_…).
objectstringSiempre email_verification.
emailstringLa dirección verificada.
statusstringcompleted si la comprobación terminó, o failed.
scoreintegerLa puntuación, de 0 a 100.
riskstringlow, medium o high.
resultstringsafe, invalid, disposable, disabled, inbox_full, role o unknown. Consulta Verificar una dirección.
modestringfast o full. Las direcciones de las listas siempre se comprueban en modo full.
checksobjectLas comprobaciones individuales. Las comprobaciones del buzón smtp_connect, deliverable, disabled, inbox_full y catch_all son null en modo fast.
addressobjectLa dirección dividida en mailbox, domain, suffix (la parte que va después de +) y root.
did_you_meanstring | nullLa corrección sugerida para una probable errata.
mx_recordsobject[]Los registros MX del dominio, cada uno con priority y exchange.
created_atstringCuándo se creó la verificación, en formato ISO 8601 con desfase respecto a UTC.
updated_atstringCuándo se actualizó la verificación por última vez.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email_verification.updated",
"object": {
"id": "ev_2xLeA1Pn6Rw3Ks8Vb0Ht5Mq2Fd9c",
"object": "email_verification",
"email": "ada@example.com",
"status": "completed",
"score": 100,
"risk": "low",
"result": "safe",
"mode": "full",
"checks": {
"valid_syntax": true,
"disposable": false,
"role_account": false,
"inbox_full": false,
"deliverable": true,
"disabled": false,
"free_email": false,
"gibberish": false,
"catch_all": false,
"smtp_connect": true,
"has_mx_records": true,
"domain_age": 10957
},
"address": {
"mailbox": "ada",
"domain": "example.com",
"suffix": null,
"root": "ada@example.com"
},
"did_you_mean": null,
"mx_records": [
{
"priority": 10,
"exchange": "mx1.example.com"
}
],
"created_at": "2026-10-01T10:30:02.441000+00:00",
"updated_at": "2026-10-01T10:30:09.876000+00:00"
},
"data": {
"object": {
"id": "ev_2xLeA1Pn6Rw3Ks8Vb0Ht5Mq2Fd9c",
"object": "email_verification",
"email": "ada@example.com",
"status": "completed",
"score": 100,
"risk": "low",
"result": "safe",
"mode": "full",
"checks": {
"valid_syntax": true,
"disposable": false,
"role_account": false,
"inbox_full": false,
"deliverable": true,
"disabled": false,
"free_email": false,
"gibberish": false,
"catch_all": false,
"smtp_connect": true,
"has_mx_records": true,
"domain_age": 10957
},
"address": {
"mailbox": "ada",
"domain": "example.com",
"suffix": null,
"root": "ada@example.com"
},
"did_you_mean": null,
"mx_records": [
{
"priority": 10,
"exchange": "mx1.example.com"
}
],
"created_at": "2026-10-01T10:30:02.441000+00:00",
"updated_at": "2026-10-01T10:30:09.876000+00:00"
}
}
}