public async Task <TournamentRoot> GetTournamentByName(string name, ICollection <Expand> expands) { var client = new RestClient(Uri); var expandList = ExpandHelper.GetExpandStringFromCollection(expands); var request = new RestRequest($"{TournamentEndpointUrl}{name}{expandList}", Method.GET); var response = await client.ExecuteTaskAsync(request); if (!response.IsSuccessful) { throw new TournamentNotFoundException(); //Should most likely be an connection error exception } return(JsonConvert.DeserializeObject <TournamentRoot>(response.Content)); }