apyhub
Back
▣ DEVELOPER TOOLS · FILE CONVERSION

Convert JSON to Markdown API

Hosted on ApyHub

What it does

Convert JSON to Markdown with the Convert JSON to Markdown service. Send a JSON object directly, or point the service at a JSON URL or uploaded JSON file, and get Markdown back as raw text, a downloadable .md file, or a pre-signed S3 link.

Use it when you need to turn structured data into readable documentation, notes, reports, or content pages. The raw-input endpoints accept any non-empty JSON object in the request body. The URL-based endpoints accept a publicly accessible JSON resource with application/json or text/plain content. The file-based endpoints accept an uploaded JSON file with application/json MIME type.

Choose the response format that fits your workflow. The raw endpoints return a plain Markdown string. The file endpoints return the Markdown file content as binary .md. The URL endpoints can also return a JSON object with a single data field containing a pre-signed S3 download URL.

This is a good fit for developer tools that need to render API payloads, convert exported data into docs, or generate human-readable summaries from machine-readable JSON without adding a custom formatter in your app.

▣ ENDPOINT 01 / 09
POST
Convert raw JSON body to Markdown
https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-raw-md-raw

QUICKSTART

GUIDE

Quickstart

Send any non-empty JSON object to convert it into Markdown.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-raw-md-raw" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title":"Weekly update","status":"done"}'

What you'll get back

Returns a plain Markdown string, not a JSON object. The response body is the generated Markdown text.

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*
Any non-empty JSON object. The entire request body is used as-is as the conversion input — there are no fixed or required properties. Do not treat any example property names (name, age, etc.) as required fields; they are illustrative only. Any valid JSON object with at least one key is accepted.

About this endpoint

What it does

Converts the raw JSON request body into a Markdown string. The endpoint accepts a non-empty JSON object and returns plain Markdown text.

Request Body

ParameterTypeDescription
key1ObjectAny JSON value is accepted as part of the raw request body. The entire object is used as-is as the conversion input; there are no fixed or required properties.
key2ObjectAny JSON value is accepted as part of the raw request body. The entire object is used as-is as the conversion input; there are no fixed or required properties.

Response

Returns a plain Markdown string, not a JSON object. The response body itself is the Markdown output produced from the input JSON.

▣ ENDPOINT 02 / 09
POST
Convert raw JSON body to Markdown
https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-raw-md-url

QUICKSTART

GUIDE

Quickstart

Send a JSON object to convert it into Markdown and get back a pre-signed download URL.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-raw-md-url?output=my-document" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"key1":"value1","key2":123}'

What you'll get back

Returns a JSON object with a single data string field. That data value is a pre-signed S3 URL where you can download the generated Markdown file.

{
  "data": "https://s3.amazonaws.com/bucket/uuid_sample-output.md?X-Amz-Signature=..."
}
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*
Any non-empty JSON object. The entire request body is used as-is as the conversion input — there are no fixed or required properties. Do not treat any example property names (name, age, etc.) as required fields; they are illustrative only. Any valid JSON object with at least one key is accepted.

About this endpoint

What it does

Converts a raw JSON object in the request body into Markdown and returns a pre-signed S3 URL where the generated .md file can be downloaded.

Query Parameter(s)

AttributeTypeDescription
outputStringOutput document name. Default: sample-output.

Request Body

ParameterTypeDescription
key/value pairsObjectAny non-empty JSON object. The request body is used as-is as the conversion input. There are no fixed or required properties; additional properties are allowed.

Response

Returns a JSON object with a single data string field containing a pre-signed S3 URI for the generated Markdown file.

ParameterTypeDescription
dataStringPre-signed S3 URL to download the generated Markdown file.
▣ ENDPOINT 03 / 09
POST
Convert JSON from URL to Markdown
https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-url-md-raw

QUICKSTART

GUIDE

Quickstart

Convert a JSON file from a public URL into Markdown with one POST request.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-url-md-raw" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://assets.apyhub.com/samples/sample.json"}'

