# Exam

## Retrieves a list of all exams.

> Retrieves a list of all exams.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Exam":{"get":{"tags":["Exam"],"summary":"Retrieves a list of all exams.","description":"Retrieves a list of all exams.","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"title":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"totalPoints":{"type":"number","format":"double"},"problemSolvingPoints":{"type":"number","format":"double"},"writtenPoints":{"type":"number","format":"double"},"mcqPoints":{"type":"number","format":"double"},"durationMinutes":{"type":"integer","format":"int32"},"isPublished":{"type":"boolean"},"status":{"type":"string","nullable":true},"opensAt":{"type":"string","format":"date-time"},"closesAt":{"type":"string","format":"date-time"}},"additionalProperties":false}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true},"exception":{"type":"object","properties":{"details":{"type":"string","nullable":true},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"path":{"type":"string","nullable":true},"endpoint":{"type":"string","nullable":true},"routeValues":{"type":"object","additionalProperties":{"type":"string"},"nullable":true}},"additionalProperties":false}},"additionalProperties":false}}}}}}}},"components":{"securitySchemes":{"Bearer":{"type":"http","description":"🗝️ Admin Account\n\neyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJBY2NvdW50SWQiOiIxMTExMTExMS0xMTExLTExMTEtMTExMS0xMTExMTExMTExMTEiLCJVc2VybmFtZSI6ImFkbWluIiwiRW1haWwiOiJhZG1pbkB0cnVldGVzdC50ZWNoIiwiaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjpbIkNhbmRpZGF0ZSIsIkFkbWluIl0sIlBlcm1pc3Npb24iOlsiQWNjZXNzT3duRXhhbXMiLCJTdWJtaXRBbnN3ZXJzIiwiUnVuQ29kZSIsIk1hbmFnZU93blByb2ZpbGUiLCJNYW5hZ2VBY2NvdW50cyIsIlZpZXdFeGFtcyIsIk1hbmFnZUV4YW1zIiwiTWFuYWdlUXVlc3Rpb25zIiwiVmlld1N1Ym1pc3Npb25zIiwiUmV2aWV3U3VibWlzc2lvbiJdLCJleHAiOjQ4OTkwMzMxOTUsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3QiLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0In0.VBPngQIwsybHrwZPYMA5sNpWew3S9_W7cDdpAD4mDyM","scheme":"bearer","bearerFormat":"JWT"}}},"security":[{"Bearer":[]}]}
```

## Retrieves a specific exam along with all its associated questions.

> Retrieves a specific exam along with all its associated questions.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Exam/{examId}":{"get":{"tags":["Exam"],"summary":"Retrieves a specific exam along with all its associated questions.","description":"Retrieves a specific exam along with all its associated questions.","parameters":[{"name":"examId","in":"path","description":"The unique identifier of the exam to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"exam":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"title":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"totalPoints":{"type":"number","format":"double"},"problemSolvingPoints":{"type":"number","format":"double"},"writtenPoints":{"type":"number","format":"double"},"mcqPoints":{"type":"number","format":"double"},"durationMinutes":{"type":"integer","format":"int32"},"isPublished":{"type":"boolean"},"status":{"type":"string","nullable":true},"opensAt":{"type":"string","format":"date-time"},"closesAt":{"type":"string","format":"date-time"}},"additionalProperties":false},"questions":{"type":"object","properties":{"problem":{"type":"array","items":{"type":"object","properties":{"questionId":{"type":"string","format":"uuid"},"examId":{"type":"string","format":"uuid"},"questionType":{"enum":["ProblemSolving","Written","MCQ"],"type":"string"},"statementMarkdown":{"type":"string","nullable":true},"points":{"type":"number","format":"double"},"difficultyType":{"enum":["Easy","Medium","Hard"],"type":"string"},"testCases":{"type":"array","items":{"type":"object","properties":{"testCaseId":{"type":"string","format":"uuid"},"input":{"type":"string","nullable":true},"output":{"type":"string","nullable":true}},"additionalProperties":false},"nullable":true}},"additionalProperties":false},"nullable":true},"written":{"type":"array","items":{"type":"object","properties":{"questionId":{"type":"string","format":"uuid"},"examId":{"type":"string","format":"uuid"},"questionType":{"enum":["ProblemSolving","Written","MCQ"],"type":"string"},"hasLongAnswer":{"type":"boolean"},"statementMarkdown":{"type":"string","nullable":true},"score":{"type":"number","format":"double"},"difficultyType":{"enum":["Easy","Medium","Hard"],"type":"string"}},"additionalProperties":false},"nullable":true},"mcq":{"type":"array","items":{"type":"object","properties":{"questionId":{"type":"string","format":"uuid"},"examId":{"type":"string","format":"uuid"},"questionType":{"enum":["ProblemSolving","Written","MCQ"],"type":"string"},"statementMarkdown":{"type":"string","nullable":true},"score":{"type":"number","format":"double"},"difficultyType":{"enum":["Easy","Medium","Hard"],"type":"string"},"mcqOption":{"type":"object","properties":{"option1":{"type":"string","nullable":true},"option2":{"type":"string","nullable":true},"option3":{"type":"string","nullable":true},"option4":{"type":"string","nullable":true},"isMultiSelect":{"type":"boolean"},"answerOptions":{"type":"string","nullable":true}},"additionalProperties":false}},"additionalProperties":false},"nullable":true}},"additionalProperties":false}},"additionalProperties":false}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true},"exception":{"type":"object","properties":{"details":{"type":"string","nullable":true},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"path":{"type":"string","nullable":true},"endpoint":{"type":"string","nullable":true},"routeValues":{"type":"object","additionalProperties":{"type":"string"},"nullable":true}},"additionalProperties":false}},"additionalProperties":false}}}}}}}},"components":{"securitySchemes":{"Bearer":{"type":"http","description":"🗝️ Admin Account\n\neyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJBY2NvdW50SWQiOiIxMTExMTExMS0xMTExLTExMTEtMTExMS0xMTExMTExMTExMTEiLCJVc2VybmFtZSI6ImFkbWluIiwiRW1haWwiOiJhZG1pbkB0cnVldGVzdC50ZWNoIiwiaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjpbIkNhbmRpZGF0ZSIsIkFkbWluIl0sIlBlcm1pc3Npb24iOlsiQWNjZXNzT3duRXhhbXMiLCJTdWJtaXRBbnN3ZXJzIiwiUnVuQ29kZSIsIk1hbmFnZU93blByb2ZpbGUiLCJNYW5hZ2VBY2NvdW50cyIsIlZpZXdFeGFtcyIsIk1hbmFnZUV4YW1zIiwiTWFuYWdlUXVlc3Rpb25zIiwiVmlld1N1Ym1pc3Npb25zIiwiUmV2aWV3U3VibWlzc2lvbiJdLCJleHAiOjQ4OTkwMzMxOTUsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3QiLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0In0.VBPngQIwsybHrwZPYMA5sNpWew3S9_W7cDdpAD4mDyM","scheme":"bearer","bearerFormat":"JWT"}}},"security":[{"Bearer":[]}]}
```

