Overview

Stealth mode provides developers with a robust suite of tools aimed at facilitating web automation while minimizing the chances of detection by sophisticated anti-bot technologies.

By employing proxies, residential IPs, and fingerprinting techniques, developers can simulate authentic user interactions across multiple sessions and IPs.

This mode is useful for tasks that involve data scraping, automated testing, and content aggregation in environments with strict bot detection mechanisms.

The integrated captcha-solving feature ensures navigation when faced with security challenges. Stealth mode supports a secure and efficient way to manage and execute automated tasks on a wide range of websites.

Browserbase’s custom-built Chromium Browser comes with a set of features enabling you to navigate in Stealth mode.

Features

Proxies & Residential IPs

Browserbase offers flexible proxy configuration options, allowing you to use our built-in proxies, bring your own, or combine both. Proxies are configured when creating a session through the API.

Proxy Configuration Options

Enable Browserbase proxies easily with the default configuration:

curl -X POST 'https://www.browserbase.com/v1/sessions' \
-H 'Content-Type: application/json' \
-H 'x-bb-api-key: $BROWSERBASE_API_KEY' \
-d '{
  "projectId": "<project-id>",
  "proxies": true
}'

Alternatively you can list it as the only rule in the proxies array:

curl -X POST 'https://www.browserbase.com/v1/sessions' \
-H 'Content-Type: application/json' \
-H 'x-bb-api-key: $BROWSERBASE_API_KEY' \
-d '{
  "projectId": "<project-id>",
  "proxies": [
    { "type": "browserbase" }
  ]
}'

To use these proxy configurations, you need to create a session with the desired proxy settings through the Sessions API, and then connect to that session. Here some examples:

Limitations

Some high-risk categories are restricted by our proxy vendors and cannot be proxied which includes:

  • All Apple domains, including iTunes and App stores
  • Entertainment (e.g., Netflix, Playstation)
  • Banking and other financial institutions
  • Some Google domains
  • Streaming
  • Ticketing
  • LinkedIn
  • Mailing

Fingerprinting

The fingerprint mechanism handles the viewport, user agents, and headers and can be configured when creating a new Session through the API with the fingerprint field:

The fingerprint options are available on the Sessions API endpoint.

When setting operatingSystems to ios or android, ensure the devices array includes "mobile".

When setting operatingSystems to linux, macos, or windows, ensure the devices array includes "desktop".

Available options for operatingSystems: android, ios, linux, macos, windows

Captcha solving

Captchas get automatically detected and solved. Proxies must be enabled to turn on captcha solving.

You can detect if a captcha is being solved by listening to the browserbase-solving-started and browserbase-solving-finished events in the console.log of the page;

const google = await page.goto("https://www.google.com/recaptcha/api2/demo");

page.on("console", (msg) => {
  if (msg.text() == "browserbase-solving-started") {
    console.log("Captcha Solving In Progress");
  } else if (msg.text() == "browserbase-solving-finished") {
    console.log("Captcha Solving Completed");
  }
});

Captcha solving can take up to 30 seconds. Please note, this feature is currently in beta; if you have any feedback, please reach out.

If you’d like to disable captcha solving, you can set solveCaptchas to false in the browserSettings when creating a session.

curl -X POST 'https://www.browserbase.com/v1/sessions' \
-H 'Content-Type: application/json' \
-H 'x-bb-api-key: $BROWSERBASE_API_KEY' \
-d '{
  "projectId": "<project-id>",
  "browserSettings": {
    solveCaptchas: false
  }
};