PDF, DOCX & HTML to Markdown Converter API
Pricing
from $30.00 / 1,000 successful documents
PDF, DOCX & HTML to Markdown Converter API
Upload 1–25 native-text PDF, DOCX, or HTML files and get deterministic Markdown with explicit success or failure states. No OCR, no LLM, no external document-processing service. Built for RAG, LLM ingestion, documentation, and automation workflows.
Pricing
from $30.00 / 1,000 successful documents
Rating
0.0
(0)
Developer
Utility Foundry
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Native Text to Markdown — PDF, DOCX, HTML
Convert uploaded native-text PDF, DOCX, HTML, and HTM files into deterministic Markdown. Each input produces a machine-readable SUCCEEDED, UNSUPPORTED, or REJECTED dataset item.
What it does
- Accepts 1–25 files through Apify's file-upload control.
- Converts native PDF text, DOCX document structure, and bounded HTML structure.
- Returns Markdown only for
SUCCEEDEDitems. - Returns source/output hashes, byte counts, PDF page counts where available, warnings, and explicit reason codes.
- Applies a 1 MiB limit per file, a 25-page PDF limit, and bounded DOCX ZIP-container checks.
What it does not do
- OCR, scanned/image-only PDF conversion, or handwriting recognition
- AI or LLM interpretation
- Visual-layout or image reconstruction
- Password recovery
- Remote URL crawling or generic downloading
- Semantic PDF table reconstruction
- Guaranteed multi-column reading order
- PPTX, XLSX, EPUB, RST, or LaTeX conversion
Arbitrary external HTTP(S) URLs are rejected without being fetched. The Actor accepts only Apify-managed uploaded-file references created by the file-upload control.
PDF limitations
Every successful PDF result conservatively includes:
PDF_LAYOUT_NOT_GUARANTEEDREADING_ORDER_NOT_GUARANTEEDTABLE_STRUCTURE_NOT_GUARANTEED
These warnings do not depend on the filename. PDF extraction does not promise visual fidelity, semantic tables, or correct multi-column reading order.
DOCX conversion preserves bounded paragraph, heading, list, and table structure. Images and floating objects are ignored; tracked changes and comments are not interpreted. HTML conversion uses uploaded bytes only, removes active elements, and does not preserve CSS or visual layout.
Input
Use the files upload control in Apify Console. Upload 1–25 .pdf, .docx, .html, or .htm files. For API callers, the accepted value is the exact Apify key-value-store record URL produced by that control; external URLs are not accepted.
{"files": ["https://api.apify.com/v2/key-value-stores/qIra1e1CfYZeQkgmA/records/store-health-sample.html"]}
This public Apify-managed sample contains only harmless synthetic text. It is also the Store health-test prefill. Uploading your own file replaces it in the form.
Output
The default dataset contains one item per processed input. markdown exists only when status is SUCCEEDED.
{"document_id": "document-001","filename": "store-health-sample.html","format": "html","status": "SUCCEEDED","reason": "BOUNDED_HTML_STRUCTURE_EXTRACTED","warnings": ["ACTIVE_CONTENT_REMOVED","VISUAL_LAYOUT_NOT_PRESERVED"],"source_sha256": "7d685b906c61e0d0b125f9484c06b39c87dd2217279832275e2a5250068a1630","input_bytes": 315,"pages": null,"output_bytes": 153,"output_sha256": "4bf4fc60e4c6ed76f846d50d8f3db62a0bc5481b5d9a980312095d7e13d5199f","markdown": "# Native Text Store Health Sample\n\nThis synthetic harmless file verifies deterministic Markdown conversion.\n\n- No customer data\n\n- No external resources\n"}
For references rejected before any bytes are read, source_sha256 and input_bytes are null. Unsupported and rejected items never contain markdown.
Privacy and retention
Files are processed within Apify-managed storage/runtime. The Actor does not send document contents to developer-controlled external services. Apify platform storage and retention policies apply.
Document text is never written to logs. Logs contain operational IDs, classifications, reason codes, byte counts, and hashes. Temporary parser files are deleted when each document finishes processing.
Pricing
$0.001forapify-actor-start$0.03for eachSUCCEEDEDdocument- no successful-document fee for
UNSUPPORTEDorREJECTEDdocuments - platform usage included
The start event is charged automatically by Apify. A successful-document event is coupled to the corresponding default-dataset write. The default dataset-item event is disabled, so the same successful result is not charged twice. The minimum allowed maximum charge per run is $0.031, covering one start and the first successful document. The Actor stops without writing another successful result when the remaining event budget is insufficient.
Resource limits
The default run uses 256 MB memory and a 120-second timeout. One run accepts at most 25 files. These are experiment limits, not promises of general document compatibility.