one endpoint. proxies, fingerprints and browser rendering handled. you get clean json, not 400kb of html.
run public checks for scrapability, WAF signals, structured data, robots.txt, and sitemap discovery.
Diagnose whether a URL is reachable with direct HTTP, needs browser rendering, or shows anti-bot friction.
access signalsCheck headers, cookies, status codes, and page signals for common WAF and CDN fingerprints.
extractionPreview JSON-LD, OpenGraph, canonical tags, and product-like fields before writing an extractor.
complianceParse robots.txt directives, sitemap links, crawl-delay hints, and user-agent groups for a domain.
discoveryFind sitemap URLs, nested indexes, lastmod values, and sample URLs for catalog discovery.
everything we learned keeping scrapers alive against modern anti-bot, shipped as a single api.
we recognise cloudflare, datadome, akamai and friends from the response. set auto_escalate and a blocked request climbs from plain http to a real browser.
every outcome feeds a per-site profile. the fingerprint and route that worked last time are tried first next time.
pass a map of field → css selector. get parsed fields back. skip the html-soup parsing entirely.
managed residential pool, rotated per request. pin the exit country with one field.
full chromium. lazy-loaded spas, infinite scroll, shadow dom. wait on selectors, not arbitrary sleeps. screenshots on request.
one call returns structured google results with country and language targeting. query / gl / hl aliases make migrating from other serp apis a find-and-replace.
no sdk install. no auth dance. no websockets. just http + json.
# scrape a js-heavy page, extract the price curl https://api.scantir.com/v1/scrape \ -H "authorization: bearer $KEY" \ -d '{"url":"https://example.com/p/42","render":true,"country":"us","extract":{"price":".price"}}' # → json with status, method, waf and your extracted data
1,000 requests free. no card. no call.