Search Content


Content Categories



ExactTarget API tip - complex filters

A couple of weeks ago I was at a client site doing ExactTarget API consulting. This client is standardizing on ExactTarget as their single source of all e-mail communications from three of their internal applications. They will use 5Buckets for the automation in certain cases, but also needed to develop their own integration with ExactTarget directly.

One of the developers posed me a question about “filters” in the ExactTarget web service. You can use
simplefilterpart() to specify what data point you want to filter on, and of course the value. For example, to filter on CustomerKey -


SimpleFilterPart sfp = new SimpleFilterPart();
sfp.Property = “CustomerKey”;
sfp.SimpleOperator = SimpleOperators.equals;
sfp.Value = new string[] { “TransactionalSendKey” };

Here you are first creating an instance of SimpleFilterPart. Then indicating that you want to filter using “CustomerKey”, indicating the operator and finally the value of the CustomerKey.

Now, if you have two filter criteria, you create two instances of the SimpleFilterPart and join the two using ComplexFilterPart (see code example in the Webserivces API guide, pg. 36)

Going back to the question that came up at client site - they wanted to know how they would add a third filter criteria. Well, it’s simple enough. Create a third instance of SimpleFilterPart and set the property and values as appropriate. Then create another instance of a ComplexFilterPart and assign you first ComplexFilterPart to the LeftOperand and the third SimpleFilterPart to the RightOperand.


ComplexFilterPart ComplexFilter2 = new ComplexFilterPart();
ComplexFilter2.LeftOperand = ComplexFilter1;
ComplexFilter2.LogicalOperator = LogicalOperators.AND;
ComplexFilter2.RightOperand = ThirdSimpleFilterPart;




Related Net Applcation Development Articles

Why conventional CRM requirements gathering is fla


The conventional wisdom has it that that CRM requirements gathering consists of assimilating lists of functional requirements and then prioritizing and ranking them. On the surface this all seems very logical, but in practical terms it doesn’t work....

Read more about Why conventional CRM requirements gathering is flawed......

SaaS Vision is About More Than Just "the Suite"


The integration among SaaS solutions described in Phil’s initial blog could be built by an integrator for a specific customer, or provided as an “integration as a service” offering to the market, by Appirio or another third party. We take a...

Read more about SaaS Vision is About More Than Just "the Suite"...