The web scraping API that gets you the page
Send a URL and get the fully rendered page back, past Cloudflare, DataDome, PerimeterX and Akamai. Every request runs in a real browser on rotating proxies, so there is nothing for you to run, patch or rotate.
500 free requests on signup · no card needed
Quick start
One request, the whole page
Every endpoint is a POST, parameters go in the query string, and your key goes in the X-ScrapeUnblocker-Key header.
curl -X POST \ -H "X-ScrapeUnblocker-Key: YOUR_API_KEY" \ "https://api.scrapeunblocker.com/getPageSource?url=https%3A%2F%2Fwww.example.com"
from scrapeunblocker import ScrapeUnblocker
client = ScrapeUnblocker(api_key="YOUR_API_KEY")
html = client.get_page_source("https://www.example.com") import { ScrapeUnblocker } from "scrapeunblocker";
const client = new ScrapeUnblocker({ apiKey: "YOUR_API_KEY" });
const html = await client.getPageSource(
"https://www.example.com",
); Endpoints
Three endpoints and 100+ ready-made scrapers
getPageSource
Any page, rendered and unblocked. Get the HTML, clean Markdown for LLMs, or AI-parsed JSON.
POST /getPageSource?url=… serpApi
Google results as JSON: organic results, ads and the AI Overview, as searchers in the country you choose see them.
POST /serpApi?keyword=… getImage
Image files exactly as the host serves them, including from bot-protected sites.
POST /getImage?url=… Ready-made scrapers
Structured JSON from Amazon, Google, eBay, Zillow and 100+ more sites, with no parsing on your side.
Browse scrapers →In every request
Everything a scraper needs, built in
A real browser, every time
Pages are rendered with JavaScript in a real browser. There is no render flag to remember and no extra charge for it.
Anti-bot bypass
Cloudflare, DataDome, PerimeterX, Akamai and captcha walls are handled for you, with no setup.
Rotating proxies and countries
Requests go out through rotating proxies. Add proxy_country to see the page the way a visitor in that country does.
HTML, Markdown or JSON
Raw HTML by default, markdown=true for clean text an LLM can read, or parsed_data=true for structured fields.
Browser actions
Click, type, scroll and wait for elements with steps, then get the page in its final state.
Pay for pages, not blocks
Blocked requests, timeouts and unreachable sites are not charged. From 0.55€ per 1,000 calls.
Parameters
The getPageSource parameters you will use most
url Required. The page to fetch, URL-encoded. proxy_country Two-letter country code, such as US or DE, to load the page from that country. markdown true returns the page as clean Markdown instead of HTML. main_content_only With markdown=true: true (the default) keeps only the main content; false converts the whole page. parsed_data true returns AI-parsed JSON instead of HTML. method + value Wait until an element appears (css, xPath, className or tagName) before the page is returned. steps A JSON list of browser actions to run after the page loads. All parameters, response codes and billing rules are in the API reference.
Start with 500 free requests
No card needed. Sign up and make your first call in a minute.