Attest tools · File converter

Markdown to HTML

Render a Markdown heading, list and emphasis as HTML without fetching external resources.

1 credit per successful call

Input JSON

{
  "from": "markdown",
  "to": "html",
  "text": "# Care guide\n\n- Wash at **30 degrees**.\n- Dry in the shade.\n"
}

Captured output JSON

{
  "from": "markdown",
  "to": "html",
  "input_source": "text",
  "input_encoding": "utf-8",
  "bytes_in": 60,
  "bytes_out": 103,
  "response_bytes": 109,
  "result_text": "<h1>Care guide</h1>\n<ul>\n<li>Wash at <strong>30 degrees</strong>.</li>\n<li>Dry in the shade.</li>\n</ul>",
  "truncated": false,
  "stats": {},
  "warnings": [],
  "limits": {
    "max_input_bytes": 6291456,
    "max_base64_characters": 8388608,
    "max_output_bytes": 3145728,
    "max_response_bytes": 3670016,
    "max_rows": 200000,
    "max_columns": 2000,
    "max_inline_image_bytes": 65536
  },
  "supported_pairs": [
    "docx -> html",
    "docx -> markdown",
    "docx -> text",
    "html -> markdown",
    "html -> text",
    "markdown -> html",
    "csv -> json",
    "csv -> tsv",
    "json -> csv",
    "tsv -> csv"
  ],
  "source": "Converted in this process from the bytes supplied with the request. Formatting that has no equivalent in the target format (page layout, fonts, colours, comments, tracked changes) is dropped, so the output is a working copy of the content, not a reproduction of the original document. General information, not advice.",
  "checked_at": "2026-10-20T20:47:48.427Z"
}

API call

curl -s -X POST https://getattest.com.au/api/v1/files/convert \
  -H "authorization: Bearer $ATTEST_API_KEY" \
  -H "content-type: application/json" \
  --data-raw '{"from":"markdown","to":"html","text":"# Care guide\n\n- Wash at **30 degrees**.\n- Dry in the shade.\n"}'

Run this call with your own bearer key. Issue an API key.

About this example

The input was validated and run locally through the registered service. The output above is a display preview of the captured service result. File bytes are described instead of printed, and strings longer than 400 characters are truncated; the HTTP API also adds call_id, credits_charged and credits_remaining. Timestamps and generated identifiers will vary.

Source: apps/api/svc/file_convert.mjs

Tool reference and limits · API key guide