diff --git a/src/middlewares/auth/authenticated.ts b/src/middlewares/auth/authenticated.ts
index 503fa2a3a54dd13ee9c419a1ebad43f1b448619a..44d6052bc41aab725509b240d465c8bf9d0b24b7 100644
--- a/src/middlewares/auth/authenticated.ts
+++ b/src/middlewares/auth/authenticated.ts
@@ -5,10 +5,15 @@ const authenticated = () => (
   res: Response,
   next: NextFunction
 ) => {
-  if (req.session!.user) next();
-  else {
+  if (req.session!.user) {
+    if (req.session!.user.isRegistered) next();
+    else {
+      res.status(401);
+      res.json({ message: "You have to register to see this page!" });
+    }
+  } else {
     res.status(401);
-    res.json({ message: "You have to login to see this page" });
+    res.json({ message: "You have to login to see this page!" });
   }
 };
 
diff --git a/src/middlewares/user/addUser.ts b/src/middlewares/user/addUser.ts
index 74eceb9e215da9cb3ae2d4bbe34fbb144166ab52..b19dd88a6d529a20c1a440b68f645fbffd6f5336 100644
--- a/src/middlewares/user/addUser.ts
+++ b/src/middlewares/user/addUser.ts
@@ -8,6 +8,10 @@ const addUser = () => async (
   res: Response,
   next: NextFunction
 ) => {
+  if (!req.session!.user) {
+    return res.status(401).json({ message: "You have to login to register!" });
+  }
+
   // Already registered
   if (req.session?.user?.isRegistered) {
     await Profile.findOne(
diff --git a/src/routes/user.ts b/src/routes/user.ts
index eb3dbfa73868a5c3f671b0011b5c14e5e5f8208b..62ca838fba079a41c32dfeeeb5745bc2d67d5f1e 100644
--- a/src/routes/user.ts
+++ b/src/routes/user.ts
@@ -18,7 +18,7 @@ import updateWarning from "../middlewares/user/updateWarning";
 const usersRoute = (app: Application): void => {
   app.get("/api/v1/users", authenticated(), getUsersList(), responseUserList());
 
-  app.post("/api/v1/users", authenticated(), addUser(), responseUser());
+  app.post("/api/v1/users", addUser(), responseUser());
 
   app.get("/api/v1/users/me", authenticated(), getOwnUser(), responseUser());