---
title: "Get a session"
method: GET
path: "/api/v1/sessions/{session_id}"
tags: ["Sessions"]
---

# Get a session

`GET /api/v1/sessions/{session_id}`

## Request

- Base URL: `https://dashboard.sealgate.ai`
- URL: `https://dashboard.sealgate.ai/api/v1/sessions/{session_id}`
- Auth: HTTP bearer

Fetch a single session with its full tool-call history and risk analysis.

## Response `200`

Session detail

- SessionDetail: Summary view of an agent session.
  - `id` string, required: Session identifier
  - `correlation_id` string, required: Correlation ID linking related events
  - `session_token` string, nullable: Session token for token-based sessions; null otherwise
  - `user_id` string, required: Authenticated user ID
  - `user_email` string, required: User email address
  - `agent_name` string, required: Name of the AI agent
  - `agent_type` string, required: Type/category of the agent
  - `created_at` string, date-time, required: Session start timestamp
  - `last_activity_at` string, date-time, nullable: Timestamp of the last tool call activity
  - `duration_ms` integer, nullable: Total session duration in milliseconds
  - `tool_call_count` integer, required: Number of tool calls in this session
  - `status` string, required: Session status (active, completed, error)
  - `trifecta_flags` string[], required: Trifecta security flags triggered
  - `trifecta_disposition` string: Worst outcome of any trifecta write gated for approval: none, pending, approved, expired, denied
  - `trifecta_block_count` integer: Number of trifecta writes gated for approval this session
  - `block_severity` string: Severity of trifecta blocks: none, low, medium, high
  - `acl_level` string: Highest ACL level (PUBLIC, PRIVATE, SECRET)
  - `tool_names` string[]: Distinct tool names invoked in this session
  - `tool_calls` ToolCall[], required: Ordered list of tool calls in this session
    - `id` string, required: Unique tool call identifier
    - `tool_name` string, required: Name of the MCP tool invoked
    - `parameters` object, required: Parameters passed to the tool
    - `timestamp` string, date-time, required: When the tool call was made
    - `duration_ms` integer, nullable: Execution time in milliseconds
    - `status` string, required: Outcome status (e.g. success, blocked, error)
    - `result` unknown
    - `read_private_data` boolean
    - `read_untrusted_public_data` boolean
    - `write_operation` boolean
    - `acl` string: Tool ACL level (PUBLIC, PRIVATE, SECRET)
  - `data_access_summary` object, required: Summary of data access patterns during the session
  - `risk_analysis` RiskAnalysisEntry[]: History of trifecta block analyses
    - `timestamp` string, date-time, nullable
    - `kind` string: Element kind: tool, resource, or prompt
    - `name` string: Prefixed name of the blocked element
    - `reason` string: Block reason, e.g. trifecta or trifecta_prevent
    - `risk` RiskInfo, required: Plain-language risk explanation for a blocked action.
      - `title` string
      - `headline` string
      - `summary` string
      - `legs` object, nullable: Trifecta legs (private/untrusted/external) with their sources
      - `server_name` string
      - `acl_level` string
      - `risk_level` string, nullable: Severity: low, medium, high, or critical
      - `policy_rule` string, nullable
      - `source` string: How the summary was produced: template or llm

## Other responses

- `401`: Missing or invalid API key
- `403`: The caller's role is not permitted to perform this action
- `404`: The requested resource was not found

---

[API](https://skmtc.dev/sealgate/apis/sealgate-management-api.md) · [All operations](https://skmtc.dev/sealgate/apis/sealgate-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sealgate/apis/sealgate-management-api/revisions/c9ca2e599065?raw)
