Skip to main content
POST /v1/convert accepts an uploaded file_id and an output format. It returns a conversion receipt to poll. Conversion inputs cannot be artifact IDs; the TypeScript helper downloads and reuploads previous results automatically.

Supported formats

Same-format conversion is rejected, including PDF to PDF. .markdown and .htm are recognized aliases. Text, Markdown, and HTML uploads must be UTF-8. RTF, ODT, and image formats are input-only. Deterministic conversion uses the document’s structure and supported formatting. PDF and image scanning reconstructs headings, paragraphs, lists, and tables. It does not reproduce the page pixel for pixel. Each image is one scanned page. Scanning requires OpenAI. Managed scans use the default OpenAI model. With your own OpenAI key, you can choose another catalogued OpenAI model. Deterministic conversions reject nonempty inference settings. See models and provider keys.

Submit and retrieve

Poll until succeeded, failed, or cancelled. On success, download output.artifact. Its variant is converted. The receipt’s mode is deterministic or vision; usage.conversion records the billed unit, quantity, and rate.
Use revise.conversions.create(body) to submit without waiting, or revise.conversions.run(body) to wait for success when you already have a file ID. Download/reupload steps are subject to the 18 MiB input limit, even when a previous output was larger.

Pricing and limits

Deterministic conversions cost 0.005each∗∗.Scanscost∗∗0.005 each**. Scans cost **0.02 per page, including managed inference, or $0.005 per page plus your provider’s inference charge when using your own OpenAI key. Conversions have no separate CPU charge and do not count toward prompt request-fee tiers. See pricing and usage. Uploads are limited to 18 MiB, PDFs to 100 pages, and conversion output to 50 MiB before encryption. JWE encoding increases downloaded size. There is no default spending cap. If you set max_platform_cost_usd, a scan that exceeds it fails with conversion_limit_exceeded before inference. PDF structure is checked at upload and again during processing. A failed job can report: These validation failures are not billed by Revise. Cancellation after processing starts can be billed; inspect settled usage rather than inferring cost from status alone. After retention expiry or deletion, the receipt remains but the artifact is unavailable and some format fields may be empty.