static void TestET_Folder() { string NewFolderName = "Testing C Sharp SDK"; int ParentIDForEmail = 0; string ContentType = "email"; ET_Client myclient = new ET_Client(); Console.WriteLine("--- Testing Folder ---"); Console.WriteLine("\n Retrieve All Folder with GetMoreResults"); ET_Folder getAllFolder = new ET_Folder(); getAllFolder.AuthStub = myclient; getAllFolder.Props = new string[] { "ID", "Client.ID", "ParentFolder.ID", "ParentFolder.CustomerKey", "ParentFolder.ObjectID", "ParentFolder.Name", "ParentFolder.Description", "ParentFolder.ContentType", "ParentFolder.IsActive", "ParentFolder.IsEditable", "ParentFolder.AllowChildren", "Name", "Description", "ContentType", "IsActive", "IsEditable", "AllowChildren", "CreatedDate", "ModifiedDate", "Client.ModifiedBy", "ObjectID", "CustomerKey", "Client.EnterpriseID", "Client.CreatedBy" }; GetReturn grAllFolder = getAllFolder.Get(); Console.WriteLine("Get Status: " + grAllFolder.Status.ToString()); Console.WriteLine("Message: " + grAllFolder.Message.ToString()); Console.WriteLine("Code: " + grAllFolder.Code.ToString()); Console.WriteLine("Results Length: " + grAllFolder.Results.Length); while (grAllFolder.MoreResults) { Console.WriteLine("\n Continue Retrieve All Folders with GetMoreResults"); grAllFolder = getAllFolder.GetMoreResults(); Console.WriteLine("Get Status: " + grAllFolder.Status.ToString()); Console.WriteLine("Message: " + grAllFolder.Message.ToString()); Console.WriteLine("Code: " + grAllFolder.Code.ToString()); Console.WriteLine("Results Length: " + grAllFolder.Results.Length); } Console.WriteLine("\n Retrieve Specific Folder for Email Folder ParentID"); ET_Folder getFolder = new ET_Folder(); getFolder.AuthStub = myclient; SimpleFilterPart ParentFolderFilter = new SimpleFilterPart() { Property = "ParentFolder.ID", SimpleOperator = SimpleOperators.equals, Value = new string[] { "0" } }; SimpleFilterPart ContentTypeFilter = new SimpleFilterPart() { Property = "ContentType", SimpleOperator = SimpleOperators.equals, Value = new string[] { "Email" } }; getFolder.SearchFilter = new ComplexFilterPart() { LeftOperand = ParentFolderFilter, RightOperand = ContentTypeFilter, LogicalOperator = LogicalOperators.AND }; getFolder.Props = new string[] { "ID", "Name", "Description" }; GetReturn grFolder = getFolder.Get(); Console.WriteLine("Get Status: " + grFolder.Status.ToString()); Console.WriteLine("Message: " + grFolder.Message.ToString()); Console.WriteLine("Code: " + grFolder.Code.ToString()); Console.WriteLine("Results Length: " + grFolder.Results.Length); foreach (ET_Folder ef in grFolder.Results) { ParentIDForEmail = ef.ID; } if (ParentIDForEmail != 0) { Console.WriteLine("\n Create Folder"); ET_Folder fold = new ET_Folder(); fold.Name = NewFolderName; fold.Description = NewFolderName; fold.CustomerKey = NewFolderName; fold.AuthStub = myclient; fold.ParentFolder = new ET_Folder(); fold.ParentFolder.ID = ParentIDForEmail; fold.ContentType = ContentType; fold.IsEditable = true; PostReturn prFolder = fold.Post(); Console.WriteLine("Post Status: " + prFolder.Status.ToString()); Console.WriteLine("Message: " + prFolder.Message.ToString()); Console.WriteLine("Code: " + prFolder.Code.ToString()); Console.WriteLine("Results Length: " + prFolder.Results.Length); foreach (ResultDetail rd in prFolder.Results) { Console.WriteLine("--Status Code: " + rd.StatusCode); Console.WriteLine("--Status Message: " + rd.StatusMessage); } Console.WriteLine("\n Retrieve newly created Folder"); ET_Folder getNewFolder = new ET_Folder(); getNewFolder.AuthStub = myclient; getNewFolder.SearchFilter = new SimpleFilterPart() { Property = "CustomerKey", SimpleOperator = SimpleOperators.equals, Value = new string[] { NewFolderName } }; getNewFolder.Props = new string[] { "ID", "Name", "Description" }; GetReturn grNewFolder = getNewFolder.Get(); Console.WriteLine("Get Status: " + grNewFolder.Status.ToString()); Console.WriteLine("Message: " + grFolder.Message.ToString()); Console.WriteLine("Code: " + grNewFolder.Code.ToString()); Console.WriteLine("Results Length: " + grNewFolder.Results.Length); foreach (ET_Folder ef in grNewFolder.Results) { Console.WriteLine("--Name: " + ef.Name + " - Description:" + ef.Description); } Console.WriteLine("\n UpdateFolder"); ET_Folder patchFolder = new ET_Folder(); patchFolder.AuthStub = myclient; patchFolder.CustomerKey = NewFolderName; patchFolder.Description = "Now with a new Description"; PatchReturn patchResponse = patchFolder.Patch(); Console.WriteLine("Patch Status: " + patchResponse.Status.ToString()); Console.WriteLine("Message: " + patchResponse.Message.ToString()); Console.WriteLine("Code: " + patchResponse.Code.ToString()); Console.WriteLine("Results Length: " + patchResponse.Results.Length); if (patchResponse.Status) { Console.WriteLine("\n Retrieve updated Folder"); grNewFolder = getNewFolder.Get(); Console.WriteLine("Get Status: " + grNewFolder.Status.ToString()); Console.WriteLine("Message: " + grFolder.Message.ToString()); Console.WriteLine("Code: " + grNewFolder.Code.ToString()); Console.WriteLine("Results Length: " + grNewFolder.Results.Length); foreach (ET_Folder ef in grNewFolder.Results) { Console.WriteLine("--Name: " + ef.Name + " - Description:" + ef.Description); } } Console.WriteLine("\n Delete Folder"); ET_Folder delFolder = new ET_Folder(); delFolder.AuthStub = myclient; delFolder.CustomerKey = NewFolderName; FuelSDK.DeleteReturn drFolder = delFolder.Delete(); Console.WriteLine("Delete Status: " + drFolder.Status.ToString()); Console.WriteLine("Message: " + drFolder.Message.ToString()); Console.WriteLine("Code: " + drFolder.Code.ToString()); Console.WriteLine("Results Length: " + drFolder.Results.Length); foreach (ResultDetail rd in drFolder.Results) { Console.WriteLine("--Status Code: " + rd.StatusCode); Console.WriteLine("--Status Message: " + rd.StatusMessage); } Console.WriteLine("\n Retrieve Folder to confirm deletion"); grNewFolder = getNewFolder.Get(); Console.WriteLine("Get Status: " + grNewFolder.Status.ToString()); Console.WriteLine("Message: " + grFolder.Message.ToString()); Console.WriteLine("Code: " + grNewFolder.Code.ToString()); Console.WriteLine("Results Length: " + grNewFolder.Results.Length); foreach (ET_Folder ef in grNewFolder.Results) { Console.WriteLine("--Name: " + ef.Name + " - Description:" + ef.Description); } } }
static void TestET_List() { ET_Client myclient = new ET_Client(); Console.WriteLine("--- Testing List ---"); int MyNewListID = 0; Console.WriteLine("\n Create List"); ET_List list = new ET_List(); list.AuthStub = myclient; list.ListName = "C# SDK Rules!!"; list.Description = "This is my SDK Created List"; PostReturn postFR = list.Post(); Console.WriteLine("Post Status: " + postFR.Status.ToString()); Console.WriteLine("Message: " + postFR.Message.ToString()); Console.WriteLine("Code: " + postFR.Code.ToString()); Console.WriteLine("Results Length: " + postFR.Results.Length); if (postFR.Results.Length > 0) { MyNewListID = postFR.Results[0].NewID; } if (MyNewListID > 0) { Console.WriteLine("\n Retrieve newly create list"); list.Props = new string[] { "ID", "ListName", "Description" }; list.SearchFilter = new SimpleFilterPart() { Property = "ID", SimpleOperator = SimpleOperators.equals, Value = new String[] { MyNewListID.ToString() } }; GetReturn getFR = list.Get(); Console.WriteLine("Get Status: " + getFR.Status.ToString()); Console.WriteLine("Message: " + getFR.Message.ToString()); Console.WriteLine("Code: " + getFR.Code.ToString()); Console.WriteLine("Results Length: " + getFR.Results.Length); foreach (ET_List ResultList in getFR.Results) { Console.WriteLine("--ID: " + ResultList.ID + ", Name: " + ResultList.ListName + ", Description: " + ResultList.Description); } Console.WriteLine("\n Update list"); ET_List patchList = new ET_List(); patchList.ID = MyNewListID; patchList.Description = "This is the new description"; patchList.AuthStub = myclient; FuelSDK.PatchReturn patchFR = patchList.Patch(); Console.WriteLine("Patch Status: " + patchFR.Status.ToString()); Console.WriteLine("Message: " + patchFR.Message.ToString()); Console.WriteLine("Code: " + patchFR.Code.ToString()); Console.WriteLine("Results Length: " + patchFR.Results.Length); Console.WriteLine("\n Retrieve List that should have description updated"); list.Props = new string[] { "ID", "ListName", "Description" }; list.SearchFilter = new SimpleFilterPart() { Property = "ID", SimpleOperator = SimpleOperators.equals, Value = new String[] { MyNewListID.ToString() } }; getFR = list.Get(); Console.WriteLine("Get Status: " + getFR.Status.ToString()); Console.WriteLine("Message: " + getFR.Message.ToString()); Console.WriteLine("Code: " + getFR.Code.ToString()); Console.WriteLine("Results Length: " + getFR.Results.Length); foreach (ET_List ResultList in getFR.Results) { Console.WriteLine("--ID: " + ResultList.ID + ", Name: " + ResultList.ListName + ", Description: " + ResultList.Description); } Console.WriteLine("\n Delete List"); ET_List delList = new ET_List(); delList.ID = MyNewListID; delList.AuthStub = myclient; FuelSDK.DeleteReturn fr = delList.Delete(); Console.WriteLine("Delete Status: " + fr.Status.ToString()); Console.WriteLine("Message: " + fr.Message.ToString()); Console.WriteLine("Code: " + fr.Code.ToString()); Console.WriteLine("Results Length: " + fr.Results.Length); Console.WriteLine("\n Retrieve List to confirm deletion"); list.Props = new string[] { "ID", "ListName", "Description" }; list.SearchFilter = new SimpleFilterPart() { Property = "ID", SimpleOperator = SimpleOperators.equals, Value = new String[] { MyNewListID.ToString() } }; getFR = list.Get(); Console.WriteLine("Get Status: " + getFR.Status.ToString()); Console.WriteLine("Message: " + getFR.Message.ToString()); Console.WriteLine("Code: " + getFR.Code.ToString()); Console.WriteLine("Results Length: " + getFR.Results.Length); foreach (ET_List ResultList in getFR.Results) { Console.WriteLine("--ID: " + ResultList.ID + ", Name: " + ResultList.ListName + ", Description: " + ResultList.Description); } Console.WriteLine("\n Info List"); ET_List listInfo = new ET_List(); listInfo.AuthStub = myclient; InfoReturn info = listInfo.Info(); Console.WriteLine("Info Status: " + info.Status.ToString()); Console.WriteLine("Message: " + info.Message.ToString()); Console.WriteLine("Code: " + info.Code.ToString()); Console.WriteLine("Results Length: " + info.Results.Length); foreach (ET_PropertyDefinition def in info.Results) { Console.WriteLine("--Name: " + def.Name + ", IsRetrievable: " + def.IsRetrievable.ToString()); } } }