$1 per 1,000 pages · first 1,000 free

PDF to markdown
through one API.

Send a PDF to /parse and get markdown plus typed layout blocks. Headings and tables survive when the parser recognizes them on the page.

PaddleOCR-VL-1.6Markdown and typed blocksSync, async, or batch
1
2
3
b1 title
PAYMENT AUTHORIZATION
b2 field
Account
4021-8837
b3 field
Date
May 2025
b4 table
ItemAmount
Consulting$4,636.40
Adjustment-$318.20
Total$4,318.20
b5 checkbox
PaidPending
b6 signature
readingpaddleocr-vl-1.6
analyzing
0/6 blocks
/ api

PDF in. Markdown and blocks out.

Call /parse sync, async, or batch. The response includes a markdown string and typed layout blocks you can inspect or store.

endpointsapi.openparser.dev
  • Full API reference
POST/parserequest
curl https://api.openparser.dev/parse \
  -H "Authorization: Bearer op_live_…" \
  -H "Idempotency-Key: $(uuidgen)" \
  -F 'request={"ocr_model":"paddleocr-vl-1.6","output_format":"openparser@1"};type=application/json' \
  -F "file=@statement.pdf"
response200 · 1.9s
{
  "output_format": "openparser@1",
  "document_id": "doc_3f9a2c",
  "page_count": 1,
  "markdown": "## Payment Authorization\n| Item | Amount |\n| …",
  "blocks": [
    { "index": 0, "page_number": 1, "kind": "text",
      "text": "## Payment Authorization" },
    { "index": 1, "page_number": 1, "kind": "table",
      "table_html": "<table>…</table>",
      "bbox": { "left": 14, "top": 53, "right": 146, "bottom": 123 },
      "confidence": 0.98 }
  ],
  "regions": [],
  "contents": [],
  "chunks": []
}
/ console

Preview markdown in the playground.

Upload a PDF, inspect the markdown field and block kinds, then create an API key when you are ready to ship.

openparser.dev/playgroundsigned in
playgroundno code
statement.pdf1 page · 48 KB
parsePaddleOCR-VL-1.6open
extractClaudeGPT-4oLlamalocalany LLM
Run{ total: "$4,318.20" } b4
/ output

Markdown you can store. Blocks you can inspect.

The markdown field is ready for chunking and retrieval. The blocks array carries types, bounding boxes, and confidence per region.

Markdown and typed blocks

Both ship in the same /parse response. Use markdown for storage and retrieval. Use blocks when you need per-region types or confidence.

b1
0.99
b4
0.98
b6
0.70

Route low-confidence pages

Blocks can include OCR confidence scores. Send low-confidence results to review before they enter a retrieval index.

Headings, tables, figures

When the parser recognizes them, headings and tables survive in markdown and as typed blocks. Figures keep their own block type.

schema {
total
}
{
total: "$4,318"
}

Extract after parse

Run /extract on the parse result to fill a JSON schema. Citations point back to block indexes and source-page bounding boxes.

b4

Stable block indexes

Each block carries a stable index you can attach to vector metadata or hand to an agent tool call.

b2b4b6
x, y, w, h

Batch document intake

POST multiple PDFs to /parse/batch and poll /jobs/{id} when you ingest folders on a schedule.

/ pricing

Pay for the pages you parse.

The first 1,000 pages are free. After that, parsing is $1 per 1,000 pages.

start free
1,000
pages free
pay per page
$1/ 1,000 pages
sync, async, or batch
+
extraction
Per token
billed based on model
  • No minimums
  • No per-seat fees
  • Sync, async, and batch
  • Console and API keys
Create an API key
/ questions

PDF parsing, answered.

What the /parse endpoint returns, how pricing works, and where the parser runs.

What does the PDF to markdown API return?

The /parse endpoint returns a markdown string plus normalized typed layout blocks. Blocks can include text, headings, tables, figures, bounding boxes, and confidence values.

Do I get markdown only, or blocks too?

Both ship in the same response. Use markdown for storage and retrieval. Use blocks when you need per-region types, bounding boxes, or confidence scores.

Which parser runs behind the API?

OpenParser hosts PaddleOCR-VL-1.6 behind a REST API. You call /parse with ocr_model set to paddleocr-vl-1.6.

How much does parsing cost?

The first 1,000 parsed pages are free. After that, parsing costs $1 per 1,000 pages.

Can I parse PDFs asynchronously?

Yes. The API supports synchronous, asynchronous, and batch parsing, plus job endpoints for checking status and retrieving results.

Does OpenParser run on my infrastructure?

No. OpenParser hosts PaddleOCR-VL-1.6 behind its API. You send files to the API; OpenParser runs the parser.

/ production

Test in the playground.
Ship with an API key.

Upload a PDF in the playground and inspect the markdown and blocks it returns. When you are ready, create a key and call /parse from your backend.