Viewer Interaction System Twitch Extension Privacy Notice
Viewer Interaction System is a Twitch Extension used by a streamer to let eligible viewers take part in on-stream interactive games, including the Artillery minigame. This notice explains what information is used when you interact with the Extension.
The Extension is optional. If you do not share your Twitch identity or do not use the Extension controls, you can still watch the stream normally.
Who Controls This Information
The streamer running Viewer Interaction System controls the game experience and the local viewer records used by that stream. Twitch controls your Twitch account, Twitch identity settings, and Twitch Extension authorization flow.
Information Twitch Shares With The Extension
When you open the Extension, Twitch provides an Extension authorization token so the Extension can make authenticated requests to the backend service. If you choose to share your Twitch identity, Twitch can also provide your Twitch user ID to the Extension and backend service. Twitch may also provide channel information needed to confirm that the request belongs to the correct stream.
If you do not share your Twitch identity, the Extension may only receive an opaque Twitch viewer identifier. Some interactive features may be unavailable because the game needs a verified viewer identity to decide whose turn it is and whether an action is allowed.
Information Sent When You Play
When you use Extension controls, the Extension sends gameplay actions to the backend service. For Artillery, this can include actions such as setting an angle, setting power, and firing. These requests also include technical fields such as the game instance, action ID, action sequence number, and protocol version so the system can reject stale, duplicate, invalid, or wrong-turn actions.
The backend service verifies the Twitch Extension authorization token, confirms the channel, derives the verified Twitch user ID when identity has been shared, validates the action, and forwards accepted actions to the streamer app.
Information Stored By The Streamer App
The streamer app can store viewer records locally on the streamer's computer. These records may include your Twitch user ID, Twitch display name, Twitch login, eligibility status, first seen time, last activity time, win streak, and cosmetic appearance choices used for your on-screen character.
Gameplay results can update those local records. For example, winning or losing a viewer game can update win streaks that are used for crowns and other on-screen feedback.
Temporary Backend Processing
The hosted backend service is used to connect the Twitch Extension to the streamer app. It keeps temporary in-memory state while the service is running, such as the latest public game state, pending action acknowledgements, rate-limit counters, and connection status. The backend does not include a database in the current implementation.
The hosting provider may process normal service and network logs needed to operate the hosted service. The Extension and backend should not include Twitch Extension shared secrets, streamer installation secrets, or private OAuth tokens in frontend files.
Information Stored In Your Browser
The Extension may store a local action sequence number in your browser storage for each active game. This helps the system keep your action order valid and reject duplicate or stale actions. Clearing your browser site data for Twitch may remove this local value.
Viewer Eligibility
The streamer may use Twitch subscriber information or other stream rules to decide who is eligible to appear as a viewer character or take a turn in a game. Eligibility information is used for gameplay and moderation of the interactive experience.
How Information Is Used
- To authenticate Extension requests through Twitch.
- To connect viewer actions to the correct stream, game, and turn.
- To show viewer characters, names, eligibility, scores, results, and cosmetic choices on stream.
- To reject invalid, duplicate, stale, unauthorized, or wrong-turn actions.
- To help the streamer operate and troubleshoot the interactive stream experience.
Retention
Temporary backend state is kept in memory for operation of the live service. Local viewer records stored by the streamer app remain on the streamer's computer until the streamer deletes them, resets the app data, or changes the implementation. The current implementation does not automatically delete local viewer records after a fixed period.
Sharing
Viewer Interaction System sends Extension requests through the hosted backend service and the streamer app. Information may be visible on stream when it is part of gameplay, such as display names, characters, turns, scores, crowns, or results. Information is also handled by Twitch as part of the Twitch Extension platform and by the hosting provider that runs the backend service.
The project does not sell viewer information.
Your Choices
- You can choose not to use the Extension controls.
- You can choose not to share your Twitch identity, although verified-identity gameplay features may not work without it.
- You can clear browser storage for Twitch to remove local Extension sequence data from your browser.
- You can contact the streamer to ask what local viewer information is stored about you or to request deletion from the streamer's local Viewer Interaction System records.
Access And Deletion Requests
To request access to or deletion of local Viewer Interaction System records, contact the streamer through the public contact method listed on the Twitch channel or stream profile. Include your Twitch username and, if possible, your numeric Twitch user ID so the streamer can identify the correct local record.
Deleting local Viewer Interaction System records does not delete your Twitch account, Twitch chat messages, Twitch subscription history, Twitch Extension identity settings, or information controlled by Twitch.
Security
The system uses Twitch Extension authorization to verify viewer requests before accepting gameplay actions. The public Extension package should not contain backend secrets, Twitch Extension shared secrets, streamer installation secrets, OAuth refresh tokens, or private credentials.
Changes To This Notice
This notice may be updated as Viewer Interaction System changes. The latest published version should be linked from the Twitch Extension review and listing information.