apyhub
DEVELOPER TOOLS · FILE CONVERSION

Convert Markdown to HTML content API

What it does

Markdown to HTML converts Markdown into HTML for both JSON and raw text workflows. Send Markdown in a body.content field, or as a raw body string, and get HTML back as a JSON data string or as a raw HTML stream depending on the endpoint you choose.

Use it when you need to render user-authored content for docs, blog posts, changelogs, or previews. The service keeps the contract simple: input is Markdown, output is HTML. On the JSON endpoints, the response always includes data; on the raw-stream endpoint, the response is binary HTML output.

This is useful in publishing pipelines where Markdown is stored in an editor, database, or CMS and needs to be rendered just before display. It also fits automation jobs that normalize content for email templates, knowledge bases, or static-site builds without adding a Markdown parser to your own stack.

If your app already accepts Markdown, Markdown to HTML gives you a direct conversion step with minimal request and response shape complexity.

▣ ENDPOINT 01 / 02
POST
Convert raw text/plain Markdown body to HTML JSON envelope (FC-03)
https://api.eu.apyverse.com/apyhub/convert-markdown-to-html/raw/json

QUICKSTART

GUIDE

Quickstart

Convert Markdown text to HTML by sending the Markdown content as plain text in the request body.

curl -X POST "https://api.eu.apyverse.com/apyhub/convert-markdown-to-html/raw/json" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: text/plain" \
  --data '## Hello world

This is **Markdown**.'

What you'll get back

Returns a JSON object with a data string field containing the converted HTML, without newlines.

{
  "data": "<h2>Hello world</h2><p>This is <strong>Markdown</strong>.</p>"
}
TRY ITLIVE · 50 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Converts a raw Markdown text body into HTML and returns the result in a JSON envelope.

Request Body

ParameterTypeMandatoryDescription
bodyStringYesRaw Markdown text to convert.

Response

Returns a JSON object with a data string field containing the converted HTML string without newlines.

ParameterTypeMandatoryDescription
dataStringYesConverted HTML string without newlines.

Body

Name
Type
Description
bodyREQUIRED
string
▣ ENDPOINT 02 / 02
POST
Convert JSON Markdown content to raw HTML stream (FC-03)
https://api.eu.apyverse.com/apyhub/convert-markdown-to-html/json/raw

QUICKSTART

GUIDE

Quickstart

Convert a Markdown string to HTML by sending the Markdown in the request body.

curl -X POST "https://api.eu.apyverse.com/apyhub/convert-markdown-to-html/json/raw" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"content":"# Title\n\nBody text."}'

What you'll get back

Returns a binary string response containing the converted HTML output.

(binary HTML content)
TRY ITLIVE · 50 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*
Markdown string to convert. Mandatory.

About this endpoint

What it does

Converts a Markdown string into a raw HTML binary stream. The request sends the Markdown content in the body, and the response returns the rendered HTML as a binary string.

Request Body

ParameterTypeMandatoryDescription
contentStringYesMarkdown string to convert. Mandatory.

Response

Returns a raw binary string containing the generated HTML stream. The success response body is a string with binary format.

ParameterTypeMandatoryDescription
responseStringYesRaw HTML output returned as a binary string.

Body

Name
Type
Description
bodyREQUIRED
object
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.