Detectar emails desechables
Las pruebas gratuitas, los programas de referidos y los descuentos de uno por usuario asumen en silencio algo simple: una persona equivale a un correo. Los buzones desechables rompen esa suposición en segundos, permitiendo que una sola persona pase por decenas de cuentas. Esta API marca las direcciones de dominios de correo temporal conocidos antes de que superen el formulario de registro.
Ejecútela online
Ejecute esto en nuestros servidores con su cuenta. Las herramientas gratuitas corren en su navegador; esta cobra de su saldo del KIT según el precio de arriba.
El patrón de abuso detrás de esto
Los servicios de correo temporal existen por una razón legítima: evitar el spam al registrarse en algo que se usará una sola vez. Pero esa misma conveniencia es justo lo que los convierte en la herramienta favorita para abusar de pruebas gratuitas, defraudar programas de referidos y crear cuentas falsas a escala. Alguien que quiere reclamar una promoción tres veces, o un bot que farmea bonos de referidos, no necesita buzones reales; un dominio de usar y tirar que se autodestruye en una hora es suficiente, y por sintaxis es indistinguible de una dirección legítima.
Cómo funciona la detección en la práctica
La verificación compara el dominio de un correo enviado contra una lista mantenida de proveedores de correo temporal y desechable conocidos —los servicios tipo mailinator y sus numerosos clones parecidos— y devuelve si hay coincidencia. En esencia, es una consulta de reputación de dominio, no una prueba de buzón, así que es rápida y no depende de que el servidor de destino responda a nada.
Por qué esa lista necesita mantenimiento
Aparecen constantemente nuevos dominios de correo desechable, muchas veces como pequeñas variaciones o como servicios completamente nuevos, razón por la cual una lista de bloqueo estática escrita una sola vez queda obsoleta rápido. Tratar esto como un servicio mantenido activamente, en lugar de una lista fija codificada una vez, es lo que mantiene la detección útil dentro de seis meses y no solo el día en que se escribió.
Lo que no está pensado para detectar
Este endpoint identifica dominios desechables conocidos; no verifica si una dirección no desechable es sintácticamente válida ni si su dominio puede realmente recibir correo. Combínelo con la validación de sintaxis y la verificación de registros MX cuando necesite una imagen completa, y úselo específicamente como la capa que detiene el patrón de 'registrarse, abusar, descartar'.
Cómo encaja en un flujo de registro
Al ser una sola consulta rápida, pertenece al inicio del registro, justo junto a la validación básica de formato o inmediatamente después de ella, antes de que se cree una cuenta o se otorgue un beneficio de prueba, de modo que el bloqueo ocurra en el punto más barato posible y no después de que el daño ya esté hecho.
Qué puede hacer con ella
Registros de prueba gratuita y freemium
Bloquear registros de dominios desechables conocidos para evitar que la misma persona reclame una prueba repetidamente con direcciones de usar y tirar distintas.
Programas de referidos y promociones
Evitar que bonos de referidos o códigos de descuento de un solo uso se exploten mediante decenas de cuentas de correo temporal.
Registro en comunidades y foros
Reducir spam de bajo esfuerzo y cuentas títere rechazando registros provenientes de direcciones ligadas a servicios de correo desechable.
Control de calidad en formularios de contacto
Filtrar envíos de formularios que usan direcciones de usar y tirar, las cuales rara vez representan un prospecto genuino que valga la pena seguir.
Preguntas frecuentes
¿Qué se considera un dominio de email desechable?
Dominios pertenecientes a servicios de correo temporal o de usar y tirar conocidos, diseñados para buzones de vida corta y muchas veces de un solo uso.
¿La api detectar email temporal confirma si el buzón es real?
No, verifica si el dominio coincide con un proveedor de correo desechable conocido; combínela con validación de sintaxis y MX para una imagen completa.
¿Es gratuita esta api detectar email temporal?
No hay capa gratuita: las capas gratis se abusan y ralentizan a todos. El acceso funciona con un saldo prepago de ForHosting KIT: se recarga desde $10.00 (no caduca) y cada solicitud se cobra a su precio publicado, así que una llamada sin saldo devuelve HTTP 402. Sin suscripción, sin tokens ni créditos inventados, y una tarea fallida no se cobra.
¿Cuánto cuesta cada verificación?
$0.002 por request, cobrado solo cuando la tarea se completa con éxito.
¿Qué tan actualizada está la lista de dominios desechables?
Se mantiene de forma activa, ya que aparecen regularmente nuevos servicios de correo temporal y variantes de dominio, y una lista desactualizada pierde efectividad rápido.
¿Cómo recibo el resultado?
La verificación corre de forma asíncrona: el task_id se devuelve de inmediato y el resultado llega mediante un webhook firmado o un enlace firmado válido por 24 horas.
¿Puede correr en cada registro en tiempo real?
Sí, es una sola consulta rápida pensada para insertarse directamente en el flujo de registro antes de crear una cuenta.
¿Puede marcar por error direcciones de empresas legítimas como desechables?
No; solo compara contra dominios conocidos como servicios de correo temporal, no contra dominios corporativos o personales comunes.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, y pronto desde nuestra app, el email y Telegram.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/verify/email-disposable \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"items":["valor-1","valor-2"]}'const res = await fetch("https://api.kit.forhosting.com/verify/email-disposable", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"items": [
"valor-1",
"valor-2"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/verify/email-disposable",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"items": [
"valor-1",
"valor-2"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/verify/email-disposable", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"items":["valor-1","valor-2"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"items":["valor-1","valor-2"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/verify/email-disposable", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"items": [
"valor-1",
"valor-2"
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "verify.email_disposable",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |