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-Key o un JWT de una clave pública mediante Authorization: Bearer. Consulta Autenticación.
  • Formato de solicitud: todos los endpoints aceptan multipart/form-data con el documento en el campo file, además de los campos opcionales output_filename, direct_download y pdf_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; establece direct_download=false para recibir en su lugar metadatos JSON con presigned_url, object_key, filename, file_size y conversion_time_seconds.
  • Opciones de PDF: HTML y Markdown (renderizados con WeasyPrint) admiten pdf_options completo, 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 admiten grayscale. Consulta Trabajos síncronos y asíncronos.
  • Errores y límites: los endpoints comparten la misma semántica de errores: 400 por tipo de archivo incorrecto o conversión fallida, 401 por credenciales faltantes o inválidas, 402 cuando se agota la cuota mensual de ops o se alcanza el límite de almacenamiento, y 413 cuando 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.