I am attempting to update contacts via the v3 API and I am having several issues. The first somewhat annoying part of the API is that if you don't pass a value (even though they are not required) Constant Contact will null the value out on their end.
That is what is leading to the issue I am having. Some of the contacts that I am attempting to update have SMS numbers. So in order to not delete their SMS information I have to include the sms_channel object and it's properties.
Within sms_channel I have to pass sms_consent_permission However accordingly to the API documentation: https://developer.constantcontact.com/api_reference/index.html#tag/Contacts/operation/createContact
The only valid option for this is explicit. The problem I am running into is some contacts already have different information in their contact, such as unsubscribed. I retrieve this information directly from constant contact, but when I try to send the data back it gives a 400 error due to the sms_consent_permission not being explicit.
So I am left with the option of deleting their SMS information, or marking them as explicit when they are not...
How are you suppose to handle updates that have this information via the API?