Influxion Logo

Influxion is a FastAPI-based microservice for generating PDFs from structured JSON data and HTML/CSS templates.

To try it out, check the Swagger UI or the examples in the examples section.

Features

  • Accepts JSON input

  • OAuth2 authentication through Entra ID.

  • Supports optional custom HTML (Jinja2) and CSS templates

  • Supports optional PDF standards (e.g., PDF/A, PDF/UA)

  • Supports optional digital signing with Azure Key Vault certificate

  • Query job status via /pdf/{job_id}

  • Download generated PDF via /pdf/{job_id}/download

  • Optional Celery worker for background PDF generation (configure via INFLUXION_USE_CELERY, INFLUXION_CELERY_BROKER_URL, and INFLUXION_CELERY_RESULT_BACKEND)

It uses:

  • FastAPI for the API framework,

  • Jinja2 for templating,

  • Pydantic for data validation,

  • WeasyPrint for PDF rendering and supports optional custom templates,

  • PyHanko for digital signing of documents with certificates stored in Azure Key Vault.

  • Azure Key Vault for secure certificate management.

  • Celery for background task processing (optional).