public ActionResult <Portrait> EditPortraitMethod(Portrait portrait, int admin_id, string admin_token, int site_id) { Portrait queried_portrait; try{ queried_portrait = dbQuery.QueryPortraitById(portrait.portrait_id); }catch { JsonFailure f = new JsonFailure($"Portrait Id: {portrait.portrait_id} not found."); return(StatusCode(400, f)); } if (authenticator.VerifyAdminForLeaf(admin_id, queried_portrait.site_id, admin_token)) { DataPlan data_plan; try{ data_plan = _dataLimiter.ValidateDataPlanB(admin_id, queried_portrait, portrait); }catch (System.ArgumentException e) { return(StatusCode(400, e.Message)); } Portrait changed_portrait = dbQuery.EditPortrait(portrait); _dataLimiter.UpdateDataPlan(data_plan); return(changed_portrait); } else { return(StatusCode(400, "Invalid credentials.")); } }