---
title: "✨ Get quiz attempt history for a learner"
method: GET
path: "/api/learning-resources/{id}/user-progress/{user_id}/quiz-attempts/"
tags: ["Learning Resources"]
---

# ✨ Get quiz attempt history for a learner

`GET /api/learning-resources/{id}/user-progress/{user_id}/quiz-attempts/`

## Request

- Base URL: `http://localhost:8000`
- URL: `http://localhost:8000/api/learning-resources/{id}/user-progress/{user_id}/quiz-attempts/`
- Auth: API key in header `Authorization`

<Card href="https://humansignal.com/goenterprise">
        <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
        <p style="margin-top: 10px; font-size: 14px;">
            This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
        </p>
    </Card>
View every quiz submission by one learner on this course, including answers and correct-answer keys. Restricted to roles with learning.manage permission.

## Path parameters

- `id` integer, required
- `user_id` string, required

## Response `200`

- QuizAttemptHistory
  - `quizzes` QuizAttemptHistoryQuiz[], required
    - `attempts` QuizAttempt[], required
      - `attempt_number` integer, required
      - `passed` boolean, required
      - `questions` QuizAttemptQuestion[], required
        - `answer` unknown, required
        - `blocksJson` string, nullable
        - `choices` object[]
        - `correct` boolean, required
        - `correctAnswerIds` unknown, required
        - `id` string, required
        - `pairs` object[]
        - `type` string, nullable, required
      - `retake_cycle` integer, required
      - `score_percent` integer, required
      - `submitted_at` string, date-time, required
    - `legacy_result` QuizLegacyResult, required: Last result for attempts made before attempt recording existed: no answers, correct/incorrect only.
      - `attempts` integer, required
      - `last_attempt` string, nullable, required
      - `passed` boolean, nullable, required
      - `question_results` object, required
      - `score_percent` integer, required
    - `page_title` string, required
    - `quiz_id` string, required
    - `removed` boolean, required
    - `title` string, required
    - `unrecorded_attempts` integer, required
  - `user_id` integer, required

## Changes

> 146 revisions in range; 1 not diffed.

- **2026-10-28** `ffcfb2080e74`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/humansignal/apis/label-studio-api/changes/api/learning-resources/:id/user-progress/:user_id/quiz-attempts/get.md)

---

[API](https://skmtc.dev/humansignal/apis/label-studio-api.md) - [All operations](https://skmtc.dev/humansignal/apis/label-studio-api/llms.txt) - [OpenAPI document](https://skmtc.dev/humansignal/apis/label-studio-api/revisions/679d1a452b81?raw)
