We have created a list with 5 custom fields. We have three ways that we need to insert information into those fields via the API:
Customer Purchases (uses 3 of the custom fields)
Asks a support question (uses 1 of the custom fields)
Signs-up for newsletter (uses 1 of the custom fields)
We can do a SOAP post for each of these events, however, a new SOAP post removes the information already in the custom fields that are not reuired in that SOAP post.
IE. If a customer purchases then that SOAP post removes the information already in Campaign Montitor for the "Asks a support question" and the "Signs-up for newsletter" and only leaves the "Customer Purchases" information.
Is there a way to make the API inserts cumulative?
I'm afraid there's not. The only way to do what you propose is to use Subscribers.GetSingleSubscriber to get the subscribers values in the custom fields, and use that info to do your update.
Thanks for getting back to me Ken.
Would it ever be possible to have a Subscriber.UpdateWithCustomFields added to the API? Where if you only provide 3 of the 5 custom fields it only updates the 3 provided and leaves the others be.
I've put in a feature request for this. We'll let you know when it's been implemented and has been made live.