---
title: "Get Student Error Analysis"
method: GET
path: "/student/error-analysis"
tags: ["error_analysis"]
---

# Get Student Error Analysis

`GET /student/error-analysis`

Analyze the authenticated student's own recent first-submission errors.

May generate (and persist) v2 evaluations on the fly for first submissions
that don't have one yet, so the first call after a stretch of activity can
take longer; subsequent calls reuse the persisted evaluations.

## Response `200`

Successful Response

- StudentErrorAnalysisResponse — The synthesized recurring mistakes plus coverage metadata so the UI can show what the analysis was based on. `insights` is ordered by revision priority — `insights[0]` is the single best use of the student's time — so the UI can feature the first and show the rest in order. Empty when no errors were found across the scanned first submissions.
  - `insights` ErrorInsightResponse[], required
    - `title` string, required
    - `description` string, required
    - `advice` string, required
    - `occurrences` integer, required
  - `sessions_analyzed` integer, required
  - `exercises_analyzed` integer, required
  - `errors_considered` integer, required
  - `generated_at` string, date-time, required

## Other responses

- `400` — Malformed identifier
- `404` — Resource not found
- `502` — Upstream LLM returned unusable output

---

[API](https://skmtc.dev/excellence-ai/apis/excellence-learning.md) · [All operations](https://skmtc.dev/excellence-ai/apis/excellence-learning/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/excellence-ai/excellence-learning/revisions/c407f3b5a05b/schema)
