Skip to content

Markdown Examples

Examples

This guide provides practical examples of using the Markdown Converter service.

Using cURL

Converting a Document

Terminal window
curl -L -X POST -F 'file=@your_document.docx' https://md.genstack.app/

Checking Service Status

Terminal window
curl -L https://md.genstack.app/

Using Python

Converting a Document

import requests
def convert_to_markdown(file_path):
url = 'https://md.genstack.app/'
with open(file_path, 'rb') as f:
files = {'file': f}
response = requests.post(url, files=files)
if response.status_code == 200:
result = response.json()
return result['markdown']
else:
error = response.json()
raise Exception(f"Conversion failed: {error['error']}")
# Usage
try:
markdown_content = convert_to_markdown('document.docx')
print(markdown_content)
except Exception as e:
print(f"Error: {e}")

Checking Service Status

import requests
def check_service_status():
url = 'https://md.genstack.app/'
response = requests.get(url)
return response.json()
# Usage
status = check_service_status()
print(f"Service status: {status['status']}")
print(f"MarkItDown component: {status['components']['markitdown']}")

Using JavaScript

Converting a Document

async function convertToMarkdown(file) {
const url = "https://md.genstack.app/";
const formData = new FormData();
formData.append("file", file);
try {
const response = await fetch(url, {
method: "POST",
body: formData,
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error);
}
const result = await response.json();
return result.markdown;
} catch (error) {
console.error("Conversion failed:", error);
throw error;
}
}
// Usage with file input
document.querySelector('input[type="file"]').addEventListener("change", async (e) => {
try {
const file = e.target.files[0];
const markdown = await convertToMarkdown(file);
console.log(markdown);
} catch (error) {
console.error("Error:", error);
}
});

Checking Service Status

async function checkServiceStatus() {
const url = "https://md.genstack.app/";
try {
const response = await fetch(url);
if (!response.ok) {
throw new Error("Service check failed");
}
return await response.json();
} catch (error) {
console.error("Status check failed:", error);
throw error;
}
}
// Usage
checkServiceStatus()
.then((status) => {
console.log("Service status:", status.status);
console.log("MarkItDown component:", status.components.markitdown);
})
.catch((error) => {
console.error("Error:", error);
});

Common Error Handling

Here are examples of handling common error scenarios:

No File Selected

if (!file) {
throw new Error("No file selected");
}

Unsupported File Type

def validate_file_type(filename):
supported_types = ['.docx', '.doc', '.pdf', '.txt']
file_ext = os.path.splitext(filename)[1].lower()
if file_ext not in supported_types:
raise ValueError(f"Unsupported file type: {file_ext}")

Service Unavailable

async function handleServiceUnavailable() {
try {
const status = await checkServiceStatus();
if (status.status !== "healthy") {
console.log("Service is currently degraded, please try again later");
return false;
}
return true;
} catch (error) {
console.error("Service is unavailable:", error);
return false;
}
}