PDF to Markdown API & Converter: PDF to Text for AI Agents, RAG
Pricing
from $3.00 / 1,000 pdf converteds
PDF to Markdown API & Converter: PDF to Text for AI Agents, RAG
PDF to markdown converter and MCP tool for AI agents and RAG: give PDF URLs, get clean Markdown with headings, page texts, title, author and word count. Text-layer PDFs only, no OCR. Pay $0.003 per PDF converted (up to 30 pages), $0.0001 per extra page, plus a small start fee per run.
Pricing
from $3.00 / 1,000 pdf converteds
Rating
0.0
(0)
Developer
PlainRows
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Turn PDF URLs into clean Markdown that LLMs, AI agents and RAG pipelines can read: headings, paragraphs, page markers, plus the title, author, page count and word count of each file. Paste a list of PDF links, get one row per PDF.
The text comes from the PDF's own text layer (pdf.js, no browser, no proxy). Text-layer PDFs only, no OCR: scanned PDFs made of images are reported as such, for free, instead of returning invented text.
Typical uses
- RAG and knowledge bases: feed research papers, manuals, reports and documentation into a vector store as Markdown, page by page.
- AI agents (MCP): let an agent read a PDF it found on the web in one tool call.
- Summaries and extraction: give an LLM the Markdown of contracts, filings, datasheets or whitepapers.
- Search and archiving: index the full text of public PDFs with their page count and word count.
What you get for each PDF
| Field | Description |
|---|---|
url, finalUrl | The PDF address you gave, and the address after redirects |
found | true when the PDF was converted (billed row); false rows are free and say why in error |
title, author | From the PDF metadata (null when the file has none: nothing is guessed) |
pageCount, pagesConverted | Pages in the file, and pages converted (at most maxPagesPerPdf) |
markdown | Markdown of the converted pages, with a <!-- page N --> marker before each page |
pages | With includePageTexts: plain text of each page, [{ "page": 1, "text": "..." }] |
wordCount, charCount | Words in the text and characters in the Markdown (useful to size LLM context) |
error, errorCode | Why a PDF was not converted (NOT_A_PDF, TOO_LARGE, HTTP_ERROR, NO_TEXT_LAYER, UNREADABLE_PDF, ENCRYPTED_PDF, TIMEOUT...), or a note when only part of it was converted |
convertedAt | When the PDF was processed (UTC) |
Headings are approximated from font size (a line clearly larger than the body text becomes #, ## or ###). Tables, images and multi-column layouts come out as plain text in reading order as stored in the PDF; words split by a hyphen at a line end are joined.
Input
{"urls": ["https://arxiv.org/pdf/1706.03762", "https://www.irs.gov/pub/irs-pdf/fw9.pdf"],"maxPagesPerPdf": 30,"includePageTexts": false}
urls: public PDF addresses, up to 5,000 per run (duplicates removed). Files up to 50 MB.maxPagesPerPdf(default 30, max 300): only the first pages up to this number are converted.includePageTexts(default false): also return the text of each page.
Output example
{"url": "https://arxiv.org/pdf/1706.03762","found": true,"title": null,"author": null,"pageCount": 15,"pagesConverted": 15,"markdown": "<!-- page 1 -->\n\nProvided proper attribution is provided, Google hereby grants permission...\n\n## Attention Is All You Need\n\nAshish Vaswani∗ Google Brain avaswani@google.com\n\n...\n\n### Abstract\n\nThe dominant sequence transduction models are based on complex recurrent or convolutional neural networks...","pages": null,"wordCount": 6135,"charCount": 40118,"error": null,"errorCode": null,"finalUrl": "https://arxiv.org/pdf/1706.03762","convertedAt": "2026-10-23T14:00:00.000Z","schemaVersion": "1.0"}
(Excerpt; this arXiv file has no title in its metadata, so title is null.)
Pricing
Pay per PDF converted, no subscription:
- $0.003 per PDF converted (
pdf-converted), up to 30 pages included; - $0.0001 per extra page (
extra-page) beyond 30, only if you raisemaxPagesPerPdfand the PDF is longer; - a small start fee per run (
apify-actor-start, $0.002 per GB of memory).
Free rows: PDFs without a text layer (scans), unreadable or password-protected files, files over 50 MB, non-PDF URLs (HTML pages, images), and URLs that fail (404, timeout, invalid or private address). The run never spends more than the maximum cost you set; if a run keeps hitting free failures, it stops early and says so.
Free Apify plan: each run converts up to 10 PDFs, so you can check the output. A paid Apify plan removes this limit.
Use it from code, automations or AI agents
Call it from the Apify API, the Apify MCP server (as a tool for Claude, ChatGPT or any MCP client), Make, Zapier, n8n or LangChain. Results are in the run's dataset (JSON, CSV, Excel); the run summary is in the OUTPUT record of its key-value store.
FAQ
Does it do OCR? No. It reads the text layer that most digital PDFs contain (exported from Word, LaTeX, browsers...). A scanned PDF without text returns found: false, errorCode: NO_TEXT_LAYER, free.
Are the headings exact? They are an approximation from font size; the text itself is exactly what the PDF contains.
What about very long PDFs? Set maxPagesPerPdf up to 300. Each PDF also has a time limit; if it is reached, the pages already converted are returned and only those are charged.
Which PDFs can it fetch? Public http(s) URLs that return a PDF file. Private network addresses are refused. The Actor identifies itself with a PlainRows user agent.
More PlainRows tools
Same pay-per-result pricing, same clean JSON, built to chain together in n8n, Make, Zapier or AI agents.
- SEO and keywords: Keyword Search Volume, CPC & Difficulty · Keyword Planner Alternative (Bulk Search Volume & CPC) · Google Keyword Planner API (Google Ads Search Volume & CPC) · Bing Keyword Search Volume & CPC · Keyword Ideas Generator · Google Autocomplete & People Also Ask · Google Trends Explorer · Google Trends Keyword Discovery (Rising & Related) · Website Organic Traffic & Top Keywords · Competitor Keywords API (Ranked Keywords) · Bulk Website Traffic Checker · SEO Competitors & Keyword Gap Finder · PPC Competitor Keywords (SpyFu Alternative) · Bulk Domain Authority Checker · Backlink Checker · Backlink API (Referring Domains & Backlinks Data) · Broken Link Checker · SEO Audit API (On-Page SEO Checker) · AI Search Visibility Tracker (ChatGPT, Gemini, AI Mode) · AI Overview Tracker (Google AI Overview Citations) · Perplexity Search API (Answers & Citations) · ChatGPT Search Scraper (Answers & Citations) · AI Citations Finder (LLM Mentions in ChatGPT & AI Overviews) · Keyword Rank Checker (Google SERP Position) · Google Search API (SERP Scraper & Web Results) · Bing Search API (Bing SERP & Web Results) · Google Maps Rank Tracker (Geo-Grid Local SEO)
- Leads and companies: Google Maps Scraper · Google Maps Email Extractor · Google Maps Businesses Without Website · Yellow Pages Australia Scraper · Website Technology Checker · Website Email Extractor · Contact Details Scraper (Emails, Phones, Socials) · ATS Jobs Scraper (Workday, Greenhouse, Lever, Ashby) · Workday Jobs Scraper · Greenhouse Jobs Scraper · Lever Jobs Scraper · Ashby Jobs Scraper · Google Jobs Scraper · Reed.co.uk Jobs Scraper (UK) · jobs.ch & jobup.ch Jobs Scraper (Switzerland) · Arbeitsagentur Jobs Scraper (Germany) · Gupy Jobs Scraper (Brazil) · Catho Jobs Scraper (Brazil) · Vagas.com.br Jobs Scraper (Brazil) · Jobs.cz Scraper (Czech Republic) · Remote Jobs Scraper (Himalayas, RemoteOK, Jobicy) · Google Ads Scraper (Transparency Center) · Company Registry Lookup (SIRENE, LEI, Brreg) · Public Tenders Search (EU TED & UK)
- E-commerce and travel: Amazon Product Search Scraper · Amazon Keyword Research (Search Volume & Reverse ASIN) · Google Shopping Prices Scraper · Google Hotels Prices Scraper · Google Hotels Scraper · Tripadvisor Reviews Scraper · Trustpilot Reviews Scraper
- Marketplaces and classifieds: AliExpress Scraper · Kleinanzeigen Scraper (Germany) · AutoScout24 Scraper (Cars, Europe) · Kijiji Scraper (Canada) · Marktplaats Scraper (Netherlands) · Property Finder Scraper (UAE) · Redfin Scraper (US Homes for Sale) · Otomoto Scraper (Polish Car Listings) · Otodom Scraper (Poland Property) · Imovirtual Scraper (Portugal Property) · Standvirtual Scraper (Portugal Cars) · Immoweb Scraper (Belgium Property) · Blocket Scraper (Sweden) · FINN.no Scraper (Norway) · coches.net Scraper (Spain Cars) · 2dehands Scraper (Belgium) · Storia Scraper (Romania Property) · Autovit Scraper (Romania Cars) · FINN.no Car Scraper (Norway Cars) · DBA Scraper (Denmark) · Tori.fi Scraper (Finland)
- Content and media: Google News Scraper · YouTube Search Scraper · YouTube Search API (JSON) · YouTube Comments Scraper · Google Images Scraper · Website Screenshot API · Google Maps Reviews Scraper · Google Reviews Scraper · App Store & Google Play Reviews Scraper · App Store & Google Play App Details Scraper · Google Play Reviews Scraper · App Store Reviews Scraper