> ## Documentation Index
> Fetch the complete documentation index at: https://cognitio-agent.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# List sessions

> Get a list of all Cognitio sessions, sorted by most recently updated.



## OpenAPI

````yaml /openapi.json get /session
openapi: 3.1.1
info:
  title: cognitio
  description: cognitio api
  version: 1.0.0
servers: []
security: []
paths:
  /session:
    get:
      summary: List sessions
      description: Get a list of all Cognitio sessions, sorted by most recently updated.
      operationId: session.list
      parameters:
        - in: query
          name: directory
          schema:
            type: string
          description: Filter sessions by project directory
        - in: query
          name: workspace
          schema:
            type: string
        - in: query
          name: roots
          schema:
            type: boolean
          description: Only return root sessions (no parentID)
        - in: query
          name: start
          schema:
            type: number
          description: >-
            Filter sessions updated on or after this timestamp (milliseconds
            since epoch)
        - in: query
          name: search
          schema:
            type: string
          description: Filter sessions by title (case-insensitive)
        - in: query
          name: tag
          schema:
            type: string
          description: Filter sessions by exact tag
        - in: query
          name: limit
          schema:
            type: number
          description: Maximum number of sessions to return
      responses:
        '200':
          description: List of sessions
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Session'
      x-codeSamples:
        - lang: js
          source: |-
            import { createCognitioClient } from "@cognitio/sdk

            const client = createCognitioClient()
            await client.session.list({
              ...
            })
components:
  schemas:
    Session:
      type: object
      properties:
        id:
          type: string
          pattern: ^ses.*
        slug:
          type: string
        projectID:
          type: string
        workspaceID:
          type: string
          pattern: ^wrk.*
        directory:
          type: string
        parentID:
          type: string
          pattern: ^ses.*
        forkedFrom:
          type: string
          pattern: ^ses.*
        summary:
          type: object
          properties:
            additions:
              type: number
            deletions:
              type: number
            files:
              type: number
            diffs:
              type: array
              items:
                $ref: '#/components/schemas/SnapshotFileDiff'
          required:
            - additions
            - deletions
            - files
        share:
          type: object
          properties:
            url:
              type: string
          required:
            - url
        title:
          type: string
        tags:
          default: []
          type: array
          items:
            type: string
        version:
          type: string
        time:
          type: object
          properties:
            created:
              type: number
            updated:
              type: number
            compacting:
              type: number
            archived:
              type: number
          required:
            - created
            - updated
        permission:
          $ref: '#/components/schemas/PermissionRuleset'
        revert:
          type: object
          properties:
            messageID:
              type: string
              pattern: ^msg.*
            partID:
              type: string
              pattern: ^prt.*
            snapshot:
              type: string
            checkpointId:
              type: string
            diff:
              type: string
          required:
            - messageID
      required:
        - id
        - slug
        - projectID
        - directory
        - title
        - version
        - time
    SnapshotFileDiff:
      type: object
      properties:
        file:
          type: string
        patch:
          type: string
        additions:
          type: number
        deletions:
          type: number
        status:
          type: string
          enum:
            - added
            - deleted
            - modified
      required:
        - file
        - patch
        - additions
        - deletions
    PermissionRuleset:
      type: array
      items:
        $ref: '#/components/schemas/PermissionRule'
    PermissionRule:
      type: object
      properties:
        permission:
          type: string
        pattern:
          type: string
        action:
          $ref: '#/components/schemas/PermissionAction'
      required:
        - permission
        - pattern
        - action
    PermissionAction:
      type: string
      enum:
        - allow
        - deny
        - ask

````

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