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

# Get session details

> Metadata for one session: encounter date and times, duration, status, template, the owning provider, a patient summary and the ids of the notes generated for it. Use GET /sessions/{sessionId}/notes for note content and the transcript. Returns 404 if the session isn't owned by your organization. Requires the notes:read scope.



## OpenAPI

````yaml /openapi/ext-api-v1.json get /sessions/{sessionId}
openapi: 3.0.0
info:
  title: Healos External API
  version: 1.0.0
  description: >-
    External API for managing patients, documents, and appointments, listing
    providers and note templates, pulling clinical notes (with transcript and
    patient context), and running insurance eligibility checks.
servers:
  - url: https://api.healos.ai/ext-api/v1
    description: Production
  - url: http://localhost:8787/ext-api/v1
    description: Local development
security:
  - ApiKeyAuth: []
paths:
  /sessions/{sessionId}:
    get:
      tags:
        - Sessions
      summary: Get session details
      description: >-
        Metadata for one session: encounter date and times, duration, status,
        template, the owning provider, a patient summary and the ids of the
        notes generated for it. Use GET /sessions/{sessionId}/notes for note
        content and the transcript. Returns 404 if the session isn't owned by
        your organization. Requires the notes:read scope.
      parameters:
        - schema:
            type: string
            description: Session UUID
            example: f47ac10b-58cc-4372-a567-0e02b2c3d479
          required: true
          name: sessionId
          in: path
      responses:
        '200':
          description: Session details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionDetailResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Insufficient scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Session not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitError'
components:
  schemas:
    SessionDetailResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/SessionDetail'
      required:
        - data
    Error:
      type: object
      properties:
        error:
          type: string
      required:
        - error
    RateLimitError:
      type: object
      properties:
        error:
          type: string
          example: Rate limit exceeded. Please retry after the window resets.
      required:
        - error
    SessionDetail:
      type: object
      properties:
        id:
          type: string
          example: f47ac10b-58cc-4372-a567-0e02b2c3d479
        title:
          type: string
          nullable: true
          example: Follow-up visit
        status:
          type: string
          description: >-
            Session lifecycle status (for example `created`, `processing`,
            `completed`, `failed`).
          example: completed
        encounter_date:
          type: string
          nullable: true
          description: >-
            Date of the encounter (ISO 8601). Falls back to the start time when
            no date is set.
        start_time:
          type: string
          nullable: true
          description: Recording start (ISO 8601).
        end_time:
          type: string
          nullable: true
          description: Recording end (ISO 8601).
        duration_seconds:
          type: integer
          nullable: true
          description: Seconds between start_time and end_time, when both are set.
          example: 1260
        source:
          type: string
          nullable: true
          description: >-
            How the transcript was captured (recording, uploaded audio, typed
            text, and so on).
          example: live_saved
        ehr_appointment_id:
          type: string
          nullable: true
          description: >-
            The EHR appointment the session was recorded for, when it was
            started from one.
        template:
          type: object
          properties:
            id:
              type: string
              nullable: true
            name:
              type: string
              nullable: true
              example: SOAP Note
          required:
            - id
            - name
          description: Template the session was set up with.
        provider:
          type: object
          nullable: true
          properties:
            id:
              type: string
            name:
              type: string
              nullable: true
              example: Dr. Jane Smith
          required:
            - id
            - name
          description: The clinician who owns the session (same id as GET /providers).
        patient:
          type: object
          nullable: true
          properties:
            id:
              type: string
              example: '481926357104938271'
            name:
              type: string
              nullable: true
            first_name:
              type: string
              nullable: true
            last_name:
              type: string
              nullable: true
            date_of_birth:
              type: string
              nullable: true
              example: '1985-04-12'
            mrn:
              type: string
              nullable: true
            external_id:
              type: string
              nullable: true
              description: Your identifier for the patient, if you set one.
          required:
            - id
            - name
            - first_name
            - last_name
            - date_of_birth
            - mrn
            - external_id
        note_ids:
          type: array
          items:
            type: string
          description: >-
            Notes generated for this session, newest first. Fetch each with GET
            /notes/{noteId}.
        updated_at:
          type: string
          nullable: true
          description: Last update (ISO 8601).
      required:
        - id
        - title
        - status
        - encounter_date
        - start_time
        - end_time
        - duration_seconds
        - source
        - ehr_appointment_id
        - template
        - provider
        - patient
        - note_ids
        - updated_at
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key obtained from /api/v1/ext-api-keys

````

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