## Creates a new exam based on the provided details.

> Creates a new exam based on the provided details.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Exam/Create":{"post":{"tags":["Exam"],"summary":"Creates a new exam based on the provided details.","description":"Creates a new exam based on the provided details.","requestBody":{"description":"The details of the exam to be created.","content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"durationMinutes":{"type":"integer","format":"int32"},"totalPoints":{"type":"number","format":"double"},"opensAt":{"type":"string","format":"date-time"},"closesAt":{"type":"string","format":"date-time"}},"additionalProperties":false}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"title":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"totalPoints":{"type":"number","format":"double"},"problemSolvingPoints":{"type":"number","format":"double"},"writtenPoints":{"type":"number","format":"double"},"mcqPoints":{"type":"number","format":"double"},"durationMinutes":{"type":"integer","format":"int32"},"isPublished":{"type":"boolean"},"status":{"type":"string","nullable":true},"opensAt":{"type":"string","format":"date-time"},"closesAt":{"type":"string","format":"date-time"}},"additionalProperties":false}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true},"exception":{"type":"object","properties":{"details":{"type":"string","nullable":true},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"path":{"type":"string","nullable":true},"endpoint":{"type":"string","nullable":true},"routeValues":{"type":"object","additionalProperties":{"type":"string"},"nullable":true}},"additionalProperties":false}},"additionalProperties":false}}}}}}}},"components":{"securitySchemes":{"Bearer":{"type":"http","description":"🗝️ Admin Account\n\neyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJBY2NvdW50SWQiOiIxMTExMTExMS0xMTExLTExMTEtMTExMS0xMTExMTExMTExMTEiLCJVc2VybmFtZSI6ImFkbWluIiwiRW1haWwiOiJhZG1pbkB0cnVldGVzdC50ZWNoIiwiaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjpbIkNhbmRpZGF0ZSIsIkFkbWluIl0sIlBlcm1pc3Npb24iOlsiQWNjZXNzT3duRXhhbXMiLCJTdWJtaXRBbnN3ZXJzIiwiUnVuQ29kZSIsIk1hbmFnZU93blByb2ZpbGUiLCJNYW5hZ2VBY2NvdW50cyIsIlZpZXdFeGFtcyIsIk1hbmFnZUV4YW1zIiwiTWFuYWdlUXVlc3Rpb25zIiwiVmlld1N1Ym1pc3Npb25zIiwiUmV2aWV3U3VibWlzc2lvbiJdLCJleHAiOjQ4OTkwMzMxOTUsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3QiLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0In0.VBPngQIwsybHrwZPYMA5sNpWew3S9_W7cDdpAD4mDyM","scheme":"bearer","bearerFormat":"JWT"}}},"security":[{"Bearer":[]}]}
```

## Updates the details of an existing exam.

> Updates the details of an existing exam.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Exam/Update":{"patch":{"tags":["Exam"],"summary":"Updates the details of an existing exam.","description":"Updates the details of an existing exam.","requestBody":{"description":"The unique identifier of the exam to update and the new details.","content":{"application/json":{"schema":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"title":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"durationMinutes":{"type":"integer","format":"int32","nullable":true},"totalPoints":{"type":"number","format":"double","nullable":true},"opensAt":{"type":"string","format":"date-time","nullable":true},"closesAt":{"type":"string","format":"date-time","nullable":true}},"additionalProperties":false}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"title":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"totalPoints":{"type":"number","format":"double"},"problemSolvingPoints":{"type":"number","format":"double"},"writtenPoints":{"type":"number","format":"double"},"mcqPoints":{"type":"number","format":"double"},"durationMinutes":{"type":"integer","format":"int32"},"isPublished":{"type":"boolean"},"status":{"type":"string","nullable":true},"opensAt":{"type":"string","format":"date-time"},"closesAt":{"type":"string","format":"date-time"}},"additionalProperties":false}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true},"exception":{"type":"object","properties":{"details":{"type":"string","nullable":true},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"path":{"type":"string","nullable":true},"endpoint":{"type":"string","nullable":true},"routeValues":{"type":"object","additionalProperties":{"type":"string"},"nullable":true}},"additionalProperties":false}},"additionalProperties":false}}}}}}}},"components":{"securitySchemes":{"Bearer":{"type":"http","description":"🗝️ Admin Account\n\neyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJBY2NvdW50SWQiOiIxMTExMTExMS0xMTExLTExMTEtMTExMS0xMTExMTExMTExMTEiLCJVc2VybmFtZSI6ImFkbWluIiwiRW1haWwiOiJhZG1pbkB0cnVldGVzdC50ZWNoIiwiaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjpbIkNhbmRpZGF0ZSIsIkFkbWluIl0sIlBlcm1pc3Npb24iOlsiQWNjZXNzT3duRXhhbXMiLCJTdWJtaXRBbnN3ZXJzIiwiUnVuQ29kZSIsIk1hbmFnZU93blByb2ZpbGUiLCJNYW5hZ2VBY2NvdW50cyIsIlZpZXdFeGFtcyIsIk1hbmFnZUV4YW1zIiwiTWFuYWdlUXVlc3Rpb25zIiwiVmlld1N1Ym1pc3Npb25zIiwiUmV2aWV3U3VibWlzc2lvbiJdLCJleHAiOjQ4OTkwMzMxOTUsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3QiLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0In0.VBPngQIwsybHrwZPYMA5sNpWew3S9_W7cDdpAD4mDyM","scheme":"bearer","bearerFormat":"JWT"}}},"security":[{"Bearer":[]}]}
```

