$npx -y skills add oxylabs/agent-skills --skill web-unblockerBypasses anti-bot protections using Oxylabs Web Unblocker, an AI-powered proxy that handles fingerprinting, JavaScript rendering, and retries automatically. Use when the user needs to scrape protected websites, bypass CAPTCHAs, access blocked content, or when regular proxies fail
| 1 | # Oxylabs Web Unblocker |
| 2 | |
| 3 | AI-powered proxy solution that automatically manages fingerprinting, headers, retries, and JavaScript rendering. |
| 4 | |
| 5 | ## Endpoint |
| 6 | |
| 7 | ``` |
| 8 | https://unblock.oxylabs.io:60000 |
| 9 | ``` |
| 10 | |
| 11 | ## Authentication |
| 12 | |
| 13 | HTTP Basic Auth via proxy credentials: |
| 14 | |
| 15 | ```bash |
| 16 | curl -k -x "https://unblock.oxylabs.io:60000" \ |
| 17 | -U "$OXYLABS_USERNAME:$OXYLABS_PASSWORD" \ |
| 18 | "https://example.com" |
| 19 | ``` |
| 20 | |
| 21 | ## Quick Start |
| 22 | |
| 23 | **Basic request:** |
| 24 | ```bash |
| 25 | curl -k -x "https://unblock.oxylabs.io:60000" \ |
| 26 | -U "$OXYLABS_USERNAME:$OXYLABS_PASSWORD" \ |
| 27 | "https://ip.oxylabs.io/headers" |
| 28 | ``` |
| 29 | |
| 30 | **With JavaScript rendering:** |
| 31 | ```bash |
| 32 | curl -k -x "https://unblock.oxylabs.io:60000" \ |
| 33 | -U "$OXYLABS_USERNAME:$OXYLABS_PASSWORD" \ |
| 34 | -H "x-oxylabs-render: html" \ |
| 35 | "https://example.com/spa-page" |
| 36 | ``` |
| 37 | |
| 38 | ## Headers |
| 39 | |
| 40 | | Header | Description | |
| 41 | |--------|-------------| |
| 42 | | `x-oxylabs-render` | `html` for rendered HTML, `png` for raw PNG bytes; empty value disables automatic forced rendering | |
| 43 | | `X-Oxylabs-Session-Id` | Reuse same IP across requests (any random string) | |
| 44 | | `X-Oxylabs-Geo-Location` | Target country, city/state, ZIP/postcode, or coordinates | |
| 45 | | `x-oxylabs-force-headers: 1` | Enable custom header passthrough | |
| 46 | | `x-oxylabs-force-cookies: 1` | Enable custom cookie passthrough | |
| 47 | | `X-Oxylabs-Successful-Status-Codes` | Define custom success codes to prevent retries | |
| 48 | | `x-oxylabs-browser-instructions` | JSON-escaped browser actions; requires `x-oxylabs-render: html` | |
| 49 | |
| 50 | ## Session Persistence |
| 51 | |
| 52 | Reuse the same IP across multiple requests: |
| 53 | |
| 54 | ```bash |
| 55 | curl -k -x "https://unblock.oxylabs.io:60000" \ |
| 56 | -U "$OXYLABS_USERNAME:$OXYLABS_PASSWORD" \ |
| 57 | -H "X-Oxylabs-Session-Id: my-session-123" \ |
| 58 | "https://example.com/page1" |
| 59 | ``` |
| 60 | |
| 61 | ## Geo-Location Targeting |
| 62 | |
| 63 | ```bash |
| 64 | curl -k -x "https://unblock.oxylabs.io:60000" \ |
| 65 | -U "$OXYLABS_USERNAME:$OXYLABS_PASSWORD" \ |
| 66 | -H "X-Oxylabs-Geo-Location: Germany" \ |
| 67 | "https://example.com" |
| 68 | ``` |
| 69 | |
| 70 | Use values such as `Germany`, `90210`, `California,United States`, `New York,New York,United States`, or `lat: 40.7128, lng: -74.0060, rad: 50`. |
| 71 | |
| 72 | Use normal HTTP methods and request bodies through the proxy; Web Unblocker supports both GET and POST. |
| 73 | |
| 74 | ## When to Use Web Unblocker vs Regular Proxies |
| 75 | |
| 76 | | Scenario | Use | |
| 77 | |----------|-----| |
| 78 | | Sites with anti-bot protection | Web Unblocker | |
| 79 | | CAPTCHAs, fingerprint detection | Web Unblocker | |
| 80 | | JavaScript-heavy SPAs | Web Unblocker with `x-oxylabs-render: html` | |
| 81 | | Simple requests, no protection | Regular Proxies | |
| 82 | | High volume, price sensitive | Regular Proxies | |
| 83 | |
| 84 | ## Key Guidelines |
| 85 | |
| 86 | - Always use `-k` flag (or disable SSL verification) - the proxy uses its own certificates |
| 87 | - Add `x-oxylabs-render: html` if experiencing empty content or low success rates; set client timeouts near 180 seconds for rendered requests |
| 88 | - Check `X-Oxylabs-Final-Url` in response headers when redirects matter |
| 89 | - Avoid adding custom unblocking headers that may interfere with the AI |
| 90 | - Browser instruction header values must be JSON-escaped and compact; pair them with `x-oxylabs-render: html` |
| 91 | |
| 92 | For code examples in Python, Node.js, PHP, Go, Java, and C#, see [examples.md](examples.md). |