API reference
Every endpoint lives under /v1 and speaks JSON, except conversion responses, which return the converted file directly.
Authentication
Pass your key as a bearer token. Keys are created in the dashboard and scoped per project.
Authorization: Bearer wm_live_8f2a...
Convert a single file
POST /v1/convert accepts a multipart form with three fields.
| Field | Type | Notes |
|---|---|---|
| from | string | docx, md, html, pdf |
| to | string | docx, md, html, pdf |
| file | binary | 50 MB maximum |
curl -X POST https://word.bvrdo.online/v1/convert \
-H "Authorization: Bearer $WORDMILL_KEY" \
-F "from=docx" -F "to=markdown" \
-F "file=@report.docx" -o report.md
Batch jobs
POST /v1/batch queues up to 200 files and returns a job id. Poll GET /v1/batch/{id} until state becomes done, then download the archive.
Errors
| Status | Code | Meaning |
|---|---|---|
| 400 | unsupported_pair | That from/to combination is not available |
| 401 | invalid_key | Key missing, revoked or malformed |
| 413 | file_too_large | Upload exceeded the plan limit |
| 429 | rate_limited | Retry after the seconds given in Retry-After |
| 503 | renderer_busy | Transient; safe to retry with backoff |
Versioning
Renderer versions are pinned per project. We publish a new version roughly every quarter and keep the previous two available for at least twelve months.