It turns out that the JSON data is not formed correctly. I did figure this out finally. I modified the AddRemoveContactsFromListsActivity() method in the ActivityService.cs file as below. (see //TG marks) /// <summary> /// Create a Remove Contacts From Lists Activity. /// </summary> /// <param name="accessToken"> Constant Contact OAuth2 access token. </param> /// <param name="apiKey"> The API key for the application </param> /// <param name="emailAddresses"> List of email addresses. </param> /// <param name="lists"> List of id's. </param> /// <returns> Returns an Activity object. </returns> public Activity AddRemoveContactsFromListsActivity( string accessToken, string apiKey, IList < string > emailAddresses, IList < string > lists) { Activity activity = null ; string url = String .Concat( Config . Endpoints .BaseUrl, Config . Endpoints .RemoveFromListsActivity); //TG IList < ImportEmailAddress > importData = new List < ImportEmailAddress >(); foreach ( string emailAddress in emailAddresses) { importData.Add( new ImportEmailAddress () { EmailAddresses = new List < string > { emailAddress } }); } //TG RemoveContact removeContact = new RemoveContact () { //ImportData = new List<ImportEmailAddress>() { new ImportEmailAddress() { EmailAddresses = emailAddresses } }, ImportData = importData, //TG Lists = lists }; string json = removeContact.ToJSON(); CUrlResponse response = RestClient.Post(url, accessToken, apiKey, json); if (response.IsError) { throw new CtctException (response.GetErrorMessage()); } if (response.HasData) { activity = response.Get< Activity >(); } return activity; } Thanks, Tony
... View more