# API de Generación de PDF y Documentos — Descripción de Zylalabs
**Copia y pega el texto a continuación en el campo "Descripción Larga" de Zylalabs:**
---
## Descripción General
La API de Generación de PDF y Documentos es una API REST de calidad de producción que convierte HTML, URLs y datos estructurados en documentos PDF perfectos en píxeles. Diseñada para desarrolladores que necesitan automatizar flujos de trabajo de documentos — facturas, recibos, informes, contratos, paneles — sin gestionar motores de navegador, servidores de Chromium o infraestructura de renderizado.
Impulsada por ProdaDoc, esta API maneja toda la tubería de PDF: generación, fusión y extracción de metadatos, todo a través de simples puntos finales de JSON de entrada y PDF de salida.
## Características Clave
**Conversión de HTML a PDF**
Envía cualquier cadena HTML — con soporte completo de CSS incluyendo Flexbox, Grid, fuentes personalizadas y consultas de medios para impresión — y recibe un PDF de calidad de producción en milisegundos. Perfecto para convertir plantillas de correo electrónico, paneles y documentos personalizados en PDFs descargables.
**Conversión de URL a PDF**
Convierte cualquier página web accesible públicamente en un documento PDF. La API renderiza toda la página incluyendo contenido generado por JavaScript, lo que la hace ideal para archivar páginas web, generar instantáneas de cumplimiento o crear copias offline de contenido web.
**Generación de PDF Basada en Plantillas**
Genera documentos profesionales a partir de plantillas predefinidas enviando datos JSON estructurados. Las plantillas disponibles incluyen:
- **Plantilla de Factura** — Artículos de línea, cálculo de impuestos, marca de empresa, términos de pago y detalles del cliente
- **Plantilla de Recibo** — Registros de transacciones con método de pago, ID de transacción y compras detalladas
- **Plantilla de Informe** — Informes comerciales de varias secciones con resumen ejecutivo, secciones de datos, conclusiones y marcas de confidencialidad
**Fusión de PDFs**
Combina de 2 a 20 documentos PDF separados en un solo archivo fusionado con una sola llamada a la API. Esencial para ensamblar paquetes de contratos, combinar informes de varias páginas o agrupar documentos relacionados para entrega.
**Extracción de Metadatos de PDF**
Extrae información detallada de cualquier archivo PDF incluyendo el conteo de páginas, dimensiones de página individuales (ancho y alto) y propiedades del documento. Útil para validación, catalogación y preprocesamiento de archivos PDF en flujos de trabajo automatizados.
## Puntos Finales de la API
| Método | Punto Final | Descripción |
|--------|----------|-------------|
| GET | /health | Verificación de salud y estado de la API (sin autenticación requerida) |
| POST | /api/v1/pdf/from-html | Generar un PDF a partir de una cadena HTML |
| POST | /api/v1/pdf/from-url | Generar un PDF a partir de una URL de página web |
| POST | /api/v1/pdf/from-template | Generar un PDF a partir de una plantilla predefinida con datos dinámicos |
| POST | /api/v1/pdf/merge | Fusionar múltiples archivos PDF en un solo documento |
| POST | /api/v1/pdf/metadata | Extraer conteo de páginas y dimensiones de un PDF |
## Opciones de Personalización
Cada punto final de generación de PDF admite una personalización extensa:
- **Formato de Página:** A3, A4, A5, Carta, Legal
- **Orientación:** Vertical u Horizontal
- **Márgenes:** Márgenes personalizados superior, derecho, inferior y izquierdo en milímetros
- **Escala:** Ajustar la escala del contenido del 10% al 200%
- **Impresión de Fondo:** Incluir o excluir colores y imágenes de fondo CSS
- **Encabezados y Pies de Página:** Plantillas de encabezado y pie de página HTML personalizadas con números de página
## Casos de Uso Comunes
**Plataformas SaaS** — Generar automáticamente facturas mensuales, informes de uso y exportar datos de usuarios como archivos PDF descargables directamente desde el backend de tu aplicación.
**Comercio Electrónico y Venta Minorista** — Imprimir recibos de compra detallados con detalles del método de pago (tarjeta de crédito, PayPal, M-Pesa, transferencia bancaria) e identificadores de transacción para registros de clientes.
**Servicios Legales y Financieros** — Fusionar múltiples páginas de contratos, NDAs, términos de servicio y documentos de enmiendas en un solo PDF agrupado para firmas de clientes.
**Freelancers y Agencias** — Crear facturas de marca con logotipo de la empresa, términos de pago y facturación por artículos en segundos sin necesidad de software de diseño.
**Salud y Medicina** — Generar informes de pacientes, resúmenes de alta y confirmaciones de citas como documentos PDF seguros.
**Educación** — Producir certificados, transcripciones e informes de evaluación a partir de registros de datos de estudiantes.
**Bienes Raíces** — Generar hojas de listado de propiedades, contratos de alquiler e informes de inspección a partir de datos estructurados.
## Seguridad
Esta API ha pasado por una auditoría de seguridad exhaustiva de 28 puntos que cubre:
- Validación de entrada en cada punto final utilizando validación de esquema estricta
- Protección contra SSRF (Server-Side Request Forgery) bloqueando el acceso a localhost, IPs privadas y puntos finales de metadatos en la nube
- Prevención de XSS con escape de entidades HTML en todas las plantillas
- Autenticación de clave API segura contra tiempos para prevenir ataques de tiempo
- Limitación de tasa por clave API para prevenir abusos
- Encabezados de seguridad incluyendo HSTS, Política de Seguridad de Contenido y X-Frame-Options
- Sin almacenamiento de PDFs generados — los documentos se devuelven inmediatamente y nunca se persisten
## Ejemplo de Integración
Genera un PDF de factura con una sola solicitud HTTP:
```
POST /api/v1/pdf/from-template
Content-Type: application/json
x-api-key: TU_CLAVE_API
{
"template": "invoice",
"data": {
"companyName": "Tu Empresa",
"clientName": "Nombre del Cliente",
"invoiceNumber": "INV-001",
"items": [
{
"description": "Servicios de Consultoría",
"quantity": 10,
"unitPrice": 150,
"amount": 1500
}
],
"total": 1500,
"currency": "USD"
}
}
```
Respuesta: Archivo PDF binario sin procesar (tipo de contenido application/pdf)
## Rendimiento
- Tiempo de respuesta promedio: Menos de 400 milisegundos para HTML a PDF
- Manejo de solicitudes concurrentes con un pool de navegadores gestionado
- Patrón de interruptor de circuito para recuperación automática de fallos
- Seguimiento de ID de solicitud en cada llamada a la API para observabilidad de extremo a extremo
## Manejo de Errores
Todos los errores devuelven respuestas JSON estructuradas con:
- Un código de error legible por máquina (VALIDATION_ERROR, UNAUTHORIZED, RATE_LIMITED, etc.)
- Un mensaje de error legible por humanos que explica qué salió mal
- Una bandera reintenable que indica si la solicitud puede ser reintentada
No se exponen jamás trazas de pila ni detalles del servidor interno a los consumidores de la API
Verifique el estado de la API y el tiempo de actividad. Agregue ?deep=true para probar el motor de renderizado de PDF y obtener estadísticas de uso de memoria. No se requiere autenticación.
Chequeo de Salud - Características del Endpoint
| Objeto | Descripción |
|---|
{"status":"healthy","timestamp":"2026-03-13T14:10:46.756Z","uptime":154731,"version":"1.0.0"}
curl --location --request GET 'https://zylalabs.com/api/12011/html+to+pdf+generation+api/22873/health+check' --header 'Authorization: Bearer YOUR_API_KEY'
Analiza un documento PDF y extrae metadatos detallados incluyendo título, autor, asunto, creador, productor, fecha de creación, fecha de modificación, número total de páginas y dimensiones individuales de las páginas (ancho y alto en puntos). Envía el PDF como una cadena codificada en base64. Tamaño máximo: 50MB. La respuesta es JSON
Extraer metadatos de PDF - Características del Endpoint
| Objeto | Descripción |
|---|---|
Cuerpo de la Solicitud |
[Requerido] Json |
{"metadata":{"title":null,"author":null,"subject":null,"creator":"pdf-lib (https://github.com/Hopding/pdf-lib)","producer":"pdf-lib (https://github.com/Hopding/pdf-lib)","creationDate":"2026-03-13T14:13:21.000Z","modificationDate":"2026-03-13T14:13:21.000Z","pageCount":1,"pages":[{"index":0,"width":72,"height":72}]},"requestId":"ded7bd08-06c3-451d-8767-87516d81b086"}
curl --location --request POST 'https://zylalabs.com/api/12011/html+to+pdf+generation+api/22878/extract+pdf+metadata' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"pdf": "JVBERi0xLjcKCjEgMCBvYmogICUKPDwvVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIKPj4KZW5kb2JqCgoyIDAgb2JqCjw8L1R5cGUgL1BhZ2VzCi9LaWRzIFszIDAgUl0KL0NvdW50IDEKPj4KZW5kb2JqCgozIDAgb2JqCjw8L1R5cGUgL1BhZ2UKL1BhcmVudCAyIDAgUgovTWVkaWFCb3ggWzAgMCA3MiA3Ml0KPj4KZW5kb2JqCgp4cmVmCjAgNAowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDAwMTAgMDAwMDAgbiAKMDAwMDAwMDA2MCAwMDAwMCBuIAowMDAwMDAwMTE2IDAwMDAwIG4gCnRyYWlsZXIKPDwvU2l6ZSA0Ci9Sb290IDEgMCBSCj4+CnN0YXJ0eHJlZgoxNzMKJSVFT0YK"
}'
| Encabezado | Descripción |
|---|---|
Autorización
|
[Requerido] Debería ser Bearer access_key. Consulta "Tu Clave de Acceso a la API" arriba cuando estés suscrito. |
Sin compromiso a largo plazo. Mejora, reduce o cancela en cualquier momento. La Prueba Gratuita incluye hasta 50 solicitudes.
Cada punto final devuelve tipos de datos específicos: los puntos finales de HTML a PDF, URL a PDF y generación de PDF a partir de plantillas devuelven archivos PDF binarios. El punto final de fusión de PDF también devuelve un archivo PDF binario. El punto final de extracción de metadatos devuelve un objeto JSON que contiene metadatos detallados sobre el PDF, incluido el título, el autor y el conteo de páginas
Los campos clave en la respuesta de extracción de metadatos incluyen "título" "autor" "tema" "creador" "productor" "fechaDeCreación" "fechaDeModificación" y "cantidadDePáginas" Las dimensiones de cada página también se incluyen en el arreglo "páginas"
El punto final de HTML a PDF acepta parámetros como "html" (el contenido HTML), "filename" (el nombre de archivo PDF deseado) y "options" para personalización, incluyendo "format" (A3, A4, etc.), "landscape" (verdadero/falso), "printBackground" (verdadero/falso) y configuraciones de "margin"
Los datos de respuesta para el endpoint de fusión de PDF están organizados como un archivo PDF binario El documento fusionado contiene todas las páginas de los PDFs de entrada en el orden en que se proporcionaron asegurando una combinación sin problemas de los documentos
El punto de acceso de extracción de metadatos de PDF proporciona información como el título del documento, autor, asunto, creador, productor, fechas de creación y modificación, número total de páginas y dimensiones individuales de las páginas, lo que permite un análisis documental integral
Los usuarios pueden personalizar sus solicitudes enviando datos JSON estructurados que incluyen campos específicos relevantes para la plantilla elegida (factura, recibo o informe) Cada plantilla permite la entrada de datos dinámicos como artículos para facturas o detalles de transacciones para recibos
Los casos de uso típicos incluyen generar facturas descargables a partir de plantillas HTML archivar páginas web como PDFs para cumplimiento y crear informes o paneles que necesitan ser compartidos en un formato portátil
Los usuarios pueden guardar la respuesta binaria en PDF directamente en un archivo con una extensión .pdf Esto permite compartir imprimir o archivar fácilmente documentos generados a través de la API asegurando que mantengan el formato y la calidad deseados
El endpoint de conversión de HTML a PDF acepta un tamaño máximo de HTML de 5MB Para la fusión de PDFs cada archivo PDF debe tener un tamaño máximo de 50MB El endpoint de extracción de metadatos también acepta PDFs de hasta 50MB
Los usuarios pueden personalizar la apariencia de los PDFs ajustando parámetros como "formato" (A3, A4, etc.), "orientación" (retrato o paisaje), "márgenes" (superior, inferior, etc.) y "impresión de fondo" (incluir o excluir colores e imágenes de fondo)
Si la solicitud falla, la API devolverá una respuesta JSON estructurada con un código de error, un mensaje explicativo y una bandera de repetición que indica si la solicitud se puede repetir
Para garantizar la renderización correcta los usuarios deben enviar HTML válido y bien estructurado incluyendo CSS compatible La API soporta Flexbox Grid y fuentes personalizadas permitiendo una formateo preciso
Los modelos disponibles incluyen factura (con ítems de línea y detalles de pago) recibo (con registros de transacción) y reporte (con secciones múltiples y resumen ejecutivo) permitiendo la creación de documentos profesionales
Los usuarios pueden mezclar de 2 a 20 PDFs enviando cada archivo como una cadena codificada en base64 La API devolverá un único PDF que contiene todas las páginas de los documentos de entrada en el orden proporcionado
Para procesar una URL, la página debe ser accesible públicamente. La API renderiza completamente la página, incluyendo contenido generado por JavaScript, pero bloquea URLs que acceden a localhost o IPs privados por motivos de seguridad
Nivel de Servicio:
100%
Tiempo de Respuesta:
3.502ms
Nivel de Servicio:
91%
Tiempo de Respuesta:
2.513ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
68ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
1.093ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
0ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
9.881ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
3.976ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
2.323ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
18ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
148ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
91ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
532ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
990ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
605ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
376ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
577ms
Nivel de Servicio:
99%
Tiempo de Respuesta:
2.279ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
596ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
315ms
Nivel de Servicio:
100%
Tiempo de Respuesta:
601ms