For the complete documentation index, see llms.txt. This page is also available as Markdown.

documents/extract API parameters

Use all of our below options to personalize your document extraction

API documentation: https://docmaker.co/API

Endpoint URL: https://api.v3.docmaker.co/documents/extract

List of API call parameters:

Parameter
Values enum
Description

"file_url"

Required. Public URL of the file to parse (max 50 MB). Multipart upload is not supported — by-URL only.

"input_type"

docx, pptx, pdf, jpg, jpeg, png, tiff, webp, eml, md, markdown, txt, html, htm

Explicit format hint, overriding MIME/extension auto-detection. Usually not needed.

"output_format"

markdown, structured

Defaults to markdown. structured (extract against a template's tag schema) is accepted but not yet implemented — always returns markdown regardless.

"template_id"

Required when output_format is structured (not yet implemented).

"parsingEngine"

docling, mistral-ocr

Force the parser for PDF input, bypassing automatic digital-vs-scanned detection. Only valid for PDF input. docling on a scanned PDF runs Docling's own built-in OCR rather than returning empty text. mistral-ocr is exclusive when forced — if it fails, the error is returned as-is, with no fallback. Mutually exclusive with fast_pdf_extraction.

"fast_pdf_extraction"

true, false

Defaults to false. Skip Docling/Mistral OCR and read the PDF's embedded text layer directly — no network round-trip, no OCR, much faster and cheaper. Returns little/no text for a genuinely scanned PDF. Only valid for PDF input. Mutually exclusive with parsingEngine.

"pages"

Only valid when fast_pdf_extraction is true. Restrict extraction to specific pages/ranges, e.g. "1-3,5,7-9". Out-of-range page numbers are silently dropped as long as at least one requested page exists.

"webhook_url"

URL of the webhook where you want the result sent once parsing completes.

"webhook_token"

You may provide an auth token to authenticate the webhook call to your server. docMaker adds it as a Bearer token in the "Authorization" header.

Result shape (structured_data on the job, or the webhook payload):

Field
Description

markdown

The extracted content as Markdown.

page_count

Number of pages parsed (used to compute credits).

parser_used

Which parser actually ran: docling, mistral-ocr, fast_pdf_extraction, mailparser, or passthrough.

scanned

Whether the input PDF was detected as scanned/image-based.

parse_duration_ms

How long parsing took.

metadata

Extra detail, e.g. fallback_from (auto-routing fell back from Mistral OCR to Docling) or lowTextWarning/warning (fast_pdf_extraction found little/no text layer).

Example request:

As with every docMaker route, the call returns 202 immediately with a jobId. Poll GET /jobs/{jobId} or set a webhook_url to retrieve the result once parsing completes — this route can take several minutes for large or scanned documents.