ForHosting KIT · Utilidades de desarrollo

Lanzar cientos de peticiones HTTP

Recorrer quinientas llamadas a una API desde su propio servidor significa quinientas conexiones abiertas, quinientas oportunidades de que algo se agote, y un script que tiene que vigilar reintentos a mano. Este endpoint toma la lista completa, la dispara, y le entrega cada respuesta en un solo lugar cuando todas están listas.

● EstablePor solicitud + por solicitud$0.002
Úselo desde WebAPIEmailApp prontoTelegram pronto

El script que no debería vivir en su servidor de aplicación

En casi todo código hay, en algún lugar, un bucle que llama a una API externa varios cientos de veces seguidas: verificar una lista de URLs para saber si siguen activas, obtener precios de una lista de endpoints de productos, notificar a una lista de webhooks de suscriptores. Ejecutado dentro del mismo proceso que atiende tráfico de usuarios, ese bucle compite por conexiones y CPU con las peticiones que realmente pagan las cuentas, y un solo endpoint lento en la lista puede frenar todo el lote. dev.http_batch saca ese bucle por completo de ahí.

Qué hace realmente una sola llamada

Envíe POST a /dev/http-batch con una lista de peticiones —cada una con su propia URL, método, encabezados y cuerpo según haga falta— y reciba un task_id de inmediato. Las peticiones corren de forma concurrente en segundo plano, cada una con su propio manejo de reintentos, sin tocar en ningún momento el pool de conexiones ni el ciclo de eventos de su propio servidor mientras están en vuelo.

Cómo regresan juntos los resultados

Una vez que cada petición del lote se resuelve —exitosa, fallida, o con sus reintentos agotados— el conjunto completo de resultados llega como un solo payload, emparejado con la petición que produjo cada uno, entregado mediante una llamada de webhook firmada o disponible detrás de un enlace firmado válido por 24 horas. No hay que construir un sondeo de resultados parciales; recibe el panorama completo en una sola entrega.

Reintentos, fallos y un precio honesto

Cualquier petición individual del lote que falle se reintenta automáticamente hasta tres veces antes de marcarse como un fallo claro en los resultados, y una petición que nunca se completa jamás se cobra; solo las peticiones completadas cuentan para el precio plano de $0.002 por petición. Eso importa a escala: un lote de quinientas peticiones donde veinte apuntan a un endpoint de terceros inestable no lo castiga a usted por la caída de otro.

Dónde reemplaza a un cron job frágil

Un script nocturno que revisa dos mil URLs de webhook de clientes para confirmar que siguen respondiendo, o un trabajo que consulta tasas de cambio de una docena de proveedores antes de conciliar libros, es exactamente el tipo de despliegue masivo para el que se construyó este endpoint: envíe la lista una vez, deje que el lote corra sin supervisión, y lea los resultados cuando lleguen en lugar de mantener un cliente HTTP con límites de concurrencia hecho a mano.

Verificación de salud de URLs de webhook de clientes

Una plataforma que entrega webhooks a cientos de clientes agrupa una verificación de disponibilidad contra cada URL registrada de forma periódica, marcando los endpoints que fallan.

Obtención de precios de varios proveedores

Un motor de precios llama a una docena de APIs de proveedores a la vez para actualizar precios de productos, en lugar de recorrerlas una por una dentro de la aplicación.

Notificaciones masivas simultáneas

Una plataforma de eventos envía la misma actualización a cientos de URLs de retorno registradas por socios en un solo lote, en lugar de encolar llamadas HTTP individuales.

Monitoreo del estado de terceros

Un panel operativo interno agrupa verificaciones de estado contra decenas de servicios externos de los que depende, y revisa los resultados una vez que el lote termina.

¿Cómo envío un lote de peticiones HTTP con esta API?

Envíe por POST una lista de peticiones —cada una con su propia URL, método, encabezados y cuerpo— a /dev/http-batch, guarde el task_id devuelto y reciba todos los resultados por webhook o mediante un enlace firmado válido por 24 horas.

¿Es gratis la API de peticiones HTTP en lote?

No, no hay plan gratuito ni prueba; cuesta una tarifa plana de $0.002 por petición completada dentro del lote, y las peticiones fallidas nunca se cobran.

¿Cuántas peticiones puede contener un lote?

El lote acepta una lista extensa de peticiones en una sola llamada; las listas muy grandes simplemente se procesan de forma concurrente y se devuelven juntas una vez que cada petición se resuelve.

¿Qué pasa si falla una petición dentro del lote?

Se reintenta automáticamente hasta tres veces, y si sigue fallando, los resultados la marcan claramente como fallida mientras el resto de las respuestas exitosas del lote no se ven afectadas.

¿Recibo los resultados a medida que terminan, o todos juntos?

Los resultados se entregan como un solo payload completo una vez que todo el lote se resuelve, emparejados con la petición que produjo cada uno.

¿Cada petición del lote puede usar un método o encabezados distintos?

Sí, cada petición de la lista es independiente, con su propia URL, método HTTP, encabezados y cuerpo según haga falta.

¿Sirve para hacer scraping o sondeo programado?

Está construido para un despliegue controlado y con propósito, como verificaciones de salud, obtención de precios o entrega de notificaciones; no es una herramienta general de scraping.

¿Ya está disponible este endpoint?

Sí, /dev/http-batch está disponible y aceptando solicitudes ahora mismo.

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.

POSThttps://api.kit.forhosting.com/dev/http-batch

¿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.

curl -X POST https://api.kit.forhosting.com/dev/http-batch \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":"…"}'
{
  "input": "…"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.http_batch",
  "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.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Ver la documentación completa del KIT →