Detectar spam
Envíe un lote de comentarios, formularios de contacto o reseñas y cada uno vuelve con su probabilidad de spam y un motivo breve, para aprobarlo, rechazarlo o pasarlo a revisión antes de que lo lea un moderador. Paga por uso, sin suscripción.
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.
Todo formulario abierto en internet termina atrayendo spam tarde o temprano.
Por qué las listas de palabras ya no bastan
Quien gestiona una sección de comentarios, un formulario de registro, las reseñas de un marketplace o una bandeja de soporte acaba chocando con lo mismo: los bots y el spam de poco esfuerzo superan a los envíos reales. Los equipos pequeños no tienen moderadores, y los grandes no quieren a nadie leyendo ofertas de zapatillas falsas todo el día. Filtrar spam siempre ha sido una carrera: primero listas de palabras prohibidas, después filtros estadísticos entrenados con ejemplos etiquetados y hoy modelos que leen la intención y la redacción en lugar de buscar patrones fijos. Importa porque el spam actual rara vez se repite palabra por palabra: llega parafraseado, traducido o generado al momento.
Dónde encaja la puntuación
Puntúe cada comentario antes de publicarlo, oculte automáticamente lo que supere su umbral y deje los casos dudosos a un moderador. Filtre los formularios rellenados por bots para que la bandeja de ventas solo reciba mensajes que merecen respuesta. Detecte reseñas falsas y spam promocional antes de que afecten a la valoración de un producto, y saque los tickets basura de la cola de soporte para que los agentes atiendan a clientes reales. Como cada elemento trae una probabilidad y un motivo, usted decide cuánto rigor aplicar. Los lotes grandes son lo normal, y una tarea fallida se reintenta automáticamente tres veces.
A quién le sirve de verdad
Quien administre una sección de comentarios, un formulario de registro, reseñas de un marketplace o la entrada de tickets de soporte choca tarde o temprano con lo mismo: los bots y el spam de bajo esfuerzo superan en número a las publicaciones reales. Los equipos pequeños no tienen personal de moderación, y los grandes no quieren que alguien lea ofertas de zapatos falsificados todo el día.
Por qué la detección de spam es un blanco móvil
El filtrado de spam siempre fue una carrera armamentista: las primeras heurísticas eran listas de palabras prohibidas, después los filtros bayesianos aprendieron de corpus etiquetados, y ahora los modelos que entienden lenguaje leen la intención y el tono en vez de buscar patrones fijos. Ese cambio importa porque el spam moderno rara vez se repite palabra por palabra —está parafraseado, traducido o generado al vuelo, así que un filtro que solo conoce el spam de ayer se pierde el de hoy.
Qué puede hacer con ella
Secciones de comentarios a gran escala
Puntúe cada comentario entrante antes de publicarlo, ocultando automáticamente lo que supere su umbral de spam y dejando los casos dudosos para un moderador.
Formularios de contacto y leads
Filtre los envíos generados por bots para que su bandeja de ventas solo reciba consultas que valga la pena responder.
Reseñas de marketplace
Detecte reseñas falsas y spam promocional antes de que afecten la calificación de un producto o la confianza pública.
Entrada de tickets de soporte
Elimine los tickets basura de la cola para que los agentes dediquen tiempo a problemas reales de clientes, no a publicidad.
Preguntas frecuentes
¿Existe una capa gratuita para detección de spam?
No hay capa gratuita: las capas gratis se abusan y ralentizan a todos. Sin suscripción, sin tokens ni créditos inventados, y una tarea fallida no se cobra.
¿Qué trae exactamente la respuesta?
Cada elemento recibe una probabilidad de spam y un código de motivo breve, suficiente para automatizar aprobación, rechazo o revisión humana en su propio flujo.
¿Funciona en idiomas distintos al inglés?
El modelo lee la intención y el tono en vez de buscar palabras fijas, lo que le permite reconocer spam en varios idiomas, no solo en patrones en inglés.
¿Qué pasa si una tarea de puntuación falla?
La tarea se reintenta automáticamente hasta tres veces; si sigue fallando, recibe un error claro y no se le cobra ese elemento.
¿Qué hago con los mensajes dudosos?
Fije su propio umbral. Cada elemento recibe una probabilidad de spam y un motivo breve, así que puede aprobar los casos claros, rechazar la basura evidente y enviar lo intermedio a un moderador, con el rigor que necesite su proceso.
Herramientas relacionadas
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, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/text/spam \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"El informe trimestral cerró con 1,2 M€ de ingresos."}'const res = await fetch("https://api.kit.forhosting.com/text/spam", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "El informe trimestral cerró con 1,2 M€ de ingresos."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/spam",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "El informe trimestral cerró con 1,2 M€ de ingresos."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/spam", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"El informe trimestral cerró con 1,2 M€ de ingresos."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"El informe trimestral cerró con 1,2 M€ de ingresos."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/spam", 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
{
"text": "El informe trimestral cerró con 1,2 M€ de ingresos."
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.spam",
"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.
Límites
max_tokens | 20000 |
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. |
422 | task_failed | La tarea falló tras 3 reintentos. No se cobra. |
Notas técnicas
Esta API de detección de spam analiza texto entrante —comentarios, formularios de contacto, reseñas, publicaciones de foro— para que pueda retener, marcar o descartar la basura antes de que llegue a la bandeja de un moderador.
A quién le sirve de verdad
El endpoint text.spam existe para ese hueco exacto: una capa de puntuación que se coloca delante de cualquier campo donde los usuarios puedan escribir.
Qué envía y qué recibe
Cada elemento del resultado trae una probabilidad de spam y un código de motivo breve, suficiente para aprobar automáticamente, rechazar automáticamente o enviar a revisión humana según qué tan conservador necesite ser su flujo. Envía un arreglo de textos por POST a /text/spam y obtiene de inmediato un task_id —la clasificación corre de forma asíncrona, así que nunca mantiene una conexión abierta mientras se procesan diez mil comentarios.
Cómo encaja en un flujo automatizado
Como los resultados llegan a un webhook firmado, lo habitual es tener un worker de cola que envía cada comentario nuevo apenas llega y actualiza una columna de estado cuando el webhook dispara —sin necesidad de un bucle de sondeo. Los equipos que prefieren no exponer un endpoint receptor pueden en cambio recuperar el resultado desde el enlace firmado, válido por 24 horas, tiempo suficiente para un lote de moderación nocturno.
Qué cuesta y cuándo se cobra
El precio es $0.003 por solicitud más $0.0135 por elemento evaluado, y solo se cobra por lo que realmente se procesó —una tarea fallida se reintenta automáticamente tres veces y nunca se cobra si sigue fallando. No hay capa gratuita ni saldo de prueba; el acceso requiere una saldo prepago, lo que mantiene el endpoint libre del abuso que suelen atraer los planes gratuitos.
Preguntas técnicas
¿Cómo funciona la api de deteccion de spam?
Envía textos por POST a /text/spam, recibe un task_id, y al terminar el procesamiento obtiene una probabilidad de spam y un código de motivo por cada elemento, entregado por webhook o enlace firmado.
¿Cuánto cuesta puntuar comentarios o formularios?
Cuesta $0.003 por solicitud más $0.0135 por elemento evaluado, y nunca se cobra una tarea que termina fallando.
¿Puedo enviar un lote grande de comentarios de una vez?
Sí, el endpoint está pensado para puntuación masiva —envía un arreglo de elementos en una sola solicitud y los resultados llegan como lote de forma asíncrona.
¿Cómo recibo los resultados, por webhook o consultando?
Los resultados llegan por webhook firmado, que es lo recomendado, o mediante un enlace firmado válido por 24 horas si prefiere consultarlo en su propio horario.