We're using the API to manage all user subscriptions.
There is a "Brand" custom field, which is a multiple select value.
When user subscribes to a new brand, we use Subscribers.GetSingleSubscriber to get the current information, and merge it with the new selections.
However, sometimes Subscribers.GetSingleSubscriber returns the "Brand" as empty, even though a user has several brands selected (verified), which causes the update to wipe out all their previous selections, and only save the new brand.
I would love to provide any assistance to CM developers in debugging this, as this is a huge priority for us.
Thanks for the report - can you please contact us via support(at)campaignmonitor(dot)com with more details so our developers can investigate that with you?
I will send the email with the examples, but I think I got to the bottom of this. Sometimes the XML format returned is different - missing the anyType tax. This was also brought up in this ticket: http://www.campaignmonitor.com/forums/viewtopic.php?id=4407 but no response.
EXAMPLE (same request to GetSingleSubscriber):
Array ( [anyType] => Array ( [EmailAddress] => email@example.com [Name] => xxx xxx [Date] => 2010-07-20 12:57:00 [State] => Active [CustomFields] => Array ( [SubscriberCustomField] => Array (  => Array ( [Key] => BirthDate [Value] => xxx )
Array ( [EmailAddress] => firstname.lastname@example.org [Name] => xxx xxx [Date] => 2010-07-20 12:57:00 [State] => Active [CustomFields] => Array ( [SubscriberCustomField] => Array (  => Array ( [Key] => BirthDate [Value] => xxx )
Notice the missing anyType tag in the second response.
From Australia to Zimbabwe, and everywhere in between, companies count on Campaign Monitor for email campaigns that drive real business results.Get started for free