API de Documento a PDF#
Los endpoints de Documentos a PDF convierten archivos de oficina y documentos (Microsoft Word, Excel y PowerPoint, Apple iWork Pages y Numbers, formatos OpenDocument, además de HTML y Markdown) en PDFs de alta calidad a través de una sola API REST. Cada endpoint acepta una carga multipart/form-data y convierte de forma síncrona, devolviendo bytes de PDF sin procesar por defecto o metadatos JSON con una URL de descarga firmada. Los formatos de Office e iWork se renderizan en el servidor con LibreOffice preservando el formato, las fuentes y el diseño propios del documento, mientras que HTML y Markdown se renderizan con WeasyPrint y admiten tamaños de página, márgenes, encabezados y pies de página personalizados mediante pdf_options.
Conversiones admitidas#
| Conversión | Endpoint | Descripción |
|---|---|---|
| Cualquier archivo a PDF | POST /v1/convert/anything-to-pdf |
Endpoint comodín: acepta 36 extensiones de archivo (Office, iWork, OpenDocument, RTF, CSV, HTML, Markdown, texto, EPUB, imágenes, SVG, PDF) y siempre devuelve un PDF. |
| Cualquier archivo a Markdown | POST /v1/convert/anything-to-markdown |
Endpoint comodín: acepta 22 extensiones y siempre devuelve un único archivo Markdown UTF-8. Sin OCR, así que una imagen devuelve 400. |
| HTML a PDF | POST /v1/convert/html-to-pdf |
Renderiza archivos .html o .htm a PDF con WeasyPrint, con tamaño de página, márgenes, orientación, encabezados y pies de página controlados mediante pdf_options. |
| Markdown a PDF | POST /v1/convert/markdown-to-pdf |
Convierte archivos .md o .markdown en PDFs con estilo, con tablas, bloques de código resaltados por sintaxis y una tabla de contenido opcional [TOC]. |
| Word a PDF | POST /v1/convert/doc-to-pdf |
Convierte documentos de Microsoft Word .doc y .docx a PDF con LibreOffice, preservando fuentes, formato y diseño de página. |
| Excel a PDF | POST /v1/convert/excel-to-pdf |
Convierte hojas de cálculo de Microsoft Excel .xlsx y .xls a PDF con el renderizado de alta fidelidad de LibreOffice. |
| PowerPoint a PDF | POST /v1/convert/ppt-to-pdf |
Convierte presentaciones de Microsoft PowerPoint .ppt y .pptx a PDF preservando el formato de las diapositivas y las fuentes. |
| Pages a PDF | POST /v1/convert/pages-to-pdf |
Convierte documentos de Apple iWork Pages .pages a PDF mediante renderizado en el servidor con LibreOffice. |
| Numbers a PDF | POST /v1/convert/numbers-to-pdf |
Convierte hojas de cálculo de Apple iWork Numbers .numbers a PDF preservando el formato y el diseño. |
| ODT a PDF | POST /v1/convert/odt-to-pdf |
Convierte archivos OpenDocument Text .odt (el formato nativo de LibreOffice/OpenOffice Writer) a PDF. |
| ODS a PDF | POST /v1/convert/ods-to-pdf |
Convierte archivos OpenDocument Spreadsheet .ods de LibreOffice u OpenOffice Calc a PDF. |
| ODP a PDF | POST /v1/convert/odp-to-pdf |
Convierte archivos OpenDocument Presentation .odp de LibreOffice u OpenOffice Impress a PDF. |
| OTS a PDF | POST /v1/convert/ots-to-pdf |
Convierte archivos de plantilla OpenDocument Spreadsheet Template .ots a PDF con renderizado de LibreOffice. |
Convenciones comunes#
- Autenticación: cada endpoint requiere una clave de API privada mediante el encabezado
X-API-Keyo un JWT de una clave pública medianteAuthorization: Bearer. Consulta Autenticación. - Formato de solicitud: todos los endpoints aceptan
multipart/form-datacon el documento en el campofile, además de los campos opcionalesoutput_filename,direct_downloadypdf_options. Consulta Trabajos síncronos y asíncronos. - Respuestas síncronas: las conversiones se ejecutan de forma síncrona y devuelven bytes de PDF sin procesar (
application/pdf) por defecto; establecedirect_download=falsepara recibir en su lugar metadatos JSON conpresigned_url,object_key,filename,file_sizeyconversion_time_seconds. - Opciones de PDF: HTML y Markdown (renderizados con WeasyPrint) admiten
pdf_optionscompleto, incluyendo tamaño de página, márgenes, orientación, encabezados y pies de página; los formatos de oficina basados en LibreOffice toman el diseño de página del documento original y solo admitengrayscale. Consulta Trabajos síncronos y asíncronos. - Errores y límites: los endpoints comparten la misma semántica de errores:
400por tipo de archivo incorrecto o conversión fallida,401por credenciales faltantes o inválidas,402cuando se agota la cuota mensual de ops o se alcanza el límite de almacenamiento, y413cuando el archivo supera el límite de tamaño del plan. Consulta Códigos de error.
Preguntas frecuentes#
¿Qué formatos de documento puedo convertir a PDF con la API?#
Se admiten once formatos de entrada: HTML (.html, .htm), Markdown (.md, .markdown), Word (.doc, .docx), Excel (.xlsx, .xls), PowerPoint (.ppt, .pptx), Apple Pages (.pages), Apple Numbers (.numbers), y los formatos OpenDocument .odt, .ods, .odp y .ots. Cada uno tiene su propio endpoint dedicado POST /v1/convert/*.
¿Puedo controlar el tamaño de página, los márgenes, los encabezados y los pies de página en el PDF de salida?#
Solo en los endpoints renderizados con WeasyPrint (HTML a PDF y Markdown a PDF), donde pdf_options acepta page_size, ancho/alto personalizados en milímetros, orientation, margins y header/footer con variables de plantilla como {{page}} y {{total_pages}}. Los endpoints de oficina basados en LibreOffice preservan el diseño de página propio del documento original y solo admiten la opción grayscale.
¿Cómo obtengo una URL de descarga en lugar de bytes de PDF sin procesar?#
Establece direct_download=false en cualquier endpoint. En lugar del cuerpo del PDF, la respuesta es metadatos JSON que contienen una presigned_url para descargar el archivo, junto con object_key, filename, file_size y conversion_time_seconds.