Why is identity permanent?
FullStory doesn't let you change the identity of a user once they have been assigned a unique user ID using FS.identify. If you attempt to change the user id of an identified user, FullStory will recognize the new user ID and automatically split the session into a new session.
It's not that we don't approve of self-determination; the problem is that there are a lot of different things such a change might mean, and no way to separate them.
- Are you renaming an old name to a new one, and you want all the old sessions to also be associated with a new name?
- Are you declaring a new synonym for the old user id, but want to use both of them?
- Are the different identifiers meant to be for different users, so you want old sessions for the old uid and a new session for the new one? Remember that we might have our old identity from older pages or sessions; do you mean all of this session belongs to the new user, going back several pages we already recorded as belonging to the old user? Or is it a new session starting from the start of this page, which again we've already started to record as belonging to the old user? Or should the page split, and it was a session by the old user up to a point, but has recently been taken over by the new user?
We can't tell, and some of those would be hard to do (although we are looking at exactly what would be involved). Because of that, identity is permanent. If you try to change it once assigned, the new identity and any variable assignments set in that call to FS.identify will be ignored.
What about User Variables?
User Variables set using FS.setUserVars are not static and can be changed as the user's information changes.
For example, you might update a user variable like lifetimeValue_real each time a user spends on your site, or update displayName and email if the user changes their contact information. However, as described above, you can't change their core identity.