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

# Overview

> Create, connect, and retrieve information from browser sessions.

## Understanding browser sessions

A browser session is the fundamental building block in Browserbase — it represents a single browser instance running in the cloud. Before diving into the APIs, familiarize yourself with the core concepts:

<CardGroup cols={2}>
  <Card title="Create a browser session" icon="plus" iconType="sharp-solid" href="/platform/browser/getting-started/create-browser-session">
    Learn how to create and configure browser sessions
  </Card>

  <Card title="Using browser sessions" icon="browser" iconType="sharp-solid" href="/platform/browser/getting-started/using-browser-session">
    Connect and interact with browser sessions using your preferred framework
  </Card>

  <Card title="Managing sessions" icon="circle-stop" iconType="sharp-solid" href="/platform/browser/getting-started/manage-browser-session">
    Understand session lifecycle and proper termination
  </Card>

  <Card title="Session inspector" icon="magnifying-glass" iconType="sharp-solid" href="/platform/browser/observability/observability">
    Monitor and debug your browser sessions in real-time
  </Card>
</CardGroup>

## API reference

Once you understand the fundamentals, explore the Browserbase APIs to get full control of your browser sessions:

<CardGroup cols={3}>
  <Card title="Sessions API" icon="server" iconType="sharp-solid" href="/reference/api/create-a-session">
    Create and manage browser sessions with full programmatic control.
  </Card>

  <Card title="Projects API" icon="chart-line" iconType="sharp-solid" href="/reference/api/get-project-usage">
    View project-wide usage.
  </Card>

  <Card title="Contexts API" icon="puzzle-piece" iconType="sharp-solid" href="/reference/api/create-a-context">
    Configure and reuse browser environments across multiple sessions.
  </Card>
</CardGroup>

**Authentication**

All REST endpoints are authenticated using your [Browserbase API Key](/welcome/getting-started#overview-dashboard), configured as follows:

<CodeGroup>
  ```js Node.js theme={null}
  const response = await fetch(
    `https://api.browserbase.com/v1/sessions/${sessionId}`,
    {
      method: "GET",
      headers: {
        "x-bb-api-key": `${process.env.BROWSERBASE_API_KEY}`,
      },
    },
  );
  ```

  ```python Python theme={null}
  import os
  import requests

  API_KEY = os.environ["BROWSERBASE_API_KEY"]

  url = "https://api.browserbase.com/v1/sessions"
  headers = {"x-bb-api-key": API_KEY}

  response = requests.request("GET", url, headers=headers)
  ```

  ```bash cURL theme={null}
  curl -X GET "https://api.browserbase.com/v1/sessions/${SESSION_ID}" \
       -H "x-bb-api-key: ${BROWSERBASE_API_KEY}" \
  ```
</CodeGroup>
