PDF to Text & JSON – Bulk PDF Text Extractor & Parser
DeprecatedPricing
Pay per usage
PDF to Text & JSON – Bulk PDF Text Extractor & Parser
DeprecatedExtract text from PDF URLs in bulk as clean JSON: full text per document or per page, page count, word count, PDF metadata (title, dates, producer) and scanned-PDF detection. Fast (200 pages in ~2 s), no browser, failed files are not charged. Ideal for RAG, LLM and search pipelines.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Friedrich K
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
21 days ago
Last modified
Categories
Security
Limited permissionsShare
PDF Text Extractor – PDF to Text & JSON in Bulk
Turn PDF links into clean text in bulk. It is fast, reliable and cheap: a 200-page PDF takes about 2 seconds, and you need no API key.
- Full text per PDF, or one result per page, which helps with chunking for RAG, LLM and vector databases
- Counts: total pages, pages extracted, characters and words
- Document metadata: title, subject, keywords, creator, producer, creation and modification date, and PDF version
- Scanned-PDF detection:
likelyScanned: truewhen a PDF has (almost) no text layer - Fair billing: files that fail (404, not a PDF, too large or password-protected) are not charged. They are listed in the key-value store record
FAILED_URLS. - Delta mode: monitor published PDFs, such as price lists, terms or reports, and receive only those whose text changed
Use cases
- AI and RAG pipelines: feed reports, manuals, papers or contracts into LLMs and vector stores.
- Search and analytics: index annual reports, tenders, research papers or product data sheets.
- Monitoring: run it daily in delta mode to detect changes in published PDFs.
- Automation: connect it to Make, Zapier, n8n or the Apify API, and send PDF links from your workflow.
Input examples
{ "pdfUrls": ["https://www.rfc-editor.org/rfc/rfc9110.pdf", "https://example.com/report.pdf"], "outputMode": "document" }
Page-level chunks for a vector database:
{ "pdfUrls": ["https://example.com/manual.pdf"], "outputMode": "pages", "maxPagesPerPdf": 300 }
Output (document mode)
{"id": "https://www.rfc-editor.org/rfc/rfc9110.pdf","url": "https://www.rfc-editor.org/rfc/rfc9110.pdf","fileName": "rfc9110.pdf","totalPages": 194,"pagesExtracted": 194,"metadata": { "title": "RFC 9110: HTTP Semantics", "subject": "The Hypertext Transfer Protocol (HTTP) is ...", "keywords": null, "creator": "xml2rfc 3.12.10", "producer": "cairo 1.16.0", "created": "2022-06-06T11:15:02Z", "modified": "2022-06-06T11:15:19Z", "pdfVersion": "1.5" },"text": "RFC 9110\nHTTP Semantics\nAbstract\nThe Hypertext Transfer Protocol (HTTP) is a stateless ...","truncated": false,"characters": 460253,"words": 71309,"likelyScanned": false,"fetchedAt": "2026-10-08T14:00:00.000Z"}
In pages mode, each item has page, text, characters, words and likelyScanned for a single page. Its id is <url>#page=<n>.
Pricing
Pay per event: USD 3.00 per 1,000 results (event result), with lower prices on higher Apify subscription plans. In document mode, one result is one PDF. In pages mode, one result is one page. There is no start fee, and failed files are free. Users on the Apify Free plan are limited to 50 results per run.
Limits
- No OCR: the actor reads the text layer only. Scanned PDFs without a text layer return little or no text and are flagged with
likelyScanned. - Password-protected PDFs are skipped.
- The text of a single document is capped at 5 million characters (
truncated: true). Use pages mode for very large documents. - The author field of the PDF metadata is not returned on purpose, because it often contains a person's name.
- The actor sends at most 1 request per second to each host and processes 3 PDFs in parallel.
Responsibility
The actor processes only the documents that you provide. You are responsible for having the right to download and process them, for example your own documents, documents under an open licence, or uses permitted by copyright law. Text is processed in your Apify run and stored only in your own dataset.
Impressum / Legal notice
Anbieter dieses Actors (Angaben gemäß § 5 DDG) / Provider of this actor:
Friedrich Köhler
Spatzenweg 7
04720 Döbeln
Deutschland
E-Mail: actorcreater_010@web.de