apyhub
DATA EXTRACTION · DEVELOPER TOOLS

Convert HTML to Markdown API

What it does

HTML to Markdown converts a webpage URL into clean Markdown. Send a page URL in the request body and get back the page title, the Markdown version of the content, a character count, and a readability_success flag.

Use it when you need page content in a format that is easier to store, diff, review, or pass into documentation and publishing workflows. It is a good fit for content ingestion pipelines, knowledge-base imports, article archiving, and automated summaries that start from live web pages.

The input is simple: a body object with a single url field. The URL must use http or https and can be up to 2048 characters. The response is equally direct, giving you the extracted title plus markdown text you can render or persist as plain text markup.

If you are building a crawler, migration script, or content analysis tool, HTML to Markdown gives you a structured way to turn web pages into a developer-friendly text format without manual cleanup.

POST
Convert HTML to Markdown
http://localhost:8080/chisleroff/convert-html-to-markdown
QUICKSTARTGUIDE

Quickstart

Convert a webpage into Markdown by sending its URL.

curl -X POST "http://localhost:8080/chisleroff/convert-html-to-markdown" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://assets.apyhub.com/samples/sample.html"}'

What you'll get back

Returns a JSON object with title as a string, markdown as a string, character_count as an integer, and readability_success as a boolean.

