diff --git a/ExpressAPI/src/managers/UserManager.ts b/ExpressAPI/src/managers/UserManager.ts
index 871ea380c53163bc518f752c0373d97a02ef6374..d4820af48ed073f3cf5d4013b3de1e08f18a4ce9 100644
--- a/ExpressAPI/src/managers/UserManager.ts
+++ b/ExpressAPI/src/managers/UserManager.ts
@@ -5,6 +5,13 @@ import * as Gitlab from '@gitbeaker/rest';
 
 
 class UserManager {
+    async getFiltered(filters: Prisma.UserWhereInput | undefined, include: Prisma.UserInclude | undefined = undefined): Promise<Array<User> | undefined> {
+        return await db.user.findMany({
+                                          where  : filters,
+                                          include: include
+                                      }) as unknown as Array<User> ?? undefined;
+    }
+
     async getByMail(mail: string, include: Prisma.UserInclude | undefined = undefined): Promise<User | undefined> {
         return await db.user.findUnique({
                                             where  : {
@@ -14,10 +21,10 @@ class UserManager {
                                         }) as unknown as User ?? undefined;
     }
 
-    async getById(id: number, include: Prisma.UserInclude | undefined = undefined): Promise<User | undefined> {
+    async getById(id: string | number, include: Prisma.UserInclude | undefined = undefined): Promise<User | undefined> {
         return await db.user.findUnique({
                                             where  : {
-                                                id: id
+                                                id: Number(id)
                                             },
                                             include: include
                                         }) as unknown as User ?? undefined;
diff --git a/ExpressAPI/src/middlewares/ParamsCallbackManager.ts b/ExpressAPI/src/middlewares/ParamsCallbackManager.ts
index 1dffaef8a782bb06c01e485705afc830e563f441..c3355a6d47215f7c236888d5cb9d10c799e72675 100644
--- a/ExpressAPI/src/middlewares/ParamsCallbackManager.ts
+++ b/ExpressAPI/src/middlewares/ParamsCallbackManager.ts
@@ -5,6 +5,7 @@ import ExerciseManager    from '../managers/ExerciseManager';
 import AssignmentManager  from '../managers/AssignmentManager';
 import TagManager         from '../managers/TagManager';
 import TagProposalManager from '../managers/TagProposalManager';
+import UserManager        from '../managers/UserManager';
 
 
 type GetFunction = (id: string | number, ...args: Array<unknown>) => Promise<unknown>
@@ -29,6 +30,7 @@ class ParamsCallbackManager {
     initBoundParams(req: express.Request) {
         if ( !req.boundParams ) {
             req.boundParams = {
+                user       : undefined,
                 assignment : undefined,
                 exercise   : undefined,
                 tag        : undefined,
@@ -38,13 +40,31 @@ class ParamsCallbackManager {
     }
 
     registerOnBackend(backend: Express) {
+        this.listenParam('userId', backend, (UserManager.getById as GetFunction).bind(UserManager), [ {
+            assignments: true,
+            exercises  : {
+                include: {
+                    members   : true,
+                    assignment: {
+                        include: {
+                            staff: true
+                        }
+                    }
+                }
+            }
+        } ], 'user');
+
         this.listenParam('assignmentNameOrUrl', backend, (AssignmentManager.get as GetFunction).bind(AssignmentManager), [ {
             exercises: true,
             staff    : true
         } ], 'assignment');
 
         this.listenParam('exerciseIdOrUrl', backend, (ExerciseManager.get as GetFunction).bind(ExerciseManager), [ {
-            assignment: true,
+            assignment: {
+                include: {
+                    staff: true
+                }
+            },
             members   : true,
             results   : true
         } ], 'exercise');
diff --git a/ExpressAPI/src/types/express/index.d.ts b/ExpressAPI/src/types/express/index.d.ts
index 59a5e0056b7d85185e11d49a66d82153cab01192..0c90584540c7e56c6ae4e0db55008d0c89dc9f74 100644
--- a/ExpressAPI/src/types/express/index.d.ts
+++ b/ExpressAPI/src/types/express/index.d.ts
@@ -1,6 +1,6 @@
-import Session                       from '../../controllers/Session.js';
-import { Assignment, Exercise, Tag } from '../DatabaseTypes';
-import { TagProposal }               from '@prisma/client';
+import Session                             from '../../controllers/Session.js';
+import { Assignment, Exercise, Tag, User } from '../DatabaseTypes';
+import { TagProposal }                     from '@prisma/client';
 
 // to make the file a module and avoid the TypeScript error
 export {};
@@ -10,7 +10,7 @@ declare global {
         export interface Request {
             session: Session,
             boundParams: {
-                assignment: Assignment | undefined, exercise: Exercise | undefined, tag: Tag | undefined, tagProposal: TagProposal | undefined
+                user: User | undefined, assignment: Assignment | undefined, exercise: Exercise | undefined, tag: Tag | undefined, tagProposal: TagProposal | undefined
             }
         }
     }