Skip to content
BoiHanny edited this page Aug 16, 2026 · 3 revisions

Twitch

Show your stream status in the chatbox, and talk back to your channel.

The Twitch integration displays whether you are live, what you are playing, your viewer count and your follower count. It can also send announcements and shoutouts to your own channel from inside VRChat.


The Twitch section in Options

The Twitch section in Options.

See the rest of this section
The Twitch section in Options (continued) The Twitch section in Options (continued)


What do I need?

  1. A Twitch account and your channel name.
  2. The 🌐 Internet Access permission, which MagicChatbox asks for when you enable the integration.
  3. Your own Twitch Developer application, for its Client ID.
  4. A User Access Token with the right scopes.

Important

Twitch setup is manual, and it is the most involved of any integration. There is no "Sign in with Twitch" button — Twitch requires each application to use its own credentials, so you supply a Client ID and a token yourself. Budget ten minutes for it the first time.


Note

Twitch needs the 🌐 Internet Access permission. Decline it and the integration switches itself back off. You can grant it later under Options → Privacy.



Setting it up

  • Open Options → Twitch and click ⚙ Setup Twitch Integration. The wizard has three pages, and this is what each one wants.

Step 1 — Create a Twitch application

  1. Go to the Twitch Developer Console and log in.
  2. Click Register Your Application.
  3. Give it any name. For OAuth Redirect URLs, http://localhost is fine — MagicChatbox does not use it.
  4. Set the category to Application Integration.
  5. Create it, then open it and copy the Client ID.

Step 2 — Paste the Client ID

  • Paste it into the wizard's Client ID box and continue.

Step 3 — Get a User Access Token

  • You need a token carrying these scopes:

    Scope Needed for
    moderator:read:followers Required. Your follower count.
    moderator:manage:announcements Optional. Sending announcements.
    moderator:manage:shoutouts Optional. Sending shoutouts.
  • The wizard offers a button that opens twitchtokengenerator.com, a third-party site commonly used for this. Generate a token there with the scopes above and paste it in. If you would rather not use a third-party site, any token you generate yourself with those scopes works just as well.


  • Click Test Connection. It tells you whether the token is valid and warns you if moderator:read:followers is missing. Then Save & Close — your channel name is filled in automatically if you left it blank.

Caution

A User Access Token is a credential. Treat it like a password — do not paste it into screenshots or share it. MagicChatbox stores it encrypted for your Windows account.


Important

These tokens expire, and MagicChatbox does not refresh them. When yours does, the integration reports the token is invalid and you repeat step 3. Nothing else needs redoing.



How often it checks

  1. Ask Twitch for new numbers every (seconds) — default 60, and it will not go below 15 or above 3600.
  2. Sync — fetch now, without waiting for the next check.

  • The last successful check is shown beside the button, along with any error.


What to show

  1. Say that you are live — on by default, with Word to use, default LIVE.
  2. Show what you are playing — on by default, with Word before the game, default playing.
  3. Show how many people are watching — on by default.
    • Put a word in front of that number — on by default, default viewers.
    • Shorten big viewer numbers1234 becomes 1.23K. Off by default.
  4. Show your follower totaloff by default.
    • Put a word in front of that number — default followers.
    • Shorten big follower numbers8420 becomes 8.42K. Off by default.
  5. Show your stream title — off by default, since titles are long and the chatbox is short. Word before the title, default title.
  6. Show your channel name — off by default. Word before the channel name, default channel.
  7. Show this when the stream is over — empty by default, which hides the integration entirely while you are offline.
  8. Small raised labelsᵛⁱᵉʷᵉʳˢ instead of viewers. On by default.
  9. What sits between each part — default |. Only used while you have not written your own layout.

Note

If your follower count refuses to appear, a warning shows under that setting — it means your token is missing moderator:read:followers. Generate a new one with that scope.



Write your own layout

  • Leave Write your own layout (optional) empty and the line is assembled from the toggles above. Fill it in and you control the layout completely.

Placeholder What it becomes
{live} Your live marker
{game} The game, on its own
{gameWithLabel} The game with its prefix word
{viewers} Viewer count with its label
{viewerCount} Just the number
{viewerLabel} Just the label word
{followers} Follower count with its label
{followerCount} Just the number
{followerLabel} Just the label word
{title} Stream title, on its own
{titleWithLabel} Stream title with its prefix word
{channel} Channel name, on its own
{channelWithLabel} Channel name with its prefix word
{status} The combined live/offline state

Note

Use \n anywhere in the layout to insert a line break.



Announcements

  • MagicChatbox can post an announcement to your own Twitch chat.

    1. Let me send announcements — off by default.
    2. Message — the text, with a Send button beside it.
    3. Colour — Primary by default.

Note

Needs the moderator:manage:announcements scope on your token.



Shoutouts

  • Send a shoutout to another streamer without leaving VR.

    1. Let me send shoutouts — off by default.
    2. Channel to shout out — with a Send button.
    3. Post a highlighted message about them too — on by default.
    4. What that message says — default Go follow {user} at twitch.tv/{user}.
    5. Colour — Purple by default.

Note

Needs the moderator:manage:shoutouts scope. Shoutouts and announcements post to your own channel using your own credentials — they are not messages into other people's chats.



How do I get help?



Clone this wiki locally