public async Task <ActionResult> RequestTokenAtLogin([FromBody] LoginCredentialsResource request) { if (!ModelState.IsValid) { return(BadRequest("Invalid Request")); } UserResource authorizedUser = await GetAuthorizedUserFromTokenRequest(request); if (authorizedUser != null) { string refreshToken = _tokenAuthService.GenerateRefreshToken(); UserResource updatedUserResource = await _userService.SaveRefreshToken(authorizedUser.Id, refreshToken); string accessToken = _tokenAuthService.CreateAccessTokenForValidUserResource(updatedUserResource); object result = new { accessToken, refreshToken }; return(new ObjectResult(result)); } return(Unauthorized("Invalid Credentials")); }