Skip to Content
Session

Session

Session provides a detailed view of an individual TA training session, including the AI generation groups created during the session and a unified timeline of events. This is the drill-down view when you want to understand exactly what happened during a specific training session.

Session is a view on the system artifact, exposed via two endpoints:

  • POST /system/session — single session detail (one row + timeline + groups).
  • POST /system/sessions — paginated list of all sessions.

The CLI surfaces these as glow system session and glow system sessions.

What is a Session?

A session represents a single visit by a TA to the Glow platform. During a session, the TA may interact with multiple student persona simulations, generating AI groups (collections of model calls) and producing a chronological timeline of events.

Session is useful when you need to:

  • Investigate what happened during a specific TA’s training session
  • Review the groups and runs generated during a session
  • Track token usage and cost at the session level
  • Export a session’s data for auditing or FERPA compliance

Quick Start

CLI

Calls below use $GLOW_INSTANCE_URL + $GLOW_TOKEN — see Authentication to export them once.

# Get session detail with groups and timeline glow system session --body '{"session_id": "session-uuid"}' # Paginate the full session list glow system sessions --body '{"page_size": 25, "sort_order": "desc"}' # Export attempts associated with this session glow system export --body '{"target_session_id": "session-uuid"}'

API

# Get one session detail curl -X POST $GLOW_INSTANCE_URL/system/session \ -H "Authorization: Bearer $GLOW_TOKEN" \ -H "Content-Type: application/json" \ -d '{"session_id": "session-uuid"}' # List sessions curl -X POST $GLOW_INSTANCE_URL/system/sessions \ -H "Authorization: Bearer $GLOW_TOKEN" \ -H "Content-Type: application/json" \ -d '{"page_size": 20}' # Export curl -X POST $GLOW_INSTANCE_URL/system/export \ -H "Authorization: Bearer $GLOW_TOKEN" \ -H "Content-Type: application/json" \ -d '{"target_session_id": "session-uuid"}'

Understanding the session detail response

POST /system/session returns GetSessionDetailResponse:

  • session_exists — Whether the requested session was found.
  • actor_name — Display name of the current user viewing the session.
  • session_id — UUID of the session.
  • profile_id, profile_name — The TA who owns this session.
  • session_created_at — When the session started.
  • active — Whether the session is currently active.

Groups

The groups array contains ArtifactSessionGroup objects, each representing an AI generation group within the session:

  • group_id — UUID of the group
  • group_name — Display name
  • first_run_at, last_run_at — Time span of the group’s runs
  • run_count — Number of AI model runs
  • total_tokens — Total tokens consumed
  • total_cost — Dollar cost as a string

Timeline

The timeline array contains SessionTimelineItem objects — a chronological log of events:

  • event_type — Type of event (e.g., group creation, run start, run end)
  • entity_id — UUID of the related entity
  • entity_name — Display name of the related entity
  • created_at — Timestamp of the event
  • extra_1, extra_2 — Additional context fields

A common workflow is to start from the Activity page, paginate sessions, then drill into one:

# Step 1: Paginate sessions (or use the Activity summary at /system/activity) glow system sessions --body '{"page_size": 10}' # Step 2: Pick a session_id from the results and get its detail glow system session --body '{"session_id": "abc-123"}' # Step 3: Drill into a specific group glow system group --body '{"group_id": "group-uuid"}'

Common Operations

TaskCLIAPI Endpoint
Get one session detailglow system sessionPOST /system/session
List sessions (paginated)glow system sessionsPOST /system/sessions
Export session dataglow system exportPOST /system/export
Refresh cachesglow system refreshPOST /system/refresh
Last updated on