I've determined how to read option sets using the following code. How can I add or remove options?
using (var httpClient = SetupHTTPClient()) { var req = httpClient.GetAsync("EntityDefinitions(LogicalName='account')/Attributes(LogicalName='paymenttermscode')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata/OptionSet?$select=Options").Result; JObject termCodeOpts = JsonConvert.DeserializeObject<JObject>(req.Content.ReadAsStringAsync().Result); if (termCodeOpts["Options"].HasValues) { var optionList = termCodeOpts["Options"].ToList(); var labelList = optionList.Where(x => x.SelectToken("Label.LocalizedLabels[0].Label").ToString().Equals(termCode)).FirstOrDefault(); if (labelList != null) { return labelList["Value"].ToString(); } } }