/// <summary>
        /// Create a new column.
        /// </summary>
        /// <param name="name">The name to give to the new column. Column names
        /// must be unique; an error will be thrown if the requested name
        /// already exists.</param>
        /// <param name="type">The column type, one of ['string', 'date'].
        /// </param>
        /// <param name="mergeTags">An optional collection of merge tags to
        /// give the column. Each merge tag should be a string enclosed by
        /// dual percent signs (like %%TAG%%).</param>
        /// <returns>A representation of the new column.</returns>
        public Responses.ColumnEntity CreateColumn(string name, ColumnType type, string[] mergeTags)
        {
            Requests.ColumnEntity column = new Requests.ColumnEntity();
            column.Name      = name;
            column.Type      = (Requests.ColumnEntity.ColumnType)type;
            column.MergeTags = mergeTags;

            return(this.connection.Call <Responses.ColumnEntity>("POST", "contactmanager/columns", null, column));
        }
        /// <summary>
        /// Change the merge tags on the given column.
        /// </summary>
        /// <param name="columnID">The ID of the column to update.</param>
        /// <param name="mergeTags">An array of merge tags to assign to the
        /// column. Each merge tag should be a string enclosed by dual
        /// percent signs (like %%TAG%%).</param>
        /// <param name="append">If true, append the provided tags to the
        /// existing tags; otherwise, overwrite all existing merge tags.
        /// </param>
        /// <returns>The updated column entity.</returns>
        public Responses.ColumnEntity UpdateMergeTags(string columnID, string[] mergeTags, bool append)
        {
            Dictionary <string, string> queryParameters = new Dictionary <string, string>();

            queryParameters.Add("append", append ? "1" : "0");

            Requests.ColumnEntity column = new Requests.ColumnEntity();
            column.MergeTags = mergeTags;

            return(this.connection.Call <Responses.ColumnEntity>("POST", "contactmanager/columns/" + columnID, queryParameters, column));
        }