I know that through the REST API you can mark a contact as opt-in by setting ‘opt_in_reason’ then calling the PUT for /contacts. When I do however, I cannot ‘remove’ the opt-in afterward (nor can I receive the existing opt_in_reason after it has been set by calling GET contacts, as it’s never filled in). This is a problem as my users on my website can check/uncheck the option to subscribe to updates, but the unchecking doesn’t work since the REST API doesn’t remove (or even pass out) the opt_in_reason.
On top of that, I’m seeing two properties in JSON that are not documented in REST (GET: /contacts):
Neither of these fields accept data being sent beyond the values they have applied to them. Being undocumented I’m not sure if these are just leaking out or the documentation is just out of date.
tldr; I need to be able to both optin and optout for customers via the REST API and it appears to not be functioning as intended atm.