Structure, not just text
Keep headings, tables, reading order, and useful document metadata where the source supports them.
Turn PDFs, office and other supported documents into structured Markdown, JSON, or chunks ready to inject into any vector database. One API, without the document-processing infrastructure to maintain.
curl --request POST "https://docuapi.dev/convert" \
--header "Authorization: Bearer $DOCUAPI_API_KEY" \
--form "file=@./annual-report.pdf" \
--form "output_format=json"Use sample data instantly, or upload a document to try the DocuAPI document conversion.
Choose a sample or upload your own file
PDF, DOCX, PPTX, XLSX, HTML, Markdown, TXT, CSV, EPUB, JPG, JPEG, PNG, BMP, GIF, TIF or TIFF. Images require OCR. See all supported formats in the documentation.
{
"document": {
"title": "Annual Report 2025",
"source": "annual-report.pdf",
"page_count": 12
},
"content": [
{
"id": "block_001",
"type": "heading",
"text": "Revenue and growth",
"page": 2
},
{
"id": "block_002",
"type": "paragraph",
"text": "Revenue increased by 12% in 2025, driven by expansion in the European market and stronger customer retention.",
"page": 2
},
{
"id": "block_003",
"type": "heading",
"text": "Regional performance",
"page": 3
},
{
"id": "block_004",
"type": "table",
"text": "Revenue by region",
"page": 3,
"rows": [
[
"Region",
"Revenue",
"Growth"
],
[
"Europe",
"CHF 8.4M",
"+15%"
],
[
"North America",
"CHF 5.1M",
"+9%"
],
[
"Asia Pacific",
"CHF 2.7M",
"+11%"
]
]
},
{
"id": "block_005",
"type": "paragraph",
"text": "The company plans to continue investing in platform reliability and customer support during the next financial year.",
"page": 4
}
],
"metadata": {
"extraction_mode": "sample",
"ocr_enabled": false
}
}Focus on retrieval and product logic. Let the conversion layer handle the messy first mile.
Keep headings, tables, reading order, and useful document metadata where the source supports them.
Choose Markdown, normalized JSON, or ready-to-ingest chunks for any vector database.
Use a direct response for small conversions or submit a job for longer-running documents.
Clear monthly allowances and explicit limits, designed for developers building production systems.
A predictable conversion layer should be easy to understand, test, and replace if your needs change.
Submit a supported file with your API request. Set the output format and conversion options.
PDF · DOCX · HTML · AND OTHER SUPPORTED FORMATSReceive Markdown, normalized JSON, or paragraph-based chunks with source and section metadata.
MARKDOWN · JSON · CHUNKSSend the returned chunks to your embedding and indexing workflow, then store them in any vector database.
VECTOR DB AGNOSTICWith API libraries for pretty much every programming language you can think of, DocuAPI fits seamlessly into any stack.
curl --request POST "https://docuapi.dev/convert" \
--header "Authorization: Bearer $DOCUAPI_API_KEY" \
--form "file=@./annual-report.pdf" \
--form "output_format=json"DocuAPI converts supported documents into Markdown, structured JSON, or structured chunks for retrieval-augmented generation (RAG). Chunks include source and section metadata, so you can send them to your embedding model and vector database.