# Candidate

## Retrieves all exams of the authenticated user.

> Retrieves all exams of the authenticated user, including their results.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Candidate/Exams":{"get":{"tags":["Candidate"],"summary":"Retrieves all exams of the authenticated user.","description":"Retrieves all exams of the authenticated user, including their results.","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"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},"result":{"type":"object","properties":{"totalScore":{"type":"number","format":"double"},"problemSolvingScore":{"type":"number","format":"double"},"writtenScore":{"type":"number","format":"double"},"mcqScore":{"type":"number","format":"double"},"startedAt":{"type":"string","format":"date-time","nullable":true},"submittedAt":{"type":"string","format":"date-time","nullable":true},"hasCheated":{"type":"boolean"},"isReviewed":{"type":"boolean"}},"additionalProperties":false}},"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}}}},"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":[]}]}
```

## Starts an exam for the authenticated user.

> Starts a specific exam for the authenticated user, providing exam details, questions, and prior submissions.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Candidate/Exam/Start/{examId}":{"post":{"tags":["Candidate"],"summary":"Starts an exam for the authenticated user.","description":"Starts a specific exam for the authenticated user, providing exam details, questions, and prior submissions.","parameters":[{"name":"examId","in":"path","description":"Identifier of the exam to start.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"startedAt":{"type":"string","format":"date-time"},"closesAt":{"type":"string","format":"date-time"},"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},"submits":{"type":"object","properties":{"problem":{"type":"array","items":{"type":"object","properties":{"questionId":{"type":"string","format":"uuid"},"problemSubmissionId":{"type":"string","format":"uuid"},"code":{"type":"string","nullable":true},"language":{"enum":["java","python","python2","c","cpp","nodejs","javascript","groovy","jshell","haskell","tcl","lua","ada","commonlisp","d","elixir","erlang","fsharp","fortran","assembly","scala","php","csharp","perl","ruby","go","r","racket","ocaml","vb","basic","bash","clojure","typescript","cobol","kotlin","pascal","prolog","rust","swift","objectivec","octave","text","brainfk","coffeescript","ejs","dart","deno","bun"],"type":"string"}},"additionalProperties":false},"nullable":true},"written":{"type":"array","items":{"type":"object","properties":{"questionId":{"type":"string","format":"uuid"},"writtenSubmissionId":{"type":"string","format":"uuid"},"answer":{"type":"string","nullable":true}},"additionalProperties":false},"nullable":true},"mcq":{"type":"array","items":{"type":"object","properties":{"questionId":{"type":"string","format":"uuid"},"mcqSubmissionId":{"type":"string","format":"uuid"},"answerOptions":{"type":"string","nullable":true}},"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}}}},"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 or updates a problem-solving submission for the authenticated user.

> Creates or updates a problem-solving submission and returns the results of test code execution.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Candidate/Submit/Problem/Save":{"put":{"tags":["Candidate"],"summary":"Creates or updates a problem-solving submission for the authenticated user.","description":"Creates or updates a problem-solving submission and returns the results of test code execution.","requestBody":{"description":"Details of the problem-solving submission to save or update.","content":{"application/json":{"schema":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"questionId":{"type":"string","format":"uuid"},"code":{"type":"string","nullable":true},"language":{"enum":["java","python","python2","c","cpp","nodejs","javascript","groovy","jshell","haskell","tcl","lua","ada","commonlisp","d","elixir","erlang","fsharp","fortran","assembly","scala","php","csharp","perl","ruby","go","r","racket","ocaml","vb","basic","bash","clojure","typescript","cobol","kotlin","pascal","prolog","rust","swift","objectivec","octave","text","brainfk","coffeescript","ejs","dart","deno","bun"],"type":"string"}},"additionalProperties":false}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"testCaseId":{"type":"string","format":"uuid"},"isAccepted":{"type":"boolean"},"receivedOutput":{"type":"string","nullable":true},"errorMessage":{"type":"string","nullable":true},"exception":{"type":"string","nullable":true},"executionTime":{"type":"integer","format":"int32","nullable":true}},"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},"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}}}},"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 or updates a written submission for the authenticated user.

> Creates or updates a written submission.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Candidate/Submit/Written/Save":{"put":{"tags":["Candidate"],"summary":"Creates or updates a written submission for the authenticated user.","description":"Creates or updates a written submission.","requestBody":{"description":"Details of the written submission to save or update.","content":{"application/json":{"schema":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"submissions":{"type":"array","items":{"type":"object","properties":{"questionId":{"type":"string","format":"uuid"},"candidateAnswer":{"type":"string","nullable":true}},"additionalProperties":false},"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},"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}}}},"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 or updates an MCQ submission for the authenticated user.

> Creates or updates a multiple-choice question (MCQ) submission.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Candidate/Submit/Mcq/Save":{"put":{"tags":["Candidate"],"summary":"Creates or updates an MCQ submission for the authenticated user.","description":"Creates or updates a multiple-choice question (MCQ) submission.","requestBody":{"description":"Details of the MCQ submission to save or update.","content":{"application/json":{"schema":{"type":"object","properties":{"examId":{"type":"string","format":"uuid"},"submissions":{"type":"array","items":{"type":"object","properties":{"questionId":{"type":"string","format":"uuid"},"candidateAnswerOptions":{"type":"string","nullable":true}},"additionalProperties":false},"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},"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}}}},"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":[]}]}
```

## Submits the completed exam for the authenticated user.

> Submits the completed exam for the authenticated user.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Candidate/Submit/Exam/{examId}":{"patch":{"tags":["Candidate"],"summary":"Submits the completed exam for the authenticated user.","description":"Submits the completed exam for the authenticated user.","parameters":[{"name":"examId","in":"path","description":"Identifier of the exam to submit.","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}}}},"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":[]}]}
```

## Executes and tests code for a given problem-solving question.

> Executes and tests code for a given problem-solving question.

OpenAPI:

```json
{"openapi":"3.0.4","info":{"title":"TrueTest - API Documentation","version":"v1"},"servers":[{"url":"/api"}],"paths":{"/Candidate/RunAnyCode":{"post":{"tags":["Candidate"],"summary":"Executes and tests code for a given problem-solving question.","description":"Executes and tests code for a given problem-solving question.","requestBody":{"description":"Code to execute along with the identifier of the question to test against.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","nullable":true},"input":{"type":"string","nullable":true},"languageId":{"enum":["java","python","python2","c","cpp","nodejs","javascript","groovy","jshell","haskell","tcl","lua","ada","commonlisp","d","elixir","erlang","fsharp","fortran","assembly","scala","php","csharp","perl","ruby","go","r","racket","ocaml","vb","basic","bash","clojure","typescript","cobol","kotlin","pascal","prolog","rust","swift","objectivec","octave","text","brainfk","coffeescript","ejs","dart","deno","bun"],"type":"string"}},"additionalProperties":false}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","nullable":true},"stdout":{"type":"string","nullable":true},"stdin":{"type":"string","nullable":true},"stderr":{"type":"string","nullable":true},"exception":{"type":"string","nullable":true},"executionTime":{"type":"integer","format":"int32","nullable":true}},"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}}}},"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":[]}]}
```
