public async Task <Response> ChangeEmailRequest(UserChangeEmailRequestDTO dto, ClaimsPrincipal claims) { var user = await _provider.GetUserDetail(claims.GetUserId()); if (user.Data == null) { return(new ForbiddenErrorResponse()); } if (user.Data.RoleId != RoleGuid.Admin) { return(new ForbiddenErrorResponse()); } var oldPasswordCorrectResponse = await _tokensService.Authenticate(new CredentialsDTO { Email = user.Data.Email, Password = dto.Password }); if (!oldPasswordCorrectResponse.IsSuccess) { return(oldPasswordCorrectResponse); } var sendConfirmationResponse = await _service.ChangeEmailRequest(user.Data.Id, dto.NewEmail); return(sendConfirmationResponse); }