Web Unlocker · F5 BIG-IP and Shape
How to bypass F5 bot defense and "Request Rejected"
F5 protects sites with BIG-IP and with Shape, now Distributed Cloud Bot Defense. A scraper gets "Request Rejected" with a support ID, or a page that is only a script. The Web Unlocker sends the URL from a residential or mobile IP with a browser-grade client, opens a real browser when needed, and returns the page as JSON.
- 6 of 6
- calls to F5-protected pages answered with the real page, canary of 11 November 2026
- 88.9%
- across all 27 protected targets of the same run
- 4.1 s
- median response across the run
What an F5 block looks like
The F5 block is easy to miss, because the page that rejects you usually arrives with the status code of a normal answer.
| Where to look | What an F5 block shows |
|---|---|
| Status code | Often 200. BIG-IP serves its rejection page as a normal answer, so a scraper that checks only the status sees nothing wrong. |
| Page text | "Request Rejected. The requested URL was rejected. Please consult with your administrator. Your support ID is:" and a long number. |
| Support ID | A number of about nineteen digits. The administrator of the site can search it in the firewall log to find the rule that fired. |
| JavaScript check | A short page with one obfuscated script and the words "Please enable JavaScript to view the page content." In a browser it reloads by itself. |
| Cookies | Names that start with TS followed by letters and digits, TSPD_101, and BIGipServer followed by the name of a pool. |
| Shape on API calls | Extra request headers with random-looking names, added by the site's own script to login, search and checkout calls. |
Why F5 blocks a scraper
Two F5 products do this job, and a site can run either or both.
- BIG-IP Advanced WAF sits in the site's own data centre. It checks each request against a policy and, with bot defense on, sends a JavaScript check to a client it has not seen. A violation gets the Request Rejected page.
- Shape, sold today as F5 Distributed Cloud Bot Defense, guards the valuable calls: login, search, prices, checkout. A script on the page signs those calls with data about the browser, and the server refuses a call whose signature is missing or wrong.
- Both judge the client first: the IP, the handshake and the headers decide whether the request is even given the check.
- The rejection page is the same for a bot and for a broken form, which is why the support ID is the only clue the page gives.
Get the page behind F5 with one call
Send the URL to the REST endpoint. With mode: "auto", the default, the first attempt is a browser-grade request from a residential IP; when the site answers with its JavaScript check, a real browser opens the page, lets it reload and returns what arrived.
curl -X POST https://app.quanticdata.io/api/v1/scraper/unlock \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/", "country": "us"}'
On F5 sites, read blocked rather than status: a rejection page served with 200 comes back with blocked: true. To reach content that appears only after a click or a search, add an actions list to the call.
What the answer tells you
| Field | What it says |
|---|---|
blocked | false when the real page came back. true only when every attempt met the block; the block page is then in body. |
vendor | The system the engine recognised on a blocked attempt. For this guide: shape. |
blockClass | Usually fingerprint for a refusal and js_challenge for the JavaScript check. The vendor value for F5 is shape. |
tier_served | tls for a browser-grade request, browser when a real browser had to open the page. |
attempts, latency_ms | How many tries the call took and how long it lasted. |
cost | The bytes this call moved and what it was charged. |
Measured, with a date
In the canary of 11 November 2026, all 6 calls to F5-protected pages came back with the real page. Across the whole run, 72 of 81 calls on 27 protected targets did, with a median response of 4.1 s.
A call counts only when the answer is 2xx and carries the real page, not a challenge. The list, the method and every run are on the Web Unlocker status page.
Your own scraper or the Web Unlocker
Getting past F5 once is an afternoon. Staying past it every week is the work. This is what has to stay right, and who keeps it right.
| What has to be right | With your own scraper | With the Web Unlocker |
|---|---|---|
| The IP address | You rent residential or mobile IPs and rotate them yourself. | Residential (Premium) or mobile exits, chosen by country, state and city. |
| The browser identity | Handshake, HTTP/2 settings and headers must describe one browser, and be updated with every browser release. | A browser-grade request on the first attempt, kept current for you. |
| The JavaScript check | You run real browsers for the pages that need one, and keep them from looking automated. | A real browser opens the page only when the site asks for one. |
| After a pass | You keep the TS cookies from the client that earned them and repeat the check when they expire. | The session is kept for you while it is valid. |
| When a call still fails | You recognise the F5 block page yourself and decide what to retry. | Retries on a fresh exit. The answer says blocked, blockClass and vendor. |
What it is for, and what it does not do
- It is for pages anyone can open in a browser without signing in: prices, listings, reviews, search results, public profiles.
- Challenges that need no human input are handled by the browser tier. An interactive captcha that asks a person to click, pick images or type is not solved: the answer comes back with
blocked: trueandblockClass: "captcha", so your code can skip the page or try later. - It does not log in for you and it does not create accounts. Pages behind a login stay behind it.
- Whether you may collect a page depends on the terms of the site and on the law that covers the data. A protection system does not change that, in either direction.
F5 and scraping: questions people ask
What does "The requested URL was rejected. Please consult with your administrator" mean?
It is the blocking page of an F5 BIG-IP firewall. The request broke a rule of the site's security policy, or bot defense judged the client automated. The page is served instead of the content, usually with status 200. The same page appears for a person whose request tripped a rule, which is why it names an administrator.
What is the support ID on the Request Rejected page?
A number the firewall gives to the rejected request. It means nothing by itself to a visitor: the administrator of the site searches it in the BIG-IP log to see which rule or signature blocked the request. Two rejections for the same reason have different support IDs.
Why do I get status 200 with a rejected page?
BIG-IP answers a blocked request with its own page and, by default, with status 200. Code that treats 200 as success saves the rejection page as if it were data. Check the text, or use the Web Unlocker: its answer says blocked: true when the page that came back is the rejection or the JavaScript check.
Can a scraper get past Shape (F5 Distributed Cloud Bot Defense)?
Shape protects specific calls by having the site's script sign them in the browser. An HTTP client cannot produce that signature. The Web Unlocker loads the page in a real browser when the site requires it and returns what the browser received; add actions to the call to click or type before the page is captured.
Is it legal to scrape a site protected by F5?
The protection system does not decide that. What matters is the page and the data: whether the page is public, what the terms of the site say, and which law covers the data, personal data above all. The Web Unlocker fetches pages anyone can open without signing in; it does not log in and it does not create accounts.
Send the URL that F5 blocks
Create the free account, open Web Unlocker in the dashboard and paste the URL into the test box. The answer shows the status, the tier that served the page, the attempts and the cost of the call.
References
- F5 knowledge base K92414462: the response and blocking pages of BIG-IP ASM
- F5 TechDocs: configuring what happens if a request is blocked
- F5 TechDocs: configuring bot defense
- F5 Distributed Cloud docs: Bot Defense
- Web Unlocker in the QuanticData API docs: request, answer, errors and blocked pages
- Web Unlocker status: the canary list, the method and every run