Private development

Send a URL. Get the page back.

Clearfetch is a web scraping API for websites behind bot protection. You send one request with your API key and get back the fully rendered HTML. We handle challenges, retries and blocks on our side.

We're not accepting sign-ups yet.

Clearfetch is in private development. We'll announce public access on this page.

# one request, any protected page
curl https://api.clearfetch.io/v1/fetch \
  -H "Authorization: Bearer $CLEARFETCH_KEY" \
  -d '{"url": "https://shop.example.com/p/1182"}'
0.0srequest accepted
0.9sbot challenge detected
3.8schallenge cleared
4.2s200 OK, 412 KB of rendered HTML

Built because the usual tools stopped working.

Clearfetch started as internal infrastructure. Our own data pipeline had to read heavily protected sites every day, and the existing scraping APIs and automation stacks kept getting blocked. So we built a fetch engine that gets through.

0 / ~150

Pages fetched from a DataDome-protected site by the standard automation and anti-detect tools we tested, including captcha solvers.

27 / 27

Pages fetched by our engine from the same site, with no human in the loop and no captcha-solving service.

Internal test, October 2026. It's a small sample from one target, so read it as a signal, not a benchmark. We'll publish broader success rates before public access opens.

How it works

You see one HTTP endpoint. Everything that keeps a request from being blocked happens behind it.

  1. You send a URL

    A single POST with your API key and the page you want. No SDK required. Any language that can make an HTTP request works.

  2. We get through

    We load the page, run its JavaScript, detect bot challenges and clear them. If a request is blocked, we retry it on a fresh session.

  3. You get the HTML

    You get the rendered page, the final URL after redirects, and an honest status. A blocked page comes back as blocked, never as an empty 200.

One endpoint, a small contract

This is a draft of the API we're building toward and may change before launch.

POST /v1/fetch
{
  "url": "https://shop.example.com/p/1182",
  "country": "ch"
}

200
{
  "status": 200,
  "html": "<!doctype html>…",
  "finalUrl": "https://shop.example.com/p/1182",
  "elapsedMs": 4210
}
ResponseMeaning
200The page loaded. html has the rendered document.
403The site still blocked us after retries. block says how: captcha, ban, interstitial or Cloudflare.
504The page never finished loading within the deadline.
429You've reached your plan's concurrency. Try again after the time in Retry-After.
400The URL is missing or isn't a valid http(s) address.

What we're building for launch

We're keeping the first release small: the fetch has to be reliable before anything else gets added.

JavaScript rendering

You get pages after their scripts have run, including the ones that render everything client-side.

Country targeting

You can request a page as it appears from a specific country. That matters for prices, listings and availability.

Sticky sessions

You can keep the same identity across a series of requests, for example for pagination or multi-step flows.

Billing on success

We're designing billing so that blocked and timed-out requests don't count against your plan.

Block reporting

Every failure says what stopped it, so your pipeline can decide whether to retry, wait or skip.

Structured extraction

Instead of raw HTML, describe the fields you need, such as price, title or address, and get clean JSON back.

Clearfetch is for publicly accessible pages. It won't fetch content behind a login, and it paces traffic per site so we don't add meaningful load to the sites we visit.

Not open yet

We aren't taking sign-ups or issuing API keys at this stage. If you have a protected site you need data from and want to tell us about it, email us. Announcements about access will be posted on this page.

Email hello@clearfetch.io