## Publishes an exam, making it available to candidates.

> Publishes an exam, making it available to candidates.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Exam/Publish":{"post":{"tags":["Exam"],"summary":"Publishes an exam, making it available to candidates.","description":"Publishes an exam, making it available to candidates.","parameters":[{"name":"examId","in":"query","description":"The unique identifier of the exam to publish.","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true},"exception":{"type":"object","properties":{"details":{"type":"string","nullable":true},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"path":{"type":"string","nullable":true},"endpoint":{"type":"string","nullable":true},"routeValues":{"type":"object","additionalProperties":{"type":"string"},"nullable":true}},"additionalProperties":false}},"additionalProperties":false}}}}}}}},"components":{"securitySchemes":{"Bearer":{"type":"http","description":"🗝️ Admin Account\n\neyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJBY2NvdW50SWQiOiIxMTExMTExMS0xMTExLTExMTEtMTExMS0xMTExMTExMTExMTEiLCJVc2VybmFtZSI6ImFkbWluIiwiRW1haWwiOiJhZG1pbkB0cnVldGVzdC50ZWNoIiwiaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjpbIkNhbmRpZGF0ZSIsIkFkbWluIl0sIlBlcm1pc3Npb24iOlsiQWNjZXNzT3duRXhhbXMiLCJTdWJtaXRBbnN3ZXJzIiwiUnVuQ29kZSIsIk1hbmFnZU93blByb2ZpbGUiLCJNYW5hZ2VBY2NvdW50cyIsIlZpZXdFeGFtcyIsIk1hbmFnZUV4YW1zIiwiTWFuYWdlUXVlc3Rpb25zIiwiVmlld1N1Ym1pc3Npb25zIiwiUmV2aWV3U3VibWlzc2lvbiJdLCJleHAiOjQ4OTkwMzMxOTUsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3QiLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0In0.VBPngQIwsybHrwZPYMA5sNpWew3S9_W7cDdpAD4mDyM","scheme":"bearer","bearerFormat":"JWT"}}},"security":[{"Bearer":[]}]}
```

## Invites a list of candidates to participate in a specific exam.

> Invites a list of candidates to participate in a specific exam.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Exam/Invite/Candidates":{"post":{"tags":["Exam"],"summary":"Invites a list of candidates to participate in a specific exam.","description":"Invites a list of candidates to participate in a specific exam.","requestBody":{"description":"The unique identifier of the exam and a list of candidate email addresses to invite.","content":{"application/json":{"schema":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"emails":{"type":"array","items":{"type":"string"},"nullable":true}},"additionalProperties":false}}}},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true},"exception":{"type":"object","properties":{"details":{"type":"string","nullable":true},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"path":{"type":"string","nullable":true},"endpoint":{"type":"string","nullable":true},"routeValues":{"type":"object","additionalProperties":{"type":"string"},"nullable":true}},"additionalProperties":false}},"additionalProperties":false}}}}}}}},"components":{"securitySchemes":{"Bearer":{"type":"http","description":"🗝️ Admin Account\n\neyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJBY2NvdW50SWQiOiIxMTExMTExMS0xMTExLTExMTEtMTExMS0xMTExMTExMTExMTEiLCJVc2VybmFtZSI6ImFkbWluIiwiRW1haWwiOiJhZG1pbkB0cnVldGVzdC50ZWNoIiwiaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjpbIkNhbmRpZGF0ZSIsIkFkbWluIl0sIlBlcm1pc3Npb24iOlsiQWNjZXNzT3duRXhhbXMiLCJTdWJtaXRBbnN3ZXJzIiwiUnVuQ29kZSIsIk1hbmFnZU93blByb2ZpbGUiLCJNYW5hZ2VBY2NvdW50cyIsIlZpZXdFeGFtcyIsIk1hbmFnZUV4YW1zIiwiTWFuYWdlUXVlc3Rpb25zIiwiVmlld1N1Ym1pc3Npb25zIiwiUmV2aWV3U3VibWlzc2lvbiJdLCJleHAiOjQ4OTkwMzMxOTUsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3QiLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0In0.VBPngQIwsybHrwZPYMA5sNpWew3S9_W7cDdpAD4mDyM","scheme":"bearer","bearerFormat":"JWT"}}},"security":[{"Bearer":[]}]}
```

