Index: iknow-api/Controllers/UserController.cs
===================================================================
--- iknow-api/Controllers/UserController.cs	(revision 2d64b2e1e96d2ca623370d7fe5be29a09fe3f360)
+++ iknow-api/Controllers/UserController.cs	(revision 33c69d6e6096b3f8bcc1428ef0cedb8ded41b5c2)
@@ -29,6 +29,112 @@
             }
             return null;
-            
+
         }
+        //"semesters": [
+        //    {
+        //      "id": 1,
+        //      "semester": "Зимски(2025/2026)",
+        //      "direction": "PIT23(2023)",
+        //      "quota": "Не плаќа-Редовен(2023)",
+        //      "note": "",
+        //      "studentCom": "Ги имам си...",
+        //      "sum": "0,30",
+        //      "paid": "0,00",
+        //      "ukim": "",
+        //      "createdOn": "22.09.2025",
+        //      "dateChanged": "22.09.2025",
+        //      "credits": "0,01",
+        //      "type": "Ред.",
+        //      "doc": "Не",
+        //      "doc1": "Не",
+        //      "verified": "Не",
+        //      "taxes": "0,00",
+        //      "signatures": "0/5",
+        //      "status": "валиден",
+        //      "completed": "Не"
+        //    },
+        //    ]
+        //}
+        [Authorize]
+        [HttpGet("getSemesters")]
+        public async Task<IActionResult> getSemesters()
+        {
+            var authHeader = Request.Headers["Authorization"].ToString();
+            if (authHeader.StartsWith("Bearer "))
+            {
+                var token = authHeader.Substring("Bearer ".Length).Trim();
+                // token = your JWT
+                var userData = await _userService.GetUserSemesters(token);
+                var results = new List<object>();
+                
+                for(int i=0; i<userData.Count; i++)
+                {
+                    var newResult = new
+                    {
+                        id = userData[i].Id,
+                        semester = (userData[i].Type == 0 ? "Зимски" : "Летен") + $"({userData[i].Year}/{userData[i].Year + 1})",
+                        direction = userData[i].Major?.Name ?? "",
+                        quota = userData[i].QuotaType.ToString(),
+                        note = "",
+                        studentCom = "",
+                        sum = "0,00",
+                        paid = "0,00",
+                        ukim = "",
+                        createdOn = DateTime.Now.ToString("dd.MM.yyyy"),
+                        dateChanged = DateTime.Now.ToString("dd.MM.yyyy"),
+                        credits = "0,00",
+                        type = "Ред.",
+                        doc = "Не",
+                        doc1 = "Не",
+                        verified = "Не",
+                        taxes = "0,00",
+                        signatures = "0/5",
+                        status = "валиден",
+                        completed = "Не"
+                    };
+                    results.Add(newResult);
+                }
+                if (userData == null) return Ok(new { info = "can't get info" });
+                return Ok(new { semesters = results });
+            }
+            return null;
+
+        }
+                //        {
+                //    "user": [
+                //        {
+                //            "id": 2,
+                //            "userId": 1,
+                //            "user": null,
+                //            "year": 2025,
+                //            "type": 1,
+                //            "quotaType": "privatna",
+                //            "majorId": 1,
+                //            "major": {
+                //                "id": 1,
+                //                "name": "PIT(2023)",
+                //                "subjects": null
+                //            },
+                //            "users": null,
+                //            "semesterSubjects": null
+                //        },
+                //        {
+                //    "id": 1,
+                //            "userId": 1,
+                //            "user": null,
+                //            "year": 2025,
+                //            "type": 0,
+                //            "quotaType": "privatna",
+                //            "majorId": 1,
+                //            "major": {
+                //        "id": 1,
+                //                "name": "PIT(2023)",
+                //                "subjects": null
+                //            },
+                //            "users": null,
+                //            "semesterSubjects": null
+                //        }
+                //    ]
+                //}
     }
 }
Index: iknow-api/Data/AppDbContext.cs
===================================================================
--- iknow-api/Data/AppDbContext.cs	(revision 2d64b2e1e96d2ca623370d7fe5be29a09fe3f360)
+++ iknow-api/Data/AppDbContext.cs	(revision 33c69d6e6096b3f8bcc1428ef0cedb8ded41b5c2)
@@ -19,4 +19,5 @@
         public DbSet<Major> Majors { get; set; }
         public DbSet<PassedSubject> PassedSubjects { get; set; }
+        public DbSet<EnrolledSemesters> EnrolledSemesters { get; set; }
 
 
Index: iknow-api/Repository/Implementations/UserRepository.cs
===================================================================
--- iknow-api/Repository/Implementations/UserRepository.cs	(revision 2d64b2e1e96d2ca623370d7fe5be29a09fe3f360)
+++ iknow-api/Repository/Implementations/UserRepository.cs	(revision 33c69d6e6096b3f8bcc1428ef0cedb8ded41b5c2)
@@ -63,4 +63,11 @@
             return await _context.User.CountAsync();
         }
+        public async Task<List<EnrolledSemesters>> GetUserSemestersAsync(int id)
+        {
+            return await _context.EnrolledSemesters
+                .Include(es => es.Major)
+                .Where(es => es.UserId == id)
+                .ToListAsync();
+        }
 
     }
Index: iknow-api/Repository/Interface/IUserRepository.cs
===================================================================
--- iknow-api/Repository/Interface/IUserRepository.cs	(revision 2d64b2e1e96d2ca623370d7fe5be29a09fe3f360)
+++ iknow-api/Repository/Interface/IUserRepository.cs	(revision 33c69d6e6096b3f8bcc1428ef0cedb8ded41b5c2)
@@ -12,4 +12,5 @@
         Task<int> GetUsersCountAsync();
         Task<User?> GetUserByIdAsync(int id);
+        Task<List<EnrolledSemesters>?> GetUserSemestersAsync(int id);
         Task<User?> GetOnlyUserByIdAsync(int id);
 
Index: iknow-api/Services/Implementations/UserService.cs
===================================================================
--- iknow-api/Services/Implementations/UserService.cs	(revision 2d64b2e1e96d2ca623370d7fe5be29a09fe3f360)
+++ iknow-api/Services/Implementations/UserService.cs	(revision 33c69d6e6096b3f8bcc1428ef0cedb8ded41b5c2)
@@ -33,4 +33,17 @@
             else
                 return user;
+        }
+        public async Task<List<EnrolledSemesters>> GetUserSemesters(string JWT)
+        {
+            var userId = ExtractUserIdFromJwt(JWT);
+            if (userId == null)
+                return null;
+
+            // Now you can use userId to fetch user data
+            var semesters = await _userRepository.GetUserSemestersAsync(userId.Value);
+            if (semesters == null)
+                return null;
+            else
+                return semesters;
         }
 
Index: iknow-api/Services/Interfaces/IUserService.cs
===================================================================
--- iknow-api/Services/Interfaces/IUserService.cs	(revision 2d64b2e1e96d2ca623370d7fe5be29a09fe3f360)
+++ iknow-api/Services/Interfaces/IUserService.cs	(revision 33c69d6e6096b3f8bcc1428ef0cedb8ded41b5c2)
@@ -6,4 +6,5 @@
     {
         Task<User> GetUserData(string userId);
+        Task<List<EnrolledSemesters>> GetUserSemesters(string userId);
     }
 }