{
  "title": "Apy Samples",
  "markdown": "# **A consequuntur voluptatem ut mollitia voluptatem.**\n\nLorem ipsum dolor sit amet. Aut aspernatur quibusdam hic amet quas nam internos consequatur et ipsam repellendus ut galisum obcaecati. In repudiandae ipsa aut dolor asperiores et sint voluptatem aut voluptates quia. Nam numquam enim ut dolorum sunt **Et doloremque cum temporibus debitis aut labore delectus et odit tempore** in autem odio. Aut impedit fugit ut voluptate rerum sit culpa voluptatem ab galisum perferendis qui dignissimos minima est galisum perferendis et consequatur dolorem. Eum velit Quis ut nobis consequuntur *Quo aperiam est fugiat quas ut fugiat dolorem ut voluptatum exercitationem* aut quia temporibus. Rem rerum voluptas et quis voluptatum et veniam temporibus et tempore galisum et odit error est animi consequuntur. Et magni deleniti et molestiae corporis eos possimus itaque ut placeat quis hic fuga ratione qui fugiat porro aut praesentium repellat.\n\n![](https://assets.apyhub.com/samples/sample.jpg)\n\nEt aliquam obcaecati ut doloremque impedit *Est rerum aut sunt mollitia et laborum adipisci qui temporibus maxime*. A rerum beatae eum cupiditate quas non maxime unde in autem quia est similique repellat est placeat magnam vel aperiam suscipit. Vel quas Quis At facilis aperiam et perspiciatis voluptate? Est exercitationem dolorem sit quis cupiditate [Nihil est harum corporis sed perferendis facilis qui accusantium quas](https://apyhub.com/utility/converter-doc-pdf) 33 molestiae tenetur. Eos architecto pariatur aut saepe quidem ut provident eveniet sed tempore earum sit internos numquam aut consequuntur iste qui repudiandae maxime. Sed voluptatibus blanditiis et modi deserunt **Sit voluptas**. Ut laudantium dolorem ut perspiciatis sapiente est alias consequuntur non repellendus ducimus et minima aspernatur eum dolores quasi. Aut quos eaque vel consequuntur atque sed quaerat voluptate quo iure dolores. Et consectetur corrupti aut eligendi dolor sed suscipit eligendi aut possimus sunt sit numquam rerum.\n\n1. Non sequi voluptatum vel architecto debitis et voluptatem mollitia.\n2. At velit voluptatem cum similique nihil.\n3. Sed tempore dolorem a voluptatem saepe vel blanditiis nulla.\n\n**Quo consequuntur quod qui quia ratione.**\n\nSed consequatur excepturi *Eum galisum eos ipsum quaerat ea pariatur possimus* rem omnis veritatis hic necessitatibus fugiat. Est pariatur aliquid [Eum autem et laudantium autem ut delectus debitis quo necessitatibus enim](https://apyhub.com/utility/converter-doc-pdf). Qui voluptates aperiam non inventore voluptatibuset iste id asperiores aut voluptas molestiae! Eum aperiam corporis id amet architecto est fugiat corporis et dolor numquam. Aut expedita itaque ut quis nihil est sapiente exercitationem et illum labore ea saepe cupiditate et tempore sequi!\n\n**Eum quibusdam velit est asperiores totam.**\n\nEst accusamus dolores At dolor suscipit id molestiae exercitationem ut dolor tempore qui error voluptate qui labore dolorem. Sit dolores iure qui necessitatibus praesentium qui Quis porro id dolorem quod. Et iusto repellat [33 illo sed enim galisum id laudantium beatae](https://apyhub.com/utility/converter-doc-pdf)! Qui assumenda maiores sed tempore doloribus est explicabo galisum At enim nihil sit nulla repellendus ut reprehenderit repudiandae.\n\n`Est unde voluptas Est iure aut eaque amet ut cumque eligendi est sunt assumenda est mollitia nulla aut molestiae neque? Et cumque enim sed cumque Quis ea voluptatem animi At voluptatem labore cum placeat illum rem illo quaerat. Et excepturi voluptas et tenetur repellendus vel quos ipsa et deleniti odit id consequatur voluptatibus et reiciendis corporis non maxime eius.`\n\n**Est enim et quibusdam placeat est Quis rerum.**\n\nEt officia facilis aut voluptatibus provident **Quo minus non dolores commodi** ut voluptatem ipsa qui fugit doloribus non illo tempore! Eos repellat asperiores et numquam eveniet ut incidunt laboriosam aut quam quisquam qui amet ratione. Cum voluptate neque ut voluptas dicta sed natus magni. Aut sint dolorum est blanditiis aperiam sed accusantium galisum et aperiam quia qui repellat sunt ex iure consequuntur. Qui quam mollitia *Et nesciunt est soluta explicabo in accusamus consequuntur* qui magni aliquam et voluptas porro. Qui sint dolorem et adipisci dolorem et incidunt enim sed nulla consectetur. Qui architecto reprehenderitet repellat qui recusandae necessitatibus. Est quibusdam exercitationem et cupiditate numquam sed enim voluptas quo fuga ducimus eum nostrum sapiente? Est incidunt ratione non voluptatem incidunt eos nulla eum facere internos.\n\nSed alias voluptas **Aut deserunt qui quisquam quidem non vero** qui laborum voluptatem non veritatis velit! Ut delectus corrupti ut explicabo nisiet accusamus ea dignissimos minus. Sed repudiandae officia qui quod expedita et necessitatibus deleniti quo recusandae temporibus At nobis omnis qui voluptas quis. Et sunt enim et laboriosam sunt [Sed officia aut omnis dolor](https://apyhub.com/utility/converter-doc-pdf) in aliquid debitis et fugiat blanditiis ut voluptas aliquid? Eum dolor consequatur et voluptatem dolorem sed ipsa modi ut sunt quisquam est corrupti nulla eum magnam maiores ut eius nisi? Ut eius voluptatum ut perferendis quos est optio impedit non fugiat veniam rem dolor autem eum mollitia eveniet hic soluta rerum. Hic culpa blanditiis et rerum fugit deleniti?\n\nEst natus dolores eos illo iure **Et perspiciatis non voluptas quia** aut expedita officiis et quam necessitatibus et voluptatem deserunt. Ab amet provident qui nesciunt praesentium et natus aspernatur in recusandae sunt. Sit laboriosam saepe non voluptates eligendi et corporis galisum vel ipsam sint quo sunt assumenda in voluptas quia et neque voluptatem. Aut ullam dolor [Eos ipsum](https://apyhub.com/utility/converter-doc-pdf) aut quas deserunt. Non veniam magni ut nihil deleniti *Et mollitia*. Et commodi possimus sed expedita quae non galisum molestiae in magni suscipit. Et modi adipisci eos laudantium dolorem sed rerum nobis? In explicabo nesciunt et molestiae consequatur sit corrupti ipsum. Et illum rerum vel minus sunt aut ipsam facilis qui omnis vero sed voluptatem quia a officiis consequatur ab incidunt error.\n\n- A sunt obcaecati hic voluptatem inventore sit quis autem id quisquam architecto.\n- Quo nobis natus est nobis illum est omnis optio.\n- Sed consequatur odio quo rerum quod sed doloremque quam!\n\nSed quod ducimus ut quam eligendi est tempora voluptate sit alias itaque id neque culpa nam quaerat nulla non delectus velit. Sed galisum optio **33 alias qui voluptatem iste aut eius quaerat** hic dolorum nisi 33 facere nisi. Et assumenda consequatur et quia blanditiis [Aut dicta est quia porro](https://apyhub.com/utility/converter-doc-pdf) qui voluptatem ducimus id iure tenetur aut doloremque explicabo. Eos explicabo omnis ut dicta sint sed suscipit iste sit galisum ut vitae illum. Ut soluta expedita ea magnam velit est rerum porro a accusamus internos. Eos saepe consequuntur non provident rerumaut facilis ut quidem nihil. Ut consequatur sequi eum velit sint aut neque amet qui delectus reprehenderit sed beatae voluptas. Aut dolor odio ut iste laudantium est impedit rerum eum delectus impedit qui cupiditate enim. Cum exercitationem optio id vero internos qui aliquid quod sit autem ipsam hic sint necessitatibus sit quae blanditiis et delectus neque!\n\nQui sequi aliquam qui consectetur explicabo non nesciunt nemo ut Quis nostrum?",
  "character_count": 7430,
  "readability_success": true
}
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*
URL of the webpage to convert to Markdown (http/https only, max 2048 chars).

About this endpoint

What it does

Converts the HTML content of a webpage into Markdown. You provide the webpage URL, and the response returns the converted Markdown along with related metadata.

Request Body

ParameterTypeMandatoryDescription
urlStringYesURL of the webpage to convert to Markdown (http/https only, max 2048 chars).

Response

Returns a JSON object with title and markdown as strings, character_count as an integer, and readability_success as a boolean.

ParameterTypeMandatoryDescription
titleStringNoTitle of the converted webpage.
markdownStringNoMarkdown representation of the webpage content.
character_countIntegerNoNumber of characters in the converted Markdown output.
readability_successBooleanNoIndicates whether readability processing succeeded.

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.