## Deletes a specific exam.

> Deletes a specific exam.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Exam/Delete/{examId}":{"delete":{"tags":["Exam"],"summary":"Deletes a specific exam.","description":"Deletes a specific exam.","parameters":[{"name":"examId","in":"path","description":"The unique identifier of the exam to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":false}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32"},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true},"exception":{"type":"object","properties":{"details":{"type":"string","nullable":true},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"nullable":true},"path":{"type":"string","nullable":true},"endpoint":{"type":"string","nullable":true},"routeValues":{"type":"object","additionalProperties":{"type":"string"},"nullable":true}},"additionalProperties":false}},"additionalProperties":false}}}}}}}},"components":{"securitySchemes":{"Bearer":{"type":"http","description":"🗝️ Admin Account\n\neyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJBY2NvdW50SWQiOiIxMTExMTExMS0xMTExLTExMTEtMTExMS0xMTExMTExMTExMTEiLCJVc2VybmFtZSI6ImFkbWluIiwiRW1haWwiOiJhZG1pbkB0cnVldGVzdC50ZWNoIiwiaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjpbIkNhbmRpZGF0ZSIsIkFkbWluIl0sIlBlcm1pc3Npb24iOlsiQWNjZXNzT3duRXhhbXMiLCJTdWJtaXRBbnN3ZXJzIiwiUnVuQ29kZSIsIk1hbmFnZU93blByb2ZpbGUiLCJNYW5hZ2VBY2NvdW50cyIsIlZpZXdFeGFtcyIsIk1hbmFnZUV4YW1zIiwiTWFuYWdlUXVlc3Rpb25zIiwiVmlld1N1Ym1pc3Npb25zIiwiUmV2aWV3U3VibWlzc2lvbiJdLCJleHAiOjQ4OTkwMzMxOTUsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3QiLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0In0.VBPngQIwsybHrwZPYMA5sNpWew3S9_W7cDdpAD4mDyM","scheme":"bearer","bearerFormat":"JWT"}}},"security":[{"Bearer":[]}]}
```
