Convertir un correo en webhook
Deje de volver a teclear lo que llega por correo: elija un buzón, por ejemplo uno de facturas, y cada mensaje enviado ahí llega a su sistema como remitente, asunto, texto y adjuntos, listo para guardar o procesar. Pague por uso, sin suscripción.
Esta tarea no está disponible ahora mismo, así que no se puede contratar. No se cobra nada por ella.
Cómo funciona y APIEs para la dirección del correo que casi siempre se ignora: no lo que envía, sino lo que llega a su bandeja y necesita convertirse en parte de su aplicación.
El correo que entra, no el que sale
Casi todos los sistemas de avisos están hechos para enviar correo; casi ninguno para recibirlo y hacer algo útil con lo que vuelve. Un cliente responde a una incidencia, alguien reenvía un recibo a la dirección de gastos, un proveedor manda una orden de compra en PDF, y ese mensaje suele quedarse en un buzón hasta que una persona lo vuelve a teclear. Aquí usted elige el nombre de un buzón, y cada mensaje que llega a esa dirección se descompone en remitente, asunto, texto y adjuntos y se entrega a su propio sistema como datos ordenados, con los archivos incluidos en lugar de enlaces que haya que ir a buscar.
Dónde ayuda y qué tener en cuenta
Los recibos y facturas reenviados pueden entrar en su sistema de gastos sin que nadie vuelva a escribir el importe, y los pedidos de proveedores pueden leerse en cuanto llegan, sin esperar a que alguien abra la bandeja. Un paso sencillo de «responda para confirmar» puede guardar la respuesta como datos sin construir un formulario web. Los mensajes de hoy mezclan adjuntos, imágenes insertadas y reenvíos con el historial citado, así que cuente con esa variedad y no suponga que lo útil está siempre en la primera línea. Si su sistema no está disponible un momento, el resultado puede recuperarse con un enlace firmado válido durante 24 horas.
El correo saliente se lleva toda la atención; el entrante es la mitad difícil
Casi todos los sistemas de notificación están construidos para enviar correo; casi ninguno está construido para recibirlo y hacer algo útil con lo que llega. Un cliente responde a un ticket de soporte, alguien reenvía un recibo a una dirección de gastos, un proveedor envía una orden de compra en PDF por correo: ese tráfico entrante normalmente solo se queda en una bandeja, leído por una persona que luego lo vuelve a escribir a mano en un sistema.
Dónde encaja el análisis de correo entrante en la historia de la automatización
Leer correo de forma programática es tan antiguo como los propios servidores de correo: los primeros sistemas analizaban el contenido de una bandeja con expresiones regulares frágiles atadas a un formato específico. Lo que cambió es la diversidad: adjuntos, MIME multipartes, imágenes incrustadas, hilos reenviados con historial citado.
Qué puede hacer con ella
Recibos y facturas reenviados
Un empleado reenvía un recibo a una dirección de gastos, y el PDF adjunto llega a su sistema de gastos sin que nadie tenga que volver a escribir el monto.
Órdenes de compra de proveedores por correo
Un proveedor envía una orden de compra como adjunto, y se analiza hacia su sistema de pedidos en el momento en que llega, en lugar de esperar a que alguien abra su bandeja.
Formularios ligeros vía correo
Un flujo simple de 'responde a esta dirección para confirmar' captura el contenido de la respuesta como datos estructurados sin necesidad de construir un formulario web para eso.
Preguntas frecuentes
¿Hay una capa gratuita para probar el correo entrante?
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.
¿Maneja correos multipartes y en HTML?
Sí, el pipeline de análisis descompone los cuerpos en texto plano y HTML junto con los adjuntos sin importar cómo se haya compuesto el mensaje original.
¿Puedo usarlo para algo más que respuestas de soporte?
Sí: cualquier flujo donde el correo sea el canal de entrada más fácil para una persona, desde facturas reenviadas hasta órdenes de proveedores, se puede convertir en datos estructurados de esta forma.
¿Qué información recibo de cada correo?
La dirección del remitente, el asunto, el texto simple y con formato cuando existan, y cada adjunto en una forma que su sistema puede guardar o procesar directamente, como un PDF, una imagen o una hoja de cálculo reenviada.
¿Se puede procesar cada adjunto automáticamente?
Sí. Al crear la dirección puede elegir una tarea que se aplicará a cada adjunto, como leer una factura. El asunto de un mensaje concreto puede cambiarla por otra tarea cuando haga falta.
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
Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. Esta capacidad está disponible actualmente mediante la API, no como herramienta interactiva en la Web.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/notify/email-in \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"alias":"facturas"}'const res = await fetch("https://api.kit.forhosting.com/notify/email-in", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"alias": "facturas"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/notify/email-in",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"alias": "facturas"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/notify/email-in", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"alias":"facturas"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"alias":"facturas"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/notify/email-in", 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
{
"alias": "facturas"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "notify.email_in",
"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. |
Notas técnicas
POST /notify/email-in toma un correo que recibe su sistema —la respuesta de un cliente, un mensaje a soporte, un documento reenviado— y lo convierte en datos estructurados entregados a su propio webhook, con los adjuntos incluidos.
El correo saliente se lleva toda la atención; el entrante es la mitad difícil
Este endpoint existe específicamente para cerrar ese ciclo.
Cómo un correo se convierte en una llamada webhook
Una dirección que usted configura enruta el correo entrante hacia el pipeline de análisis; el mensaje se descompone en remitente, asunto, cuerpo y adjuntos, y se entrega a su aplicación como una llamada webhook con esos datos estructurados, con los adjuntos incluidos en lugar de dejarlos como enlaces que hay que ir a buscar por separado. El procesamiento en sí es asíncrono: un task_id rastrea la tarea, y también puede obtener el resultado mediante un enlace firmado válido por 24 horas si necesita un respaldo a la entrega por webhook.
Dónde encaja el análisis de correo entrante en la historia de la automatización
Un endpoint de análisis tiene que manejar todo eso de forma consistente, que es exactamente el trabajo tedioso y de alto mantenimiento que esta llamada le quita de encima.
Qué llega del otro lado
Su webhook recibe la dirección del remitente, la línea de asunto, los cuerpos en texto plano y HTML cuando están disponibles, y cada adjunto en una forma que su aplicación puede almacenar o procesar directamente: un PDF subido, una imagen, una hoja de cálculo que alguien reenvió. No hay que consultar una bandeja periódicamente ni mantener una conexión IMAP; en el momento en que llega el correo, se llama a su endpoint.
Por qué esto pertenece a un flujo automatizado
Convertir un correo en una llamada webhook significa que el correo entrante puede disparar la misma lógica posterior que cualquier otra fuente de eventos en su sistema —crear un ticket de soporte, registrar un gasto, adjuntar un documento a un registro— sin que una persona actúe como puente manual. Una entrega fallida a su webhook se reintenta automáticamente hasta tres veces, y no se cobra nada por un intento que nunca se completa.
Casos de integración
Respuestas a tickets de soporte por correo
Un cliente responde directamente a la notificación de un ticket, y esa respuesta se convierte en una llamada webhook que agrega su mensaje al ticket automáticamente.
Preguntas técnicas
¿Cómo se enruta un correo hacia la API?
Configura una dirección de entrada que enruta hacia el pipeline de análisis; el correo enviado ahí se analiza y se entrega a su webhook como datos estructurados de forma automática.
¿Los adjuntos se incluyen en el payload del webhook?
Sí: los adjuntos se entregan junto con el resto del mensaje analizado en lugar de quedar rezagados, así que un PDF o una imagen reenviados llegan listos para almacenar o procesar.
¿Cuánto cuesta el análisis de correo entrante?
$0.002 por solicitud más $0.0035 por correo procesado, la misma estructura que nuestros envíos salientes.
¿Qué pasa si mi endpoint webhook está caído brevemente?
La entrega a su webhook se reintenta automáticamente hasta tres veces antes de generar un error claro, y una tarea fallida nunca se cobra.
¿Puedo obtener el resultado analizado sin un webhook?
Sí, también está disponible un enlace firmado válido por 24 horas como respaldo si prefiere consultar el resultado en lugar de recibirlo por notificación.