New — Iris AI drafts your firewall, routing & rate-limit rules. Explore AI features →
Changelog
Security

Challenge bots without dropping out of search

Under attack mode checks each visitor's browser and stops scripts, while verified search engines and AI crawlers keep reaching your site.

Challenge bots without dropping out of search

When scrapers or scripted traffic hit your site, a browser check stops them at the edge. But a check that stops every bot also stops Google, and the pages you rank with start to disappear from search.

Under attack mode now lets verified search engines and AI crawlers through: Google, Bing, Apple, DuckDuckGo, OpenAI and Perplexity. A crawler counts as verified only when it comes from an address its operator publishes for it, so a scraper that copies Googlebot's name still gets the check.

Traffic Inspector request details: GET /products/aurora-desk-lamp from Googlebot, status 200, bot score 15, Crawler, verified crawler
Acme Labs' storefront is being scraped, so Under attack mode is on for shop.example.com. Googlebot still fetches a product page from one of Google's published addresses: the Traffic Inspector marks it verified crawler, and the page is served as usual.
Traffic Inspector request details: GET /products?page=37 with a Googlebot user agent, status 403, bot score 2, fake crawler
The same user agent from somewhere else: the address isn't Google's, so the request scores 2 as a fake crawler and gets the check, which a script can't pass.

What you can set

  • Challenge visitors. The visitor's browser solves a check, then goes through. Pick Automatic (no clicks), Checkbox or Puzzle.
  • Paths that skip the check. Scripts and API clients get a 403 while the check is on, so list your API and webhook paths here.
  • Let verified search engines and AI crawlers through. On by default. Turn it off to check them like everyone else.
  • Challenge only suspicious visitors. Decide by each request's bot score: a high score goes through, a very low one gets a 403, and everyone in between gets the check.
  • See what happened. Every request in the Traffic Inspector shows its bot score and whether it came from a verified crawler.

The check stops scripts and tools that don't run a browser. A headless browser can still pass it, so pair it with a rate limit when a scraper is persistent.

Get started

  1. In the dashboard, go to Gateway → Endpoints and open the endpoint. Stay on its Overview tab.
  2. Expand Under attack mode and switch on Challenge visitors.
  3. Pick a Challenge type, add your API and webhook paths to Paths that skip the check, leave Let verified search engines and AI crawlers through on, and click Save.
  4. Open Observability → Traffic Inspector and click a request to see its bot score.
  5. Read the docs: Challenge (Under attack mode).

Read the docs

Ask an AI to summarise this page
Deploy
App hosting Edge functions Domains & certificates
Connect
Secure tunnels API gateway Multi-region edge
Protect
Bot protection & challenge WAF & firewall Edge login
Observe & AI
Monitoring Inspector & replay Iris AI MCP server AI Gateway
Developers
Developer tools Docs ngrok policy converter Blog Changelog
Compare
Ngris vs ngrok Ngris vs Cloudflare Tunnel Ngris vs Vercel Ngris vs Netlify Expose localhost guide
More
Solutions Pricing Enterprise Sign in Get Started Free