Convertir un informe HTML en PDF
La API Informe PDF toma un documento HTML — la exportación de un tablero, un resumen de datos, un análisis con formato — y lo pagina en un PDF adecuado con encabezados, saltos de página y márgenes consistentes. Es para los informes que sus sistemas ya saben mostrar como página web pero que necesita entregar como archivo.
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.
Una página web y un informe no son el mismo objeto
Muchas herramientas internas ya muestran una vista HTML funcional de un informe — un resumen mensual, una captura de un tablero, un desglose analítico — pero una página web no es algo que se adjunte a un correo, se archive por cumplimiento o se entregue a un cliente que espera un documento, no un enlace que podría cambiar mañana. La api generar informe pdf convierte lo que ya renderiza como HTML en algo que se comporta como un informe terminado: fijo, paginado y portátil.
Qué le pasa a su HTML
Envía el contenido HTML — el marcado directamente o una referencia que el servicio pueda obtener — y se renderiza y pagina en un PDF que respeta sus estilos mientras agrega lo que un informe impreso necesita: saltos de página razonables que evitan cortar una tabla por la mitad, márgenes consistentes y encabezados o pies de página repetidos para que quien lo lea sepa a qué sección pertenece cada página.
Cómo funcionan la conversión y la entrega
Llama a POST /pdf/report con su HTML y recibe de inmediato un task_id, sin necesidad de una conexión abierta mientras corre la paginación. El PDF se construye de forma asíncrona en nuestra red global, y en cuanto está listo le avisamos por webhook firmado — muy adecuado para un flujo de informes que envía o archiva el archivo automáticamente — o por un enlace firmado válido 24 horas cuando alguien solo necesita abrir un informe.
Dónde encaja en un flujo de informes
Está pensada para colocarse al final de lo que ya produce su HTML: una herramienta de inteligencia de negocio que exporta la captura semanal de un tablero, un sistema interno que compila un resumen de desempeño para un cliente, un proceso analítico que renderiza un desglose mensual archivable como registro fijo. Como recibe HTML como entrada, sigue usando la plantilla o el sistema de gráficos que ya tiene — el endpoint solo convierte esa página en un documento con paginación real, no reescribe su informe.
Precio y tratamiento de los datos del informe
El cobro es de $0.040 por solicitud más $0.001 por página, una tarifa publicada, sin tokens ni créditos inventados — un informe más largo cuesta más precisamente porque tiene más páginas, sin nada oculto en el medio. Una conversión fallida nunca se cobra; reintentamos tres veces antes de devolver un error claro. El acceso requiere saldo prepago, sin plan gratuito ni prueba, lo que mantiene el endpoint rápido y libre de abuso; las solicitudes sin saldo reciben un 402. El contenido del informe se elimina tras la ventana de retención y nunca se usa para entrenamiento.
Qué puede hacer con ella
Capturas semanales de tableros
Una herramienta de inteligencia de negocio exporta su tablero en vivo como HTML y lo convierte en un PDF paginado cada semana para que los interesados tengan un registro fijo y archivable.
Resúmenes de desempeño para clientes
Una agencia renderiza internamente un informe mensual de desempeño como HTML y lo convierte en un PDF con su marca para enviárselo a cada cliente.
Archivos de cumplimiento y auditoría
Un sistema interno convierte un informe analítico renderizado a PDF en cada período para dejar un documento fijo e inalterable en el expediente de auditoría.
Resúmenes automáticos de fin de proceso
Un pipeline de datos renderiza un resumen HTML cuando termina un trabajo y lo convierte en un PDF que se adjunta a la notificación de finalización.
Preguntas frecuentes
¿Cómo genero un informe en PDF con una API?
Envíe su informe HTML a POST /pdf/report y recibe un task_id. La api generar informe pdf pagina y renderiza el documento de forma asíncrona, entregándolo por webhook firmado o por un enlace firmado válido 24 horas.
¿Esta API es gratis?
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.
¿Maneja bien los saltos de página o se corta el contenido?
El servicio pagina el contenido con saltos de página razonables y márgenes consistentes, evitando cortes incómodos en tablas o bloques siempre que el diseño lo permita.
¿Puedo incluir encabezados, pies de página o numeración?
Sí. Se admiten encabezados y pies de página repetidos para que cada página identifique su sección, lo que hace que un informe largo sea navegable en lugar de un muro de páginas.
¿Cómo se cobra un informe largo?
Paga $0.040 por solicitud más $0.001 por página, así que el costo escala directamente con la cantidad de páginas que realmente produce su informe.
¿Puedo convertir informes en lote de forma programada?
Sí. El endpoint es asíncrono y cada llamada devuelve su propio task_id, lo cual encaja con un trabajo programado que renderiza y convierte un lote de informes de forma recurrente.
¿Qué pasa si falla la conversión?
Una tarea fallida nunca se cobra. Reintentamos tres veces y devolvemos un error claro en lugar de un fallo silencioso o un cargo inesperado.
¿Cuánto tiempo puedo acceder al informe generado?
El enlace firmado permanece válido 24 horas, o puede recibir el PDF de inmediato por webhook firmado. Tras la ventana de retención se elimina y nunca se usa para entrenamiento.
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/pdf/report \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pdf":"https://ejemplo.com/documento.pdf"}'const res = await fetch("https://api.kit.forhosting.com/pdf/report", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pdf": "https://ejemplo.com/documento.pdf"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/report",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pdf": "https://ejemplo.com/documento.pdf"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/report", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pdf":"https://ejemplo.com/documento.pdf"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pdf":"https://ejemplo.com/documento.pdf"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/report", 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
{
"pdf": "https://ejemplo.com/documento.pdf"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.report",
"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_mb | 25 |
max_pages | 200 |
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. |
413 | input_too_large | El archivo supera el límite de tamaño. |
422 | task_failed | La tarea falló tras 3 reintentos. No se cobra. |