Skip to main content
Browse Docs
On This Page
View Markdown~943 tokensDownload Markdown~943 tokens

Extract from PDF

Use this extractor for .pdf files. It can extract images, page renders, text, markdown, embedded files, PDF metadata, links, annotations, form fields, fonts into a ZIP result.

Try Extract from PDF in the browser ->

Extract.FAST uses this same API -- what you see in the browser is what you get in code.

Quick reference

FieldValue
Source file type.pdf
Source groupDocuments
Submit endpointPOST https://api.tools.fast/extract
Estimate endpointPOST https://api.tools.fast/extract/estimate/pdf
ResultZIP download
Default capabilitiespdf.images, pdf.pages, pdf.text, pdf.markdown, pdf.embeddedFiles, pdf.metadata, pdf.links, pdf.annotations, pdf.forms, pdf.fonts
Max file sizefree: 50 MB; pro: 2048 MB
Document limitsfree: 2000 document units; pro: 2000 document units
Duration limitsNot applicable

Capabilities

CapabilityDefaultOptionsPricingDescription
pdf.imagesYesNoneIncludedImages embedded in the PDF saved separately.
pdf.pagesYesNoneIncludedWhole PDF pages rendered as image files.
pdf.textYesNoneIncludedSelectable PDF text saved by page.
pdf.markdownYesNoneIncludedMarkdown generated from PDF text.
pdf.embeddedFilesYesNoneIncludedEmbedded PDF files saved separately.
pdf.metadataYesNoneIncludedPDF document metadata for audit workflows.
pdf.linksYesNoneIncludedPDF link annotations for review.
pdf.annotationsYesNoneIncludedPDF comments and markup records when present.
pdf.formsYesNoneIncludedPDF form field data when available.
pdf.fontsYesNoneIncludedEmbedded PDF font files when present.

Metadata output

The pdf.metadata capability writes metadata/pdf.json and metadata/pdf.csv. Document info fields such as title, author, creator, producer, and keywords stay as strings. PDF date fields such as CreationDate and ModDate are emitted as readable objects with display, raw, local, offset, timezoneKnown, precision, and parseStatus; full timestamp values with a known timezone also include isoUtc.

Options payload with all capabilities

Use this shape when you want to explicitly configure every supported output for this source type.

{
  "extraction": {
    "selectedCapabilities": [
      "pdf.images",
      "pdf.pages",
      "pdf.text",
      "pdf.markdown",
      "pdf.embeddedFiles",
      "pdf.metadata",
      "pdf.links",
      "pdf.annotations",
      "pdf.forms",
      "pdf.fonts"
    ],
    "includeManifest": true
  }
}

Estimate example

curl -sS -X POST "https://api.tools.fast/extract/estimate/pdf" \
  -H "X-Fast-Api-Key: $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "fileSizeMb": 10,
  "pageCount": 12,
  "options": {
    "extraction": {
      "selectedCapabilities": [
        "pdf.images",
        "pdf.pages",
        "pdf.text",
        "pdf.markdown",
        "pdf.embeddedFiles",
        "pdf.metadata",
        "pdf.links",
        "pdf.annotations",
        "pdf.forms",
        "pdf.fonts"
      ],
      "includeManifest": true
    }
  }
}'

Extract example with all options configured

curl -sS -X POST "https://api.tools.fast/extract" \
  -H "X-Fast-Api-Key: $API_KEY" \
  -F "[email protected]" \
  -F 'options={
  "extraction": {
    "selectedCapabilities": [
      "pdf.images",
      "pdf.pages",
      "pdf.text",
      "pdf.markdown",
      "pdf.embeddedFiles",
      "pdf.metadata",
      "pdf.links",
      "pdf.annotations",
      "pdf.forms",
      "pdf.fonts"
    ],
    "includeManifest": true
  }
}'

Machine-readable discovery

GET /options/pdf
GET /extractors/pdf
Copied