This guide follows the current Scrapingbypass API documentation: V2s uses the same parameters as V2 but adds stream response support. Before production use, confirm the latest settings in the official docs and your API console.
Quick Summary
Scrapingbypass V1, V2, and V2s are not simple old-versus-new versions. They are designed for different traffic patterns. V1 is best for lightweight 403 bypass cases. V2 is for JavaScript challenges, Turnstile, and session-based verification. V2s keeps the V2 behavior but adds stream response support for large files or long responses.
| Version | Best for | Main header | Proxy | Response style |
|---|---|---|---|---|
| V1 | Browser works but code gets 403; no JS Challenge or Turnstile | No x-cb-version required | Built-in dynamic proxy or custom proxy | Normal full response |
| V2 | JS Challenge, Turnstile, session reuse, server-side cookie handling | x-cb-version: 2 | Fixed or time-sensitive proxy required | Normal full response |
| V2s | V2 scenarios plus large downloads or processing while data arrives | x-cb-version: 2s | Same as V2 | Stream response |
V1: lightweight and stateless
Use V1 when the target page is accessible in a browser but returns 403 from code, and there is no visible Cloudflare challenge flow. V1 is lighter, stateless, and often enough for standard protected pages.
curl --request GET --url "https://api.scrapingbypass.com/path" --header "x-cb-apikey: YOUR_APIKEY" --header "x-cb-host: target.com"
V2: challenge handling and sessions
Use V2 when the target site returns a JS Challenge, requires Turnstile, or needs a validated session to be reused. V2 requires a proxy and can use x-cb-part to separate server-side session partitions.
curl --request GET --url "https://api.scrapingbypass.com/path" --header "x-cb-apikey: YOUR_APIKEY" --header "x-cb-host: target.com" --header "x-cb-version: 2" --header "x-cb-proxy: http://user:pass@proxy-host:port" --header "x-cb-part: 0"
V2s: V2 plus stream response
V2s uses the same V2 parameters, including x-cb-proxy, x-cb-part, and x-cb-sitekey. The key difference is x-cb-version: 2s, which enables stream response. Use it for large file downloads, exported reports, long responses, or any workflow where the client should process data as it arrives.
curl --request GET --url "https://api.scrapingbypass.com/files/report.zip" --header "x-cb-apikey: YOUR_APIKEY" --header "x-cb-host: target.com" --header "x-cb-version: 2s" --header "x-cb-proxy: http://user:pass@proxy-host:port" --output report.zip
How to choose
- Use V1 for ordinary 403 bypass cases without challenge state.
- Use V2 for JS Challenge, Turnstile, and session reuse.
- Use V2s when you need V2 behavior and stream response.
- If unsure, test V1 first; switch to V2 or V2s when you see challenges, Turnstile, or large-response requirements.