What you'll get back

Returns a plain Markdown string, not a JSON object.

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*
Publicly accessible URL pointing to a JSON resource. The response must have a Content-Type of application/json or text/plain.

About this endpoint

What it does

Fetches a JSON resource from a public URL and converts that JSON into raw Markdown text. The response is a plain string containing Markdown, not a JSON object.

Request Body

ParameterTypeDescription
urlStringPublicly accessible URL pointing to a JSON resource. The response must have a Content-Type of application/json or text/plain. Format: URI.

Response

Returns a plain Markdown string, not wrapped in JSON. The output schema is a raw string with no value field or other JSON structure.

ParameterTypeDescription
responseStringPlain Markdown string. Not wrapped in JSON. No value field exists.
▣ ENDPOINT 04 / 09
POST
Convert uploaded JSON file to Markdown
https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-file-md-url

QUICKSTART

GUIDE

Quickstart

Upload a JSON file and get back a pre-signed URL for the generated Markdown file.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-file-md-url?output=my-document" \
  -H "apy-token: $APY_TOKEN" \
  -F "file=@/path/to/file.json"

What you'll get back

Returns a JSON object with a single data string field containing a pre-signed S3 URL to download the generated Markdown file.

{
  "data": "https://s3.amazonaws.com/bucket/uuid_sample-output.md?X-Amz-Signature=..."
}
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.
Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.
body*
A JSON file to upload. The file must have MIME type application/json.

About this endpoint

What it does

Converts an uploaded JSON file into Markdown and returns a pre-signed S3 URL where the generated .md file can be downloaded.

Query Parameter(s)

AttributeTypeDescription
outputStringOutput file name base. Default: sample-output.

Request Body

ParameterTypeDescription
fileBinaryA JSON file to upload. The file must have MIME type application/json.

Response

Returns a JSON object with a single data string field containing a pre-signed S3 URL to download the generated Markdown file.

ParameterTypeDescription
dataStringPre-signed S3 URL to download the generated Markdown file. The response object has exactly one key: data.

Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.

▣ ENDPOINT 05 / 09
POST
Convert JSON from URL to Markdown
https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-url-md-file

QUICKSTART

GUIDE

Quickstart

Convert a JSON file at a public URL into a Markdown .md file. This minimal call sends the source URL and lets the API use the default output name.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-url-md-file?output=my-document" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://assets.apyhub.com/samples/sample.json"}'

What you'll get back

Returns a binary .md file as the raw response body, not a JSON object. The schema does not define any response fields.

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*
Publicly accessible URL pointing to a JSON resource. The response must have a Content-Type of application/json or text/plain.

About this endpoint

What it does

Converts the JSON available at a public URL into a downloadable Markdown file. You send the source url and optionally an output name, and the response is the raw .md file content as binary data.

Query Parameter(s)

AttributeTypeDescription
outputStringOutput file name prefix. Default: sample-output.

Request Body

ParameterTypeDescription
urlStringPublicly accessible URL to a JSON resource. The response must have Content-Type application/json or text/plain. Must be a valid URI.

Response

Returns a binary .md file as the raw response body. The output schema is a string with binary format, so there is no JSON wrapper or value field to read.

▣ ENDPOINT 06 / 09
POST
Convert JSON from URL to Markdown
https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-url-md-url

QUICKSTART

GUIDE

Quickstart

Convert a JSON resource at a public URL into Markdown and return a pre-signed download link.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-url-md-url?output=my-document" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://assets.apyhub.com/samples/sample.json"}'

What you'll get back

Returns a JSON object with a single data string field containing a pre-signed S3 URL for the generated Markdown file.

{
  "data": "https://s3.amazonaws.com/bucket/uuid_sample-output.md?X-Amz-Signature=..."
}
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*
Publicly accessible URL pointing to a JSON resource. The response must have a Content-Type of application/json or text/plain.

About this endpoint

What it does

