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

# List browser sessions

> The browser sessions the caller may see, **oldest update first**, so a caller that keeps its own record pulls with `updated_since` set to the newest `updated_at` it has and gets every session that changed since — the ones that ended included. An API key lists the organization's sessions; a session token its own user's.



## OpenAPI

````yaml /api-reference/openapi.json get /v1/browser-sessions
openapi: 3.1.0
info:
  title: Sidenet API
  version: 1.0.0
  description: >-
    Sidenet HTTP endpoints exposed by the Sidenet Studio. All routes require an
    api key that can be generated through the studio in studio.sidenet.ai.
servers:
  - url: https://api.sidenet.ai
security:
  - bearerAuth: []
paths:
  /v1/browser-sessions:
    get:
      tags:
        - Browser
      summary: List browser sessions
      description: >-
        The browser sessions the caller may see, **oldest update first**, so a
        caller that keeps its own record pulls with `updated_since` set to the
        newest `updated_at` it has and gets every session that changed since —
        the ones that ended included. An API key lists the organization's
        sessions; a session token its own user's.
      parameters:
        - name: updated_since
          in: query
          required: false
          schema:
            type: string
            format: date-time
          description: Only sessions updated after this time.
        - name: status
          in: query
          required: false
          schema:
            type: string
            enum:
              - live
              - waiting_person
              - waiting_approval
              - done
              - stopped
              - failed
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 200
            default: 50
      responses:
        '200':
          description: The sessions
          content:
            application/json:
              schema:
                type: object
                properties:
                  sessions:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: >-
                            The session id. Sidenet's own: it is what every
                            route here takes.
                        status:
                          type: string
                          enum:
                            - live
                            - waiting_person
                            - waiting_approval
                            - done
                            - stopped
                            - failed
                          description: >-
                            `waiting_person`: the agent waits for a person (a
                            take-over, a pause, a code or a sign-in it asked
                            for). `waiting_approval`: something it wants to send
                            waits for a yes. The last three are ended sessions.
                        control:
                          type: string
                          enum:
                            - person
                            - agent
                          description: Who may act on the page now.
                        drivers:
                          type: array
                          items:
                            type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - person
                                  - agent
                              user_id:
                                type: string
                              agent_id:
                                type: string
                              name:
                                type: string
                          description: Who works in the session.
                        thread_id:
                          type: string
                          nullable: true
                          description: >-
                            The conversation the session works for; null for a
                            session a person opened with no agent.
                        run_id:
                          type: string
                          nullable: true
                          description: >-
                            The request of the agent turn using it (its id in
                            the requests list).
                        host:
                          type: string
                          nullable: true
                          description: The website of the active tab.
                        saved_login:
                          type: object
                          nullable: true
                          properties:
                            ref:
                              type: string
                            host:
                              type: string
                          description: >-
                            The saved login the session is signed in with, if
                            any.
                        tabs:
                          type: array
                          items:
                            type: object
                            properties:
                              index:
                                type: integer
                              url:
                                type: string
                              title:
                                type: string
                              active:
                                type: boolean
                              agent:
                                type: boolean
                                description: The tab the agent works in.
                        steps:
                          type: array
                          items:
                            type: object
                            properties:
                              'n':
                                type: integer
                              of:
                                type: integer
                                nullable: true
                              sentence:
                                type: string
                                description: What the agent did, in plain words.
                              tab:
                                type: integer
                              at:
                                type: string
                                format: date-time
                          description: The agent's steps, oldest first (the last 200).
                        needs_person:
                          type: string
                          nullable: true
                          enum:
                            - code
                            - captcha
                            - sign_in
                            - null
                          description: What the agent asked a person for.
                        pending_submit:
                          type: object
                          nullable: true
                          properties:
                            description:
                              type: string
                            host:
                              type: string
                            asked_at:
                              type: string
                              format: date-time
                            decision_ref:
                              type: string
                              nullable: true
                          description: What waits for a yes before it is sent.
                        end:
                          type: object
                          nullable: true
                          properties:
                            outcome:
                              type: string
                              enum:
                                - done
                                - stopped
                                - failed
                            sentence:
                              type: string
                        metadata:
                          type: object
                          description: Kept and returned as given at creation.
                        started_at:
                          type: string
                          format: date-time
                        ended_at:
                          type: string
                          format: date-time
                          nullable: true
                        updated_at:
                          type: string
                          format: date-time
              example:
                sessions:
                  - id: bs_3f9a1c0e5b7d2a4c6e8f0b1d
                    status: live
                    control: agent
                    drivers:
                      - kind: agent
                        agent_id: 7c1d…
                        name: Revenue manager
                    thread_id: thread_1794450000000_ab12cd34e
                    run_id: 7f3c0a2e6b1d4c8f9a5e2b7d1c3f6a8e
                    host: admin.booking.com
                    saved_login:
                      ref: sl_0c9e4b7a1d3f5a6b8c2e4d6f
                      host: admin.booking.com
                    tabs:
                      - index: 0
                        url: https://admin.booking.com/hotel/hoteladmin/
                        title: Booking.com extranet
                        active: true
                        agent: true
                    steps:
                      - 'n': 1
                        of: null
                        sentence: Opening admin.booking.com/hotel/hoteladmin.
                        tab: 0
                        at: '2026-11-12T10:00:03.000Z'
                    needs_person: null
                    pending_submit: null
                    end: null
                    metadata:
                      property_id: 5b0f…
                    started_at: '2026-11-12T10:00:00.000Z'
                    ended_at: null
                    updated_at: '2026-11-12T10:00:03.000Z'
        '400':
          description: >-
            `updated_since` is not a date, or `status` is not one of the
            statuses
      security:
        - bearerAuth: []
        - sessionToken: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Organization API key, generated in studio.sidenet.ai. Backend only —
        never in a browser.
    sessionToken:
      type: http
      scheme: bearer
      description: >-
        Session token (`snat_…`) minted by POST /v1/token. Carries the
        organization and the end user; safe in a browser.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.