> ## Documentation Index
> Fetch the complete documentation index at: https://docs.modulex.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Browserbase Integration for AI Agents & Workflows

> Cloud browser infrastructure for running and managing headless browser sessions

{/* Self-hosted logo — build-time vendored from modulex.json / Iconify (see scripts/lib/logo.js). */}

<img src="https://mintcdn.com/modulexaillc/zKB2qsP6Q61VNLfB/logos/browserbase.svg?fit=max&auto=format&n=zKB2qsP6Q61VNLfB&q=85&s=5355b3be02f3de30e56fc77094abceda" alt="Browserbase logo" width="72" height="72" data-path="logos/browserbase.svg" />

## Overview

Add **Browserbase** to any ModuleX agent or workflow. Cloud browser infrastructure for running and managing headless browser sessions via the Browserbase REST API (`api.browserbase.com/v1`).

<Info>
  **Categories**: Developer Tools & Infrastructure · Automation · Browser · **Auth**: API Key · **Actions**: 3
</Info>

## Authentication

### API Key Authentication

Authenticate using your Browserbase API key

<Steps>
  <Step title="Step 1">
    Go to [https://www.browserbase.com](https://www.browserbase.com) and sign in
  </Step>

  <Step title="Step 2">
    Navigate to Settings > API Keys
  </Step>

  <Step title="Step 3">
    Create a new API key or copy your existing one
  </Step>

  <Step title="Step 4">
    Paste the API key below
  </Step>
</Steps>

#### Required Credentials

| Field               | Description                                     | Required | Format                                     |
| ------------------- | ----------------------------------------------- | -------- | ------------------------------------------ |
| Browserbase API Key | Your Browserbase API key from the settings page | Yes      | `bb_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx` |

## Available Actions

<AccordionGroup>
  <Accordion title="create_context — Creates a new context in Browserbase for persistent browser state">
    ### Parameters

    <ResponseField name="project_id" type="string" required>
      The ID of the Browserbase project
    </ResponseField>

    ### Response

    ```json theme={null}
    {
      "additionalProperties": false,
      "properties": {
        "success": {
          "title": "Success",
          "type": "boolean"
        },
        "error": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Error"
        },
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "project_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Project Id"
        },
        "created_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Created At"
        }
      },
      "required": [
        "success"
      ],
      "title": "CreateContextOutput",
      "type": "object"
    }
    ```
  </Accordion>

  <Accordion title="create_session — Creates a new browser session with specified settings">
    ### Parameters

    <ResponseField name="project_id" type="string" required>
      The ID of the Browserbase project
    </ResponseField>

    <ResponseField name="extension_id" type="string">
      The uploaded Extension ID to load in the session
    </ResponseField>

    <ResponseField name="browser_settings" type="object">
      Settings for the session (e.g. fingerprint, viewport). See Browserbase docs for schema.
    </ResponseField>

    <ResponseField name="timeout" type="integer">
      Duration in seconds after which the session will automatically end. Min: 60, Max: 21600.
    </ResponseField>

    <ResponseField name="keep_alive" type="boolean">
      Set to true to keep the session alive even after disconnections
    </ResponseField>

    <ResponseField name="proxies" type="array">
      Array of proxy configuration objects. Each element should have type and optional geolocation fields.
    </ResponseField>

    <ResponseField name="region" type="string">
      The region where the session should run. One of: us-west-2, us-east-1, eu-central-1, ap-southeast-1.
    </ResponseField>

    <ResponseField name="user_metadata" type="object">
      Arbitrary user metadata to attach to the session
    </ResponseField>

    ### Response

    ```json theme={null}
    {
      "additionalProperties": false,
      "properties": {
        "success": {
          "title": "Success",
          "type": "boolean"
        },
        "error": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Error"
        },
        "id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Id"
        },
        "project_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Project Id"
        },
        "status": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Status"
        },
        "created_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Created At"
        },
        "region": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Region"
        },
        "connect_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Connect Url"
        }
      },
      "required": [
        "success"
      ],
      "title": "CreateSessionOutput",
      "type": "object"
    }
    ```
  </Accordion>

  <Accordion title="list_projects — Lists all projects in the Browserbase account">
    ### Response

    ```json theme={null}
    {
      "$defs": {
        "ProjectSummary": {
          "additionalProperties": false,
          "properties": {
            "id": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "default": null,
              "title": "Id"
            },
            "name": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "default": null,
              "title": "Name"
            }
          },
          "title": "ProjectSummary",
          "type": "object"
        }
      },
      "additionalProperties": false,
      "properties": {
        "success": {
          "title": "Success",
          "type": "boolean"
        },
        "error": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Error"
        },
        "projects": {
          "items": {
            "$ref": "#/$defs/ProjectSummary"
          },
          "title": "Projects",
          "type": "array"
        }
      },
      "required": [
        "success"
      ],
      "title": "ListProjectsOutput",
      "type": "object"
    }
    ```
  </Accordion>
</AccordionGroup>

## Limits & Quotas

* Rate limits are not publicly documented by Browserbase; contact their support for enterprise limits.
* Session timeout range: 60–21600 seconds.
* Error model: non-2xx responses and timeouts are caught and returned as `success=False` + `error` rather than raising.

## Related integrations

<CardGroup cols={3}>
  <Card title="Apify" href="/integrations/tools/apify" />

  <Card title="Daytona" href="/integrations/tools/daytona" />

  <Card title="ServiceNow" href="/integrations/tools/servicenow" />
</CardGroup>

## Links

* [Browserbase](https://www.browserbase.com)