Converts the JSON resource at a publicly accessible URL into a Markdown file and returns a pre-signed S3 download URL for the generated .md file.

Query Parameter(s)

AttributeTypeDescription
outputStringOutput file name stem. Default: sample-output.

Request Body

ParameterTypeDescription
urlStringPublicly accessible URL pointing to a JSON resource. The response must have a Content-Type of application/json or text/plain.

Response

Returns a JSON object with a single data string field containing a pre-signed S3 URL to download the generated Markdown file.

ParameterTypeDescription
dataStringPre-signed S3 URL to download the generated Markdown file. The response object has exactly one key: data.
▣ ENDPOINT 07 / 09
POST
Convert uploaded JSON file to Markdown
https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-file-md-file

QUICKSTART

GUIDE

Quickstart

Upload a JSON file and have the API return a Markdown .md file.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-file-md-file" \
  -H "apy-token: $APY_TOKEN" \
  -F "file=@/path/to/input.json;type=application/json"

What you'll get back

Returns a raw binary Markdown file (.md) in the response body. The schema does not define a JSON object or any top-level fields.

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.
Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.
body*
A JSON file to upload. The file must have MIME type application/json.

About this endpoint

What it does

Converts an uploaded JSON file into a Markdown file and returns the generated .md content as a binary response. The request sends a JSON file for conversion, and the response is the raw Markdown file body rather than a JSON object.

Query Parameter(s)

AttributeTypeDescription
outputStringOutput file name/base name for the generated Markdown file. Default: sample-output. Example: my-document.

Request Body

ParameterTypeDescription
fileBinaryA JSON file to upload. Format: binary. The file must have MIME type application/json.

Response

Returns a binary .md file. The response body is the raw Markdown file content, not a JSON object, and no value field exists.

ParameterTypeDescription
response bodyStringBinary Markdown file content (.md).

Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.

▣ ENDPOINT 08 / 09
POST
Convert uploaded JSON file to Markdown
https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-file-md-raw

QUICKSTART

GUIDE

Quickstart

Upload a JSON file to convert it into raw Markdown.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-file-md-raw" \
  -H "apy-token: $APY_TOKEN" \
  -F "file=@/path/to/file.json"

What you'll get back

Returns a plain Markdown string in the response body. The output schema is a raw string, not a JSON object.

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.
Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.
body*
A JSON file to upload. The file must have MIME type application/json.

About this endpoint

What it does

Uploads a JSON file and converts its contents into Markdown, returning the result as raw plain text rather than a JSON object.

Request Body

ParameterTypeDescription
fileBinaryA JSON file to upload. The file must have MIME type application/json.

Response

Returns plain Markdown as a raw string, not wrapped in JSON. The output schema is a string, so there is no response object or named field to extract.

Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.

▣ ENDPOINT 09 / 09
POST
Convert raw JSON body to Markdown
https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-raw-md-file

QUICKSTART

GUIDE

Quickstart

Send any non-empty JSON object and download the converted Markdown file.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-json-to-markdown/json-raw-md-file?output=my-document" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"key1":"value1","key2":123}'

What you'll get back

Returns a raw binary .md file as the response body, containing the generated Markdown content. The schema does not define a JSON wrapper or top-level fields.

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*
Any non-empty JSON object. The entire request body is used as-is as the conversion input — there are no fixed or required properties. Do not treat any example property names (name, age, etc.) as required fields; they are illustrative only. Any valid JSON object with at least one key is accepted.

About this endpoint

What it does

Converts the raw JSON request body into a Markdown .md file and returns the file content as a binary response. The input is used as-is, with no fixed body fields or nested request structure.

Query Parameter(s)

AttributeTypeDescription
outputStringOutput file name or label used by the endpoint. Default: sample-output.

Request Body

ParameterTypeDescription
key/value JSON objectObjectAny non-empty JSON object. The entire request body is used as the conversion input. Additional properties are allowed; there are no fixed required fields.

Response

Returns a downloadable binary .md file. The response body is the raw Markdown file content, not a JSON 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.