public static OfferApiResponse contactApi() { using (var w = new WebClient()) { var jsonData = string.Empty; try { string endPoint = System.Configuration.ConfigurationManager.AppSettings["endpoint"]; string apiKey = System.Configuration.ConfigurationManager.AppSettings["apiKey"]; w.Encoding = System.Text.Encoding.UTF8; jsonData = w.DownloadString(endPoint + apiKey); } catch (Exception) { return(OfferApiResponse.getInvalidResponse()); } if (string.IsNullOrEmpty(jsonData)) { return(OfferApiResponse.getInvalidResponse()); } OfferApiResponse response = JsonConvert.DeserializeObject <OfferApiResponse>(jsonData); response.valid = true; return(response); } }
public static OfferApiResponse getInvalidResponse() { OfferApiResponse offer = new OfferApiResponse(); offer.valid = false; return(offer); }
private Response getResponse(string id) { OfferApiResponse response = ApiService.contactApi(); if (response.valid) { int offer = int.Parse(id); if (offer >= response.bundleList.Count) { return(Response.AsJson("That offer does not exist", HttpStatusCode.BadRequest)); } else { return(Response.AsJson(response.bundleList[offer])); } } else { return(HttpStatusCode.InternalServerError); } }