Class AuthController

java.lang.Object
com.greenloop.auth_service.controller.AuthController

@RestController @RequestMapping("/api/auth") public class AuthController extends Object
REST controller exposing authentication endpoints such as signup, login, logout and password reset.
  • Constructor Details

    • AuthController

      public AuthController()
  • Method Details

    • signup

      @PostMapping("/signup") public org.springframework.http.ResponseEntity<AuthResponse> signup(@Valid @RequestBody @Valid SignUpRequest request, jakarta.servlet.http.HttpServletResponse response)
      Registers a new end-user and sets a JWT in an HTTP-only cookie.
    • adminSignup

      @PostMapping("/admin/signup") public org.springframework.http.ResponseEntity<AuthResponse> adminSignup(@Valid @RequestBody @Valid SignUpRequest request, jakarta.servlet.http.HttpServletResponse response)
      Registers a new admin user. Secured by role checks in security config.
    • login

      @PostMapping("/login") public org.springframework.http.ResponseEntity<AuthResponse> login(@Valid @RequestBody @Valid LoginRequest request, jakarta.servlet.http.HttpServletResponse response)
      Authenticates a user and issues a JWT cookie.
    • logout

      @PostMapping("/logout") public org.springframework.http.ResponseEntity<Map<String,String>> logout(jakarta.servlet.http.HttpServletResponse response)
      Clears the JWT cookie to log out the user.
    • resetPassword

      @PutMapping("/password/reset") public org.springframework.http.ResponseEntity<Map<String,String>> resetPassword(@RequestHeader("X-User-ID") String userId, @Valid @RequestBody @Valid PasswordChangeRequest request)
      Resets password for the authenticated user.