---
title: "Deploy JODConverter"
description: "Convert Word, Excel and others to PDF (and back) through a simple REST API"
category: "Automation"
url: https://railway.com/deploy/jodconverter
---

# Deploy JODConverter

Convert Word, Excel and others to PDF (and back) through a simple REST API

**[Deploy JODConverter on Railway](https://railway.com/template/jodconverter)**

- **Creator:** olivier4429's Projects
- **Category:** Automation

## Template content

### JODTemplateRailway https://devicons.railway.com/i/coder-light.png

- **Source:** https://github.com/olivier4429/JODTemplateRailway
- **Health check:** /swagger-ui/index.html
- **Public domain:** Yes

## Documentation

# Deploy and Host JODConverter on Railway

JODConverter is a REST API that converts office documents from one format
to another — `docx → pdf`, `xlsx → csv`, `odt → docx`, `html → pdf`, and
most other pairs LibreOffice supports — by wrapping headless LibreOffice
behind a simple HTTP endpoint. Send a file, get back the converted result.

## About Hosting JODConverter

This template packages the official `jodconverter/jodconverter-examples:rest`
image (headless LibreOffice + the JODConverter Spring Boot REST sample)
behind an nginx proxy, so it deploys on Railway with zero configuration:
dynamic `$PORT` binding, sane default upload-size limits, and an optional
API-key gate you can turn on later. There's no database or external
service to provision — one container does the whole job. Budget at least
1GB RAM per instance, since headless LibreOffice conversions are
memory-hungry.

## Common Use Cases

- Converting user-uploaded Word/Excel/PowerPoint documents to PDF from a web or mobile app's backend
- Batch-converting a document archive to a different format (e.g. legacy `.doc`/`.xls` files to `.docx`/`.xlsx` or PDF) as part of a migration pipeline
- Generating PDF exports of reports or invoices produced as `.docx`/`.odt` templates in an internal tool

## Dependencies for JODConverter Hosting

- No external database or managed service required — it's a single self-contained container
- A Railway plan with at least 1GB RAM per instance (headless LibreOffice conversions need it)

### Implementation Details

Once deployed, convert a file with a single request:

```bash
curl -F "data=@document.docx" https://{your_domain}.up.railway.app/lool/convert-to/pdf -o document.pdf
```

Interactive API docs are available at `/swagger-ui/index.html`. By default
the conversion endpoint has **no authentication** — anyone with the URL
can submit documents. Set the `API_KEYS` variable to a comma-separated
list of keys to require one of them (as an `X-Api-Key` header or an
`apiKey` query parameter) on every request; leave it empty to keep the
service open. Either way, consider keeping it on Railway's private network
and calling it only from your other services if it doesn't need to be
public.

If `API_KEYS` is set, pass one of the configured keys as a header:

```bash
curl -F "data=@document.docx" -H "X-Api-Key: " https://{your_domain}.up.railway.app/lool/convert-to/pdf -o document.pdf
```

or as a query parameter instead, if a header isn't convenient:

```bash
curl -F "data=@document.docx" "https://{your_domain}.up.railway.app/lool/convert-to/pdf?apiKey=" -o document.pdf
```

## Why Deploy JODConverter on Railway?


Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying JODConverter on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.



## Similar templates

- [N8N Main + Worker](https://railway.com/deploy/n8n-main-worker) — Deploy and Host N8N with Inactive worker.
- [Evolution API with n8n](https://railway.com/deploy/evolution-api-with-n8n) — Automate WhatsApp workflows with Evolution API, n8n, and Postgres.
- [Postgres Backup](https://railway.com/deploy/postgres-s3-backups) — Cron-based PostgreSQL backup to bucket storage

Open this page in a browser: https://railway.com/deploy/jodconverter
