---
title: "Get call analysis"
method: GET
path: "/call-analysis/session/{session_id}"
tags: ["Call Analysis"]
---

# Get call analysis

`GET /call-analysis/session/{session_id}`

## Request

- Base URL: `https://caspr-copilot-prod.usepeppr.ai/api`
- URL: `https://caspr-copilot-prod.usepeppr.ai/api/call-analysis/session/{session_id}`
- Auth: HTTP bearer

Returns the complete post-call analysis for a session — every customer question detected, how the rep responded, classification (correct, incorrect, knowledge_gap, deferred, unguarded), and coaching feedback. Returns `null` if analysis hasn't been generated yet.

## Path parameters

- `session_id` string, uuid, required

## Response `200`

Full call analysis with events, or null

- CallAnalysis
  - `id` string, uuid, required
  - `session_id` string, uuid, required
  - `total_events` integer, required
  - `correct_count` integer, required
  - `incorrect_count` integer, required
  - `knowledge_gap_count` integer, required
  - `deferred_count` integer, required
  - `unguarded_count` integer, required
  - `surfaced_events` integer, required
  - `not_surfaced_events` integer, required
  - `analyzed_at` string, date-time, nullable
  - `events` CallAnalysisEvent[], required
    - `id` string, uuid, required
    - `call_analysis_id` string, uuid, required
    - `start_timestamp_ms` number, required
    - `end_timestamp_ms` number, required
    - `spoken_text` string, required
    - `rewritten_question` string, required
    - `rag_queries` string[], nullable
    - `reason` string, nullable
    - `knowledge_category` 'product_technical' | 'business_sales', nullable
    - `response` string, nullable
    - `knowledge_exists` boolean, required
    - `knowledge_confidence` number, nullable
    - `knowledge_sources` Citation[], nullable
      - `id` string
      - `title` string
      - `sourceUrl` string, nullable
      - `snippet` string
      - `confidence` number
      - `pageNumber` integer, nullable
    - `classification` 'correct' | 'incorrect' | 'knowledge_gap' | 'deferred' | 'unguarded', required: - `correct` — response aligns with knowledge base - `incorrect` — response contradicts knowledge base - `knowledge_gap` — no relevant content in KB - `deferred` — rep deferred or didn't respond - `unguarded` — rep answered without KB backing
    - `comments` string, nullable: AI-generated coaching feedback
    - `was_surfaced` boolean, required: Whether Caspr showed this question to the rep live
    - `thread_id` string, uuid, nullable
    - `answer_source` 'qa_cards' | 'knowledge_base', nullable
    - `surfaced_answer` string, nullable
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `401`: Missing or invalid API key

---

[API](https://skmtc.dev/usepeppr/apis/caspr-api.md) - [All operations](https://skmtc.dev/usepeppr/apis/caspr-api/llms.txt) - [OpenAPI document](https://skmtc.dev/usepeppr/apis/caspr-api/revisions/0e6a698762a4?raw)
