public async Task <ActionResult> Profile([FromBody] PantherProfileRequest request) { var steamUserTask = _steamClient.GetPlayerSummariesAsync(request.SteamId); var ownedGamesTask = _steamClient.GetOwnedGamesForSteamdIdAsync(request.SteamId, true, true); await Task.WhenAll(steamUserTask, ownedGamesTask); if (steamUserTask.Result.Players.Count == 0) { return(NotFound($"User not found for {request.SteamId}")); } else if (steamUserTask.Result.Players.Count > 1) { return(NotFound($"Multiple users found for {request.SteamId}")); } var profile = new PantherProfileResponse { User = steamUserTask.Result.Players.Single(), OwnedGames = ownedGamesTask.Result }; return(Ok(profile)); }
public async Task <IActionResult> GetPlayerSummaryAsync(string steamId) { GetSteamUsersResponse response = await _steamClient.GetPlayerSummariesAsync(steamId); return(Ok(response.Players.First())); }