diff --git a/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java b/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java
index 2bdfb150485741c2dac49f4d107485993362ff6d..1553817e7bcacf162c05dfc85353813637630183 100644
--- a/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java
+++ b/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java
@@ -7,6 +7,7 @@ import io.swagger.v3.oas.annotations.responses.ApiResponse;
 import io.swagger.v3.oas.annotations.responses.ApiResponses;
 import jakarta.persistence.EntityNotFoundException;
 import org.fuseri.model.dto.common.Result;
+import org.fuseri.model.dto.course.CourseDto;
 import org.fuseri.model.dto.user.UserAddLanguageDto;
 import org.fuseri.model.dto.user.UserCreateDto;
 import org.fuseri.model.dto.user.UserDto;
@@ -102,30 +103,38 @@ public class UserController {
         return ResponseEntity.ok(facade.findAll(page));
     }
 
-    //TODO: add authentication
+    //TODO: add authentication M3?
     @PostMapping("/login")
     public ResponseEntity<String> login(@RequestBody UserLoginDto dto) {
         return ResponseEntity.ok(String.format("User %s has spawned", dto.getUsername()));
     }
 
-    //TODO: add authentication
+    //TODO: add authentication M3?
     @PostMapping("/logout/{id}")
     public ResponseEntity<String > logout(@PathVariable Long id) {
         return ResponseEntity.ok("user has logged out");
     }
 
 
-    // TODO do according to Course
+
+    @Operation(summary = "get finished courses", description = "retrieves finished courses of user with given Id")
+    @ApiResponses(value = {
+            @ApiResponse(responseCode = "200", description = "Successfully retrieved finished courses"),
+            @ApiResponse(responseCode = "400", description = "Invalid input")
+    })
     @GetMapping("/finished/{id}")
-    public List<Course> getFinished(@PathVariable Long id) {
-        return new ArrayList<>();
+    public ResponseEntity<List<CourseDto>> getFinished(@PathVariable Long id) {
+        return ResponseEntity.ok(facade.getFinished(id));
     }
 
-    // TODO do according to Course
-
+    @Operation(summary = "get enrolled courses", description = "retrieves currently enrolled courses of user with given Id")
+    @ApiResponses(value = {
+            @ApiResponse(responseCode = "200", description = "Successfully retrieved enrolled courses"),
+            @ApiResponse(responseCode = "400", description = "Invalid input")
+    })
     @GetMapping("/enrolled/{id}")
-    public List<Course> getEnrolled(@PathVariable Long id) {
-        return new ArrayList<>();
+    public ResponseEntity<List<CourseDto>> getEnrolled(@PathVariable Long id) {
+        return ResponseEntity.ok(facade.getEnrolled(id));
     }
 
     @Operation(summary = "adds a language", description = "adds a new language and proficiency to user")
@@ -142,5 +151,4 @@ public class UserController {
             return ResponseEntity.notFound().build();
         }
     }
-
 }