Docs

Convert your first document

The API accepts a multipart file upload and returns GitHub-Flavored Markdown.

1. Create an API key

Your monthly allowance is tied to your account, not to any single key.: every key you create draws from the same subscription pool.

The free plan includes 100 pages every month. Paid allowances begin at 1,500 pages.

Try it right now — get a one-time key good for a single conversion. No account needed.

Log in with GitHub to create a permanent free key with 100 pages every month.

2. Send a file

curl https://anymd.net/api/convert \
  -H "Authorization: Bearer ***" \
  -F "file=@report.pdf"

A successful request returns text/markdown.

Endpoints

POST/api/convertConvert one file
POST/api/convert/fullConvert + embedded images as JSON
Note: Images are not extracted from PDFs — assets is empty for PDF files.
POST/api/convert/batchConvert multiple files
GET/api/usageCurrent usage and allowance
GET/api/historyRecent conversions
GET/api/capabilitiesFormats and plan limits

OpenAPI 3.0 spec — machine-readable spec for importing into Postman, Insomnia, or generating clients.

Response codes

200Conversion completed
413File exceeds your plan limit
415File format is not supported
422The document could not be converted
429Monthly page allowance exhausted

Supported formats

.doc.docx.docm.odt.pdf.pptx.pptm.ppsx.ppsm.ppt.pps.pot.rtf.epub.xlsx.xlsm.xlsb.xls.ods.odp.csv.html.htm.xml.json.yaml.yml

Service status

● Operational

Privacy and retention

Documents are processed synchronously in memory, are not stored, and are discarded immediately after conversion. Processing occurs on EU infrastructure.

Billing terms

Usage is metered by processed page. Paid plans are billed monthly for a committed allowance or per 1,000 pages on pay-as-you-go.

Your allowance is shared across all API keys on your account — the pool resets on your monthly cycle and applies to every key, so usage across keys is totaled toward one limit.