Skip to Content
Middleware (guards)admin.middleware.ts

admin.middleware.ts

Being logged in is not enough for /api/v1/admin/*.
This middleware checks isAdmin and optionally adminRole against permissions.

Typical pattern on admin routers:

adminRouter.use('*', authMiddleware, adminMiddleware)

Failure modes

  • Not admin → 403
  • Admin but missing permission for this action → 403

Always runs after authMiddleware so c.get('user') exists.

Last updated on