Markdown Examples
Examples
This guide provides practical examples of using the Markdown Converter service.
Using cURL
Converting a Document
curl -L -X POST -F 'file=@your_document.docx' https://md.genstack.app/
Checking Service Status
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']}")
# Usagetry: 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()
# Usagestatus = 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 inputdocument.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; }}
// UsagecheckServiceStatus() .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; }}