newv2.1.0 · session persistence + regional failoverread the release →

scrape anything.
even the hard stuff

one endpoint. captchas, sessions, proxies handled. you get clean json, not 400kb of html.

~/projects/scraper — zsh — 88×24
$ curl api.scantir.dev/v1/scrape \ -H "authorization: bearer $KEY" \ -d '{"url":"https://target.com","render":true}' → resolving target.host ........ ok → rotating proxy pool (us-east) . ok → challenge: cloudflare-turnstile solved → rendering dom ................. 204ms response 200 in 247ms · {"title":"honeycomb jar, 8oz","price":"$42"}
99.4%
cloudflare success
42ms
median p50
2.1M
req / day
190
regions
01 — the toolkit

the infra you'd ship,
if you had six more months.

everything we learned keeping 2 million daily requests out of jail, shipped as a single api.

01 / 06

captcha bypass

cloudflare, hcaptcha, akamai, datadome. real browser fingerprinting on a real device fleet. not a headless hack.

02 / 06

warm sessions

cookies persist across requests. login once, scrape many. session_id → same fingerprint, same jar.

03 / 06

structured output

css selectors, jsonpath, or llm extraction. ship parsed data. skip the html-soup parsing entirely.

04 / 06

residential proxies

200m+ ips across 190 regions. rotation is automatic, per-request. geo-targeting down to city.

05 / 06

js rendering

full chromium. lazy-loaded spas, infinite scroll, shadow dom. wait on selectors, not arbitrary sleeps.

06 / 06

typed sdks

python, node, go, ruby, php. typed clients, retries built in. or just use curl. we don't care.

02 — the api

four curl lines
and you're in.

no sdk install. no auth dance. no websockets. just http + json.

  • one endpoint: POST /v1/scrape
  • bearer auth. rotate keys from the console.
  • response in ~200ms p50, streaming for jobs >10s
  • retries with idempotency keys built in
# scrape a js-heavy spa, extract the price
curl https://api.scantir.dev/v1/scrape \
  -H "authorization: bearer $KEY" \
  -d '{"url":"https://example.com/p/42","render_js":true,"session_id":"user-42","extract":{"price":".price"}}'

# → 200 in 204ms. clean json.
// trusted by teams atforager.iolattice datapricewatcherdrift labsnectar
ready when you are

ship the scraper
on tuesday.

1,000 requests free. no card. no call.

$ get-api-key →./docs
N 37°46.4 / W 122°25.1 · scantir.dev · 2026