Web Scraping API, LLM-ready out of the box.
A web scraper API for AI and data pipelines. Send a URL and get Markdown, HTML, JSON or plain text back. Proxy, rendering, CAPTCHA solving and bot detection are handled for you.
- 500 free credits every month
- No card to start
- Failed requests cost nothing
Try it on your own URL






The six problems you don't have to solve.
Each is a system you would otherwise have to build, run, and maintain. The first five are included, and a page costs 0.25 to 1 credit.
JavaScript rendering
Pages are fetched without a browser first, then rendered in headless Chrome only when needed. React, Vue, and Angular applications return their rendered content, while static pages stay fast and cost less.
renderJSCAPTCHA solving
Common CAPTCHA challenges are handled in the request path. There's no separate solver to integrate and no extra charge.
IncludedAnti-bot bypass
Browser fingerprints are managed on our side to handle common anti-bot systems. Stealth mode reduces browser automation signals for stricter sites.
stealth: trueSeven output formats
Choose from Markdown, HTML, or plain text, each with an LLM variant, plus structured JSON. Request multiple formats in a single call.
format: []Structured extraction
Extract structured fields with CSS or XPath schemas, or use ready-made product and contact templates to get typed JSON.
extractionModePremium, geo-targeted proxies
A page that blocks every other attempt moves to a premium proxy automatically, and you can pick any of 194 countries to see localized pricing, content, and availability. A premium proxy adds 4 credits when it's used.
proxyCountryWhat customers say.
“Found Geekflare API to get markdown from URL for my AI agents. It is fast and cheaper and works on almost every website.”
Ram DasiArchitect, PA Consulting“After trying many scraping services, I selected Geekflare to scrape public directories. Mainly for two reasons - it is cheaper and fast.”
“Documentation was easy to follow. We were scraping dynamic pages within hours. Very reliable service.”
See the page the way locals see it.
Some sites block foreign traffic, and many show different prices and content by country. Add a country code and the request goes through a proxy, so you get the local page and don't get blocked.
proxyCountryroutes a request through any of 194 countries- By default, a premium proxy is used only when a page blocks every other attempt
- 0
- Countries
- 4 credits
- Added only when a premium proxy is used
The parameters you'll use most.
What each one does and what it costs.
- urlstring—
The page to fetch. Any public URL.
- formatstring[]Included
markdown, markdown-llm, html, html-llm, text, text-llm or json. Ask for several at once.
- renderJSboolean0.25 to 1
Rendering is automatic, and a page that doesn't need it costs less. Set true or false to force headless Chrome on or off.
- stealthbooleanIncluded
Removes webdriver signals and patches navigator properties for sites with stricter bot checks.
- waitTimenumberIncluded
Seconds to wait after load, for lazy-loaded content.
- devicestringIncluded
desktop or mobile.
- extractionModestringIncluded
With format json: cssSchema, xpathSchema, or template with product or contact.
- fileOutputbooleanIncluded
Return a link to a file with the result instead of the content inline. Handy for large pages. Defaults to false.
- proxyCountrystring+4
Route the request through a premium proxy in this country, e.g. "de".
- proxyModestring+4 if used
Defaults to auto, which uses a premium proxy only if the page blocks every other attempt. Use true to always use one, or false to never use one.
- aiPromptobject+6
Ask AI to extract or analyze the page. Runs on the page's Markdown.
| Parameter | Type | What it does | Credits |
|---|---|---|---|
| url | string | The page to fetch. Any public URL. | — |
| format | string[] | markdown, markdown-llm, html, html-llm, text, text-llm or json. Ask for several at once. | Included |
| renderJS | boolean | Rendering is automatic, and a page that doesn't need it costs less. Set true or false to force headless Chrome on or off. | 0.25 to 1 |
| stealth | boolean | Removes webdriver signals and patches navigator properties for sites with stricter bot checks. | Included |
| waitTime | number | Seconds to wait after load, for lazy-loaded content. | Included |
| device | string | desktop or mobile. | Included |
| extractionMode | string | With format json: cssSchema, xpathSchema, or template with product or contact. | Included |
| fileOutput | boolean | Return a link to a file with the result instead of the content inline. Handy for large pages. Defaults to false. | Included |
| proxyCountry | string | Route the request through a premium proxy in this country, e.g. "de". | +4 |
| proxyMode | string | Defaults to auto, which uses a premium proxy only if the page blocks every other attempt. Use true to always use one, or false to never use one. | +4 if used |
| aiPrompt | object | Ask AI to extract or analyze the page. Runs on the page's Markdown. | +6 |
The endpoint reference has the complete parameter list, response schema and error codes.
Endpoint referenceWhat people use it for.
Clean Markdown straight into a vector store
Feed webpages into a retrieval pipeline without building your own extraction layer. Our LLM-ready format removes navigation, footers, cookie banners, and other page clutter, leaving the content you actually want to embed.
- Headings are preserved for meaningful chunk boundaries
- Navigation, footers and cookie banners removed
- Multiple formats from a single request when you need both
POST /webscraping
{
"url": "https://techcrunch.com/category/artificial-intelligence/",
"format": ["markdown-llm"]
}Your first scrape, in a few lines.
# pip install geekflare-api
from geekflare_api.client import GeekflareClient
from geekflare_api.models import WebScrapeDto
with GeekflareClient(api_key="<api-key>") as client:
result = client.web_scrape(
WebScrapeDto(
url="https://example.com",
format=["markdown"]
)
)
print(result)One API. Every stack.
One account works from an agent, a workflow builder, an SDK or your own service.
MCP server
Sign in once and Claude, ChatGPT, Cursor or Codex can use Geekflare's tools directly, with no glue code to write.
LLM & agent pipelines
LLM-ready Markdown straight into a retrieval pipeline, with the boilerplate stripped so you spend context on content, not navigation.
Workflow builders
Run any endpoint as a step in a visual scenario. Useful when the person who needs the data does not write code.
SDKs & REST
First-party typed SDKs for Python and Node. Everything else talks plain REST, from any language.
How many pages each plan scrapes.
What a page costs depends on what it needs, and every site is different. Failed requests cost nothing.
| Covered per month | Free $0/mo No card | Starter $19/mo | Most popular Growth $69/mo | Business 500K $299/mo | Business 1M $499/mo |
|---|---|---|---|---|---|
Credits a month | 500 | 20,000 | 100,000 | 500,000 | 1,000,000 |
Pages without a browserStatic pages that load without JavaScript rendering.0.25 credits | 2,000 | 80,000 | 400,000 | 2,000,000 | 4,000,000 |
Pages with JavaScriptRendered in a browser, with a basic proxy and stealth mode when needed.1 credit | 500 | 20,000 | 100,000 | 500,000 | 1,000,000 |
Pages with a premium proxyFor pages that block everything else, or when you pick a country.5 credits | – | 4,000 | 20,000 | 100,000 | 200,000 |
| Requests per second | 1 | 5 | 10 | 25 | 25 |
- Free$0/moNo card
- Credits a month
- 500
- Pages without a browser0.25 credits
- 2,000
- Pages with JavaScript1 credit
- 500
- Pages with a premium proxy5 credits
- –
- Requests per second
- 1
- Starter$19/mo
- Credits a month
- 20,000
- Pages without a browser0.25 credits
- 80,000
- Pages with JavaScript1 credit
- 20,000
- Pages with a premium proxy5 credits
- 4,000
- Requests per second
- 5
- GrowthMost popular$69/mo
- Credits a month
- 100,000
- Pages without a browser0.25 credits
- 400,000
- Pages with JavaScript1 credit
- 100,000
- Pages with a premium proxy5 credits
- 20,000
- Requests per second
- 10
- Business 500K$299/mo
- Credits a month
- 500,000
- Pages without a browser0.25 credits
- 2,000,000
- Pages with JavaScript1 credit
- 500,000
- Pages with a premium proxy5 credits
- 100,000
- Requests per second
- 25
- Business 1M$499/mo
- Credits a month
- 1,000,000
- Pages without a browser0.25 credits
- 4,000,000
- Pages with JavaScript1 credit
- 1,000,000
- Pages with a premium proxy5 credits
- 200,000
- Requests per second
- 25
Before you write the integration.
Everything else is in the endpoint docs, and our support team replies to every email.
Open the endpoint docsproxyMode to false to avoid that. An aiPrompt adds 6. Failed requests cost nothing.renderJS to force either way.proxyCountry with a country code, for example "de", to route the request through a premium proxy in that country and get localized pricing and content. Proxies cover 194 countries at country level and add 4 credits per request.markdown-llm for LLM and RAG pipelines, json when you want typed fields, html when you have your own parser downstream, and text for search indexing or NLP. You can request more than one format in a single call.format: ["json"], use a CSS or XPath schema to pick fields, or set extractionMode to template with product or contact for ready-made extraction. For free-form questions about a page, aiPrompt runs AI over its Markdown.robots.txt and avoid collecting personal information.Ask AI about Geekflare
Open the question in the assistant you already use.
Start with 500 free credits a month.
No card needed. That covers up to 2,000 pages.