PDF Text Extractor API - URL to Text, Per-Page, Batch avatar

PDF Text Extractor API - URL to Text, Per-Page, Batch

Pricing

from $2.00 / 1,000 page extracteds

Go to Apify Store
PDF Text Extractor API - URL to Text, Per-Page, Batch

PDF Text Extractor API - URL to Text, Per-Page, Batch

Turn any public PDF URL into clean text and metadata. Per-page output, batch processing, and a synchronous API mode for AI agents. Pay per page extracted, cheaper than the alternatives.

Pricing

from $2.00 / 1,000 page extracteds

Rating

0.0

(0)

Developer

Jimmy A

Jimmy A

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Share

Give it public PDF URLs, get back clean text and document metadata. One block per page or per document, batch-capable, and callable as a synchronous API so AI agents and automations can extract PDFs on demand.

No OCR needed for digital PDFs, no upload step, no key. Pay per page extracted.

What it does

  1. Fetches each PDF URL (redirects followed, 60s timeout)
  2. Extracts text page by page, grouping text into lines by position on the page
  3. Reads the document's own metadata (title, author, producer, dates) as published in the file
  4. Outputs one structured record per document, with per-page text blocks if you want them

Use cases

  • RAG / AI pipelines: turn report URLs into chunks for embedding, page-aligned
  • Agents: call the standby endpoint as a tool - "read this PDF and answer"
  • Document monitoring: pair with a scheduler to extract recurring reports (filings, government publications, price lists)
  • Data entry automation: pull text from invoices, spec sheets, catalogs you have rights to process
  • Research: batch-extract paper PDFs into searchable text

Input

{
"pdfUrls": [
"https://arxiv.org/pdf/1706.03762",
"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf"
],
"perPage": true,
"maxPages": 500
}
  • pdfUrls: direct links to PDF files.
  • perPage: true gives one text block per page, false one text field per document.
  • outputFormat: text (default) or markdown. Markdown gives one markdown field per document, with a ## Page N heading before each page's text. perPage is ignored for markdown.
  • maxPages: stop after this many pages per document (default 500). Pages past the cap are not read or billed.
  • includeMetadata: include the PDF's own metadata fields (default on).

Output

{
"url": "https://arxiv.org/pdf/1706.03762",
"pageCount": 15,
"pagesExtracted": 15,
"truncated": false,
"metadata": {
"title": null,
"author": null,
"subject": null,
"producer": "pdfTeX-1.40.25",
"creationDate": "D:20240410211143Z",
"modDate": "D:20240410211143Z"
},
"pages": [
{ "page": 1, "text": "Provided proper attribution is provided, Google hereby grants permission to\n..." }
],
"fetchedAt": "2026-09-23T20:08:58.078Z"
}

Set perPage: false for a single text field per document. truncated is true when the document has more pages than maxPages. Failed URLs produce a record with an error field instead of killing the run.

API / Standby mode for AI agents

Base URL: https://gratifying-graph--pdf-extract-api.apify.actor. Add your Apify API token as ?token=YOUR_TOKEN or an Authorization: Bearer YOUR_TOKEN header.

GET /?url=https://arxiv.org/pdf/1706.03762&perPage=true&maxPages=50

URL-encode the url value if it contains ? or &. Standby reads up to 100 pages unless you pass maxPages. Add outputFormat=markdown for one markdown field.

Returns the full extraction JSON synchronously. A bare GET / returns a readiness message and is not billed. Bad input returns HTTP 400. If the file cannot be fetched or read as a PDF, you get HTTP 422. Neither is billed.

Pricing

EventPrice
Actor start$0.0005
Per page extracted$0.002
Standby request$0.02 per request, plus $0.002 per page extracted

A 40-page report costs about $0.08.

FAQ

Does it do OCR on scanned PDFs? Not in this version. It reads the text layer of digital PDFs. Scanned-image pages come back with empty text and are still billed as pages extracted. Ask in Issues if you need OCR.

How are lines handled? Text items are grouped into lines by their position on the page. Paragraph breaks are not detected.

Maximum size? Batch runs stop at 500 pages per document by default. Standby stops at 100 pages unless you pass maxPages. Downloads time out after 60 seconds.

Password-protected PDFs? Not supported. A password-protected file returns an error record and is not billed. Public, unencrypted documents only.

CSV/Excel export? Every Apify dataset exports as JSON, CSV, or Excel via the platform.

Feedback

Found a bug or need a field? Open an issue on the Issues tab. The actor is checked twice a day and issues get a fast fix.

If this actor saves you time, a short review on the Store page helps other people find it.