> ## Documentation Index
> Fetch the complete documentation index at: https://docs.myustadia.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Quiz Review Read

> GET /courses/{id}/quiz/review

Reviewer read of every LIVE quiz question for this course, WITH correct
answers -- this is the reviewer surface (A3), distinct from the
learner-facing quiz serve in b2b/routes/quiz.py, which auto-selects one
tier and strips answers before serving. ALL tiers are returned here.

Identity: each question's "id" is f"m{module_index}_p{position}", the same
(module_index, position) pair the review-queue enumerates its
quiz_question artifacts by (scene_index there == position here; see
_build_review_queue's quiz_question block).



## OpenAPI

````yaml /openapi.yaml get /api/v1/courses/{course_id}/quiz/review
openapi: 3.1.0
info:
  title: Mahara Platform
  description: >
    AI Sales Training Course Generator, a Coursera-style platform.


    ## Authentication


    Every request must carry your API key as a Bearer token:


    `Authorization: Bearer sk_live_your_key_here`


    ## Getting an API key


    API keys are provisioned by our team. They are not self-service, so there is
    no signup page to apply on. To request access, email **sales@myustadia.com**
    and we will issue a key for your account.
  version: 1.0.0
servers: []
security: []
paths:
  /api/v1/courses/{course_id}/quiz/review:
    get:
      tags:
        - B2B Courses v2
      summary: Quiz Review Read
      description: >-
        GET /courses/{id}/quiz/review


        Reviewer read of every LIVE quiz question for this course, WITH correct

        answers -- this is the reviewer surface (A3), distinct from the

        learner-facing quiz serve in b2b/routes/quiz.py, which auto-selects one

        tier and strips answers before serving. ALL tiers are returned here.


        Identity: each question's "id" is f"m{module_index}_p{position}", the
        same

        (module_index, position) pair the review-queue enumerates its

        quiz_question artifacts by (scene_index there == position here; see

        _build_review_queue's quiz_question block).
      operationId: quiz_review_read_api_v1_courses__course_id__quiz_review_get
      parameters:
        - name: course_id
          in: path
          required: true
          schema:
            type: string
            title: Course Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuizReviewResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    QuizReviewResponse:
      properties:
        course_id:
          type: string
          title: Course Id
        questions:
          items:
            $ref: '#/components/schemas/QuizReviewQuestion'
          type: array
          title: Questions
          description: >-
            Every live quiz question across ALL tiers and modules (module_index
            0 = final exam)
      type: object
      required:
        - course_id
      title: QuizReviewResponse
      description: Response for GET /api/v1/courses/{id}/quiz/review
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    QuizReviewQuestion:
      properties:
        id:
          type: string
          title: Id
          description: >-
            m{module_index}_p{position}; matches the review-queue's
            quiz_question artifact identity (module_index, scene_index=position)
        module_index:
          type: integer
          title: Module Index
          description: Module number; 0 = final exam
        position:
          type: integer
          title: Position
          description: >-
            Position inside the module; tier-offset buckets (associate 0+,
            professional 1000+, expert 2000+)
        tier:
          anyOf:
            - type: string
            - type: 'null'
          title: Tier
          description: associate | professional | expert
        type:
          anyOf:
            - type: string
            - type: 'null'
          title: Type
          description: >-
            Question type, e.g. mcq_single, mcq_multi, true_false,
            multiple_choice
        prompt:
          anyOf:
            - type: string
            - type: 'null'
          title: Prompt
          description: The question text
        options:
          items:
            $ref: '#/components/schemas/QuizReviewOption'
          type: array
          title: Options
          description: Answer options (empty for non-MCQ types)
        correct_value:
          title: Correct Value
          description: >-
            The correct answer: a string, or a list of strings for
            multi-response types. Reviewer surface only; the learner-facing quiz
            serve strips answers.
        explanation:
          anyOf:
            - type: string
            - type: 'null'
          title: Explanation
          description: Explanation shown after answering
      type: object
      required:
        - id
        - module_index
        - position
      title: QuizReviewQuestion
      description: One live quiz question on the reviewer surface (answers INCLUDED).
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    QuizReviewOption:
      properties:
        value:
          type: string
          title: Value
          description: Option value (the option text)
        label:
          type: string
          title: Label
          description: Display label (same text as value)
      type: object
      required:
        - value
        - label
      title: QuizReviewOption
      description: >-
        One answer option in the reviewer-facing quiz read (value == label ==

        the option text; correctness is exposed at question level via
        correct_value,

        not per option).

````