diff --git a/src/db/repo/user.repo.ts b/src/db/repo/user.repo.ts
index ad04965fda132db122b44bfdfd99157b83b05249..69023a4883b63c6458b07cbab6347c3a968d1830 100644
--- a/src/db/repo/user.repo.ts
+++ b/src/db/repo/user.repo.ts
@@ -69,4 +69,13 @@ export class UserRepo {
       return userSchemas.userModelSchema.parse(ret)
   }
 
+  async delete(id: UserModel['id']): Promise<UserModel>{
+    const [ret] = await db
+    .delete(userTable)
+    .where(eq(userTable.id, id))
+    .returning()
+
+    return userSchemas.userModelSchema.parse(ret)
+  }
+
 }
diff --git a/src/routes/user.routes.ts b/src/routes/user.routes.ts
index d4f311f4f106f4d8b3695f889b585769fd6d9d6a..bef460814583a05c3b2bc67e80b4a301ed71b84a 100644
--- a/src/routes/user.routes.ts
+++ b/src/routes/user.routes.ts
@@ -75,3 +75,26 @@ export const userRouter = honoWithJwt()
 
       }
   })
+  .post('/delete/:id',
+    async (c) => {
+      try {
+        const id = c.req.param('id')
+        const user = userSchemas.userDtoSchema.parse(
+          await service.delete(id!)
+        )
+
+        return c.json(user)
+      } catch (e) {
+        return c.json(
+          createApexError({
+            status: 'error',
+            message: 'could not delete user',
+            code: HttpStatus.BAD_REQUEST,
+            path: c.req.routePath,
+            suggestion: 'check the input and try again',
+          }),
+          HttpStatus.BAD_REQUEST
+        )
+      }
+    }
+  )
diff --git a/src/services/user.service.ts b/src/services/user.service.ts
index 6c3597e44fe35b3a9959faa59b52ad1087e3b7d7..0cb95807bfe90582ca7edd44af04e6fe975e96bd 100644
--- a/src/services/user.service.ts
+++ b/src/services/user.service.ts
@@ -58,4 +58,9 @@ export class UserService {
       user.password = hashPassword(user.password)
     return this.repo.update(user)
   }
+
+  async delete(user: UserModel['id']): Promise<UserModel> {
+    
+    return this.repo.delete(user)
+  }
 }