---
title: "POST /api/hyperion/courses/{courseId}/checklist-analysis/sections/{section}"
method: POST
path: "/api/hyperion/courses/{courseId}/checklist-analysis/sections/{section}"
tags: ["hyperion-problem-statement"]
---

# POST /api/hyperion/courses/{courseId}/checklist-analysis/sections/{section}

`POST /api/hyperion/courses/{courseId}/checklist-analysis/sections/{section}`

## Path parameters

- `courseId` integer, required
- `section` 'COMPETENCIES' | 'DIFFICULTY' | 'QUALITY', required

## Request body

- ChecklistAnalysisRequest — Request to analyze a problem statement for quality, competencies, and difficulty
  - `problemStatementMarkdown` string, required — Problem statement in Markdown format
  - `declaredDifficulty` string — Declared difficulty of the exercise
  - `language` string — Programming language, e.g. JAVA, PYTHON
  - `exerciseId` integer — ID of the exercise

## Response `200`

OK

- ChecklistAnalysisResponse — Response containing the checklist analysis results
  - `inferredCompetencies` InferredCompetency[] — Top inferred competencies from the standardized catalog
    - `knowledgeAreaShortTitle` string
    - `competencyTitle` string
    - `competencyVersion` string
    - `catalogSourceId` integer
    - `taxonomyLevel` string
    - `confidence` number, double
    - `rank` integer
    - `evidence` string[]
    - `whyThisMatches` string
    - `isLikelyPrimary` boolean
    - `relatedTaskNames` string[]
    - `matchedCourseCompetencyId` integer
  - `bloomRadar` BloomRadar — Bloom's taxonomy radar distribution with normalized proportions (0.0–1.0, summing to 1.0)
    - `REMEMBER` number, double — Proportion of REMEMBER level (0.0–1.0)
    - `UNDERSTAND` number, double — Proportion of UNDERSTAND level (0.0–1.0)
    - `APPLY` number, double — Proportion of APPLY level (0.0–1.0)
    - `ANALYZE` number, double — Proportion of ANALYZE level (0.0–1.0)
    - `EVALUATE` number, double — Proportion of EVALUATE level (0.0–1.0)
    - `CREATE` number, double — Proportion of CREATE level (0.0–1.0)
  - `difficultyAssessment` DifficultyAssessment
    - `suggested` 'EASY' | 'MEDIUM' | 'HARD' | 'UNKNOWN'
    - `confidence` number, double
    - `reasoning` string
    - `matchesDeclared` boolean
    - `delta` 'LOWER' | 'MATCH' | 'HIGHER' | 'UNKNOWN'
    - `taskCount` integer
    - `testCount` integer
  - `qualityIssues` QualityIssue[] — List of quality issues found in the problem statement
    - `category` 'CLARITY' | 'COHERENCE' | 'COMPLETENESS' — Issue category: CLARITY, COHERENCE, or COMPLETENESS
    - `severity` 'LOW' | 'MEDIUM' | 'HIGH' — Issue severity: LOW, MEDIUM, or HIGH
    - `description` string — Description of what is wrong
    - `location` QualityIssueLocation — Location of a quality issue within the problem statement
      - `startLine` integer — Starting line number (1-indexed)
      - `endLine` integer — Ending line number (1-indexed, inclusive)
    - `suggestedFix` string — Concrete suggestion to fix the issue
    - `impactOnLearners` string — How this issue increases extraneous cognitive load

## Changes

> 37 revisions in range; 2 could not be searched.

- **2026-05-02** `039041cdc17b` — 1 breaking
  - the `problemStatementMarkdown` request property's minLength was increased from `0` to `1`
- **2026-04-04** `d4a3aebe33fc` — 1 breaking
  - added the pattern `EASY|MEDIUM|HARD` to the request property `declaredDifficulty`
- **2026-03-13** `bf50c0d4974d` — 5 info
  - added the new optional request property `declaredDifficulty`
  - added the new enum value `COMPETENCIES` to the `path` request parameter `section`
  - added the new enum value `DIFFICULTY` to the `path` request parameter `section`
  - added the optional property `difficultyAssessment` to the response with the `200` status
  - …1 more
- **2026-03-10** `114a641568a1` — 1 info
  - endpoint added
- **2025-06-29** `afd4091eb170` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/ls1intum/apis/artemis-application-server-api/changes/api/hyperion/courses/:courseId/checklist-analysis/sections/:section/post.md)

---

[API](https://skmtc.dev/ls1intum/apis/artemis-application-server-api.md) · [All operations](https://skmtc.dev/ls1intum/apis/artemis-application-server-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/ls1intum/artemis-application-server-api/revisions/cecac5f6c8e5/schema)
