I’m currently using opaque ids from logged in viewers to track their progress in my extension for months. Recently I have been receiving reports of progress being reset for users which is due to their opaque id being changed. After reading the docs at https://dev.twitch.tv/docs/extensions/required-technical-background/#opaque-ids it seemed that opaque id was the desired approach since I do not need their twitch id for any reason.
Opaque IDs persist across all channels, and they do not change unless viewers explicitly request a change (rotation). We encourage developers to use their EBS to store per-viewer information, using opaque IDs as keys. If your extension needs to know the viewer’s numeric Twitch ID, use the Request Identity Link field on the Extensions Manager Capabilities tab.
Looking through some other posts in this topic I see reply’s that discourage use of the opaque id for tracking users which seems to contradict the documentation.
I also found this post which mentions that Revoke Identity from an extension will generate a new opaque id for a user. This is undesirable. If the ID is supposed to persist across all channels then revoking identity from one extension could be resetting a viewers opaque id for my extension as well? Any chance I can help these users find their old opaque id and reclaim their progress in my extension?