Sometimes when trying to unsync an App in the marketplace, we've found that it does not actually unsync. Why is that and is there a fix for this?
In custom marketplace implementations using the Apps.json endpoint, there are times when an app may not successfully unsync.
This is the result of a browser caching issue when the syncing and unsyncing happens repeatedly within a short period of time. When this happens, the browser automatically redirects the user back to your specified "redirect_uri" parameter without passing a request first to the Validic API. To work around this, you may add a new parameter to your "sync_url", "unsync_url", and "refresh_url" which would differentiate the URLs from the previous ones cached by the browser, for example:
GET ORGANIZATION_ID}/auth/{SOURCE}?user_token={USER_AUTHENTICATION_TOKEN}&format_redirect=json×tamp={EPOCH_TIME}&redirect_uri={URI}
In the example above, adding a new "timestamp" parameter with the value of the current time in epoch makes sure that each time the App Marketplace is rendered, a different URL is served to the browser. You may alternatively provide a different parameter and value so long as this is always unique from the previous one.