Skip to main content
GET
Fetch the canonical analysis input for a completed session

Authorizations

x-api-key
string
header
required

Path Parameters

session_id
string<uuid>
required

Response

Successful Response

Canonical analyzer input built from one completed session.

Required fields are populated for every analysed completed session. Conditionally-required fields populate when the corresponding capture succeeded (e.g., rag_traces when retrieval ran). Nullable enrichment fields are best-effort.

Consumers should consult missing_evidence_reasons before attempting evidence-backed classifications.

session_id
string<uuid>
required
organization_id
string<uuid>
required
agent_id
string<uuid> | null
required
channel
string
required
started_at
string<date-time>
required
ended_at
string<date-time> | null
required
completion_reason
string | null
required
knowledge_gap_analysis_outcome
enum<string> | null
required

Canonical, analyzer-friendly outcome of a completed session.

Derived from (SessionStatus, SessionTerminationReason) at close time and persisted on ConvSessionMeta.knowledge_gap_analysis_outcome. Free-form termination_reason is preserved alongside for forensic detail.

Available options:
resolved,
unresolved,
transferred,
expired,
error,
abandoned,
voicemail,
escalated,
call_failed
analyzer_input_schema_version
integer
default:2
messages
MessageEntry · object[]
rag_traces
RagTraceEntry · object[]
citations
CitedChunk · object[]
tool_calls
ToolCallEntry · object[]
handoff_events
HandoffEvent · object[]
kb_snapshot
KbSnapshotEntry · object | null

KB state captured at the moment of the session's first retrieval.

Maps each KB used in the session to the active document-version count (as a coarse fingerprint of "what was the KB at the time"). The fine-grained per-doc version of a retrieved chunk is on RetrievedChunk.version_id.

user_feedback
FeedbackEntry · object | null

Free-form user feedback against a session.

Nullable in v1 — no capture surface yet. Shape is reserved so downstream consumers can plan against it.

csat
CSATEntry · object | null

CSAT score against a session. Nullable in v1 (no capture surface).

reopen
ReopenEntry · object | null

Ticket reopen event. Nullable in v1 (no capture surface).

customer_metadata
Customer Metadata · object | null
missing_evidence_reasons
enum<string>[]

Why a downstream classification may need to lower confidence or skip.

Recorded on SessionAnalysisInput.missing_evidence_reasons by the assembler when expected traces are unavailable. Analyzer code consults this list to decide whether to attempt evidence-backed classifications.

Available options:
no_rag_trace,
no_kb_snapshot,
no_citations,
no_tool_trace,
no_csat,
no_user_feedback,
transcript_redaction_skipped,
legacy_session