---
title: "Get Observability Session Spans"
method: GET
path: "/agentic/observability/sessions/{session_id}"
tags: ["Agents Observability"]
---

# Get Observability Session Spans

`GET /agentic/observability/sessions/{session_id}`

All spans within one session, ordered by ``(timestamp, call_sequence)``.

Tenant + service scoping happens via the WHERE clause - there's no
separate pre-check because a session_id from another tenant or sibling
service simply returns 0 rows (empty list), which the FE treats the
same as "session not found / expired". No leak.

## Path parameters

- `session_id` string, required

## Response `200`

Successful Response

- ObservabilitySpan[]
  - `request_id` string, required
  - `tool_name` string, required
  - `started_at` string, date-time, required
  - `duration_ms` integer, nullable
  - `status` string, required
  - `response_size_bytes` integer, nullable
  - `response_truncated` boolean, nullable
  - `error_message` string, nullable
  - `error_code` string, nullable
  - `denied_by_profile` string, nullable
  - `parameters` unknown
  - `call_sequence` integer, nullable
  - `topic` string, nullable
  - `agent_id` string, nullable
  - `client_id` string, nullable
  - `project_key_id` string, nullable
  - `tool_profile` string, nullable
  - `access_mode` string, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/streamkap/apis/streamkap-rest-api.md) · [All operations](https://skmtc.net/streamkap/apis/streamkap-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/streamkap/streamkap-rest-api/versions/8aea6143d003/schema)
