public ActionResult <User> ChangeEmail([FromBody] User user) { IAuthService authService = new JWTService(clientSettings.Value.SecretKey); string token = HttpContext.Request.Headers["Authorization"]; try { if (!authService.IsTokenValid(token)) { return(BadRequest("Unauthorized Access")); } else { List <Claim> claims = authService.GetTokenClaims(token).ToList(); if ((claims.FirstOrDefault(t => t.Type.Equals(ClaimTypes.Name)).Value == user.UserName) && userProcessor.ChangeEmail(user.UserName, user.EmailAddress, user.Password)) { return(user); } return(BadRequest("Not valid information")); } } catch { return(BadRequest("Unauthorized Access")); } }