public IHttpActionResult SaveWaivers([FromBody] List <CampWaiverResponseDTO> waivers, int eventId, int contactId) { if (!ModelState.IsValid) { var errors = ModelState.Values.SelectMany(val => val.Errors).Aggregate("", (current, err) => current + err.Exception.Message); var dataError = new ApiErrorDto("Waiver data Invalid", new InvalidOperationException("Invalid Waiver Data" + errors)); throw new HttpResponseException(dataError.HttpResponseMessage); } return(Authorized(token => { try { _campService.SaveWaivers(token, eventId, contactId, waivers); return Ok(); } catch (Exception e) { var apiError = new ApiErrorDto("Failed to save waiver data", e); throw new HttpResponseException(apiError.HttpResponseMessage); } })); }