Example #1
0
        public IList<MergeVariableRecord> getMergeVariablesFromApi(String listId)
        {
            var mergeInput = new listMergeVarsInput(MailChimpSettings.ApiKey, listId);
            var mergeCommand = new listMergeVars(mergeInput);

            var answer = mergeCommand.Execute();

            var mergeVars = new List<MergeVariableRecord>();
            foreach (var result in answer.result)
            {
                var mergeVar = new MergeVariableRecord()
                {
                    Tag = result.tag,
                    Label = result.name,
                    Type = getTypeInt(result.field_type),
                    Required = result.req,
                    DisplayOrder = result.order,
                    Choices = String.Join(",", result.choices)
                };
                mergeVars.Add(mergeVar);
            }

            return mergeVars;
        }
        private List<string> GetListMergeVars(string apikey, string id)
        {
            listMergeVarsInput input = new listMergeVarsInput();
            input.api_Validate = true;
            input.api_AccessType = EnumValues.AccessType.Serial;
            input.api_OutputType = EnumValues.OutputType.XML;
            input.parms.apikey = apikey;
            input.parms.id = id;
            listMergeVars list = new listMergeVars();
            listMergeVarsOutput output = list.Execute(input);

            List<string> result = new List<string>();
            if (output == null)
                return result;
            if (output.result == null)
                return result;

            output.result.ForEach(x => result.Add(x.tag));
            return result;
        }