---
title: "Get browser session state"
method: GET
path: "/v1/browser/session/{session_id}"
---

# Get browser session state

`GET /v1/browser/session/{session_id}`

## Request

- Base URL: `https://api.roveapi.com`
- URL: `https://api.roveapi.com/v1/browser/session/{session_id}`
- Auth: HTTP bearer

## Response `200`

Successful response

- object
  - `session_id` string, required
  - `status` string, required
  - `expires_at` string, required
  - `hard_expires_at` string, required
  - `last_activity_at` string, required
  - `closed_at` string, nullable, required
  - `controller` 'agent' | 'human'
  - `observation_required` boolean
  - `control_return_reason` string, nullable
  - `current_page_id` string, nullable
  - `page_events_seq` integer
  - `pages` object[]: Open pages, then the last 20 closed or blocked ones.
    - `page_id` string, required
    - `opener_page_id` string, nullable, required
    - `return_to_page_id` string, nullable, required
    - `url` string, required
    - `title` string, required
    - `status` 'open' | 'closed' | 'blocked', required
    - `blocked_reason` 'target-policy-refused' | 'page-limit'
    - `closed_by` 'page' | 'agent' | 'human' | 'crash' | 'session-end' | 'context-lost'
    - `opened_at` string, required
    - `closed_at` string
  - `restore` object, nullable: Supervised sessions only. Answer it with the restore_pages action (decision restore or dismiss).
    - `available` true, required
    - `page_count` integer, required
    - `ended_reason` string, required: Why the previous session ended: worker_lost, page_memory_exhausted, browser_unresponsive, runtime_restarted, or unknown.
    - `ended_at` string, required
    - `pages` object[], required
      - `url` string, required
      - `title` string, required

## Other responses

- `401`: RFC 7807 authentication problem
- `409`: RFC 7807 state/control problem
- `410`: RFC 7807 session-expired problem; a supervised session that ended (including by an API restart) carries reason and controller; reason credit_exhausted adds the out-of-credits extensions (balance, packs_within_limits, purchasing, next_step, links, owner_action_url, retry none)

---

[API](https://skmtc.dev/roveapi/apis/rove-api.md) · [All operations](https://skmtc.dev/roveapi/apis/rove-api/llms.txt) · [OpenAPI document](https://skmtc.dev/roveapi/apis/rove-api/revisions/0e5d69bde586?raw)
