/getPageSource endpoint is the workhorse of the API. You pass a URL, ScrapeUnblocker picks the cheapest bypass route that works for that domain, and returns the prettified HTML.
Minimum request
How routing decisions are made
ScrapeUnblocker keeps a per-domain success history and picks the cheapest path that has worked recently:1
Domain plugin
If we have a custom-built plugin for the target domain (Mobile.de, Zillow, Amazon, etc.), we use it. Plugins ship hardcoded knowledge about that site’s protection - cookie order, headers, anti-fingerprinting tweaks.
2
Direct fetch
For unprotected origins, a plain HTTP fetch is tried first. Fastest and cheapest.
3
Residential proxy
If direct fails, the request is rotated through a residential IP in a relevant country.
4
Stealth browser
For JavaScript-rendered pages or sites with browser fingerprint checks, we spin up a real browser with a randomized profile.
5
Upstream fallback
If all in-house paths fail, the request falls back to a third-party provider as a last resort.
Useful parameters
method and value
For domains with custom plugins, method selects a specific extraction strategy and value passes a parameter to it. Common patterns:
method=ajax&value=<endpoint>- hit a site’s internal JSON API and return the JSON instead of HTML.method=scroll&value=3- scroll the page N times before returning HTML, for infinite-scroll listings.
time_sleep
Number of seconds to wait after the page loads before returning HTML. Useful for sites that hydrate content lazily after first paint.
method_timeout
Hard cap on how long ScrapeUnblocker will spend on a single bypass attempt before moving to the next one. Default is 60 seconds. Lower it for fast-failing crawls; raise it for slow targets you really need.
proxy_country
Two-letter ISO country code forcing the request through that country’s proxy pool. See country targeting.
steps and list_elements
Some pages need interaction before the HTML you want exists - a search box to
type into, a “load more” button to click, content that appears only after
scrolling. Pass steps (a JSON array of browser actions - click, type,
scroll, wait_for, press_key, …) and ScrapeUnblocker runs them in a real
browser after the page loads, then returns the resulting HTML.
To discover the selectors those actions need, add list_elements=true: instead
of HTML you get back the page’s interactive elements as JSON, each with a
ready-to-use selector. List the elements, build your steps, run them.
422 failure shape are in
browser steps and element discovery.
Response
By default, the response body is the prettified HTML of the page. Content-Type istext/html.
When you add parsed_data=true or get_cookies=true, the response becomes JSON. See parsed data and cookies and sessions.
Errors
Full reference in errors.

