Since a user is already logged in, the url for the ajax POST request should contain the user token. Once the PCP is loaded, the purpose of this is to store the user token, extracting it from the browser URL. However, it turned out that this {gpiiSession} is different from the {gpiiSession} in GPIIStore.js, passed as an argument in the set invoker https://github.com/radmanovi4/prefsEditors/blob/gpii-559/src/shared/common/GpiiStore.js#L150 here. It is important that the {gpiiSession} in set function has already stored the user token, that's why I've made the function gpii.prefs.getUserToken and used it here as well: https://github.com/radmanovi4/prefsEditors/blob/gpii-559/src/shared/common/GpiiStore.js#L189