protected async override Task<object> OnPerform() { var payLoad = new FuelPriceContract { cashPrice = _fuelPrice.CashPrice, creditPrice = _fuelPrice.CreditPrice, grade = _fuelPrice.Grade, gradeId = _fuelPrice.GradeId, level = _fuelPrice.Level, levelId = _fuelPrice.LevelId, taxExemptedCashPrice = _fuelPrice.TaxExemptedCashPrice, taxExemptedCreditPrice = _fuelPrice.TaxExemptedCreditPrice, tier = _fuelPrice.Tier, tierId = _fuelPrice.TierId, row = _fuelPrice.Row }; var contract = JsonConvert.SerializeObject(payLoad); var content = new StringContent(contract, Encoding.UTF8, ApplicationJSON); var response = await _fuelPumpRestClient.SetBasePrice(content); var data = await response.Content.ReadAsStringAsync(); switch (response.StatusCode) { case HttpStatusCode.OK: var responseContract = new DeSerializer().MapFuelPrice(data); return new Mapper().MapFuelPrice(responseContract); default: return await HandleExceptions(response); } }