everything's up and runningsee status
// STREAMION.BOT DOCS

All about streamion.bot.

Sign-in flow, chat commands, event responses, alerts, music integrations — the full reference for your bot configuration.

YouTube Music

YouTube Music integration

Connecting YouTube Music lets streamion.bot add requested videos to a YouTube playlist you own. The integration sits alongside Spotify as a second possible music provider; the active provider — set in Settings → Music — determines which connection streamion.bot uses for chat commands.

YouTube Music's API is more limited than Spotify's. streamion.bot can add tracks to a playlist and read what's in it, but YouTube does not offer a way to ask "what is currently playing?" or to remotely control playback. Practical consequences for streamers:

  • !sr (song request) and !nexttracks work.
  • !playlist works (shows the active playlist).
  • !song, !skip, !playsong, !stopsong are Spotify-only. If your active provider is YouTube Music, these commands are not available — you play the active YouTube playlist yourself during the stream.

Connecting

The connection is managed centrally on Settings → Music (/settings/music), where both providers appear as cards next to each other.

  1. Open /settings/music.
  2. Pick YouTube Music as the active music provider at the top of the page if you have not done so already.
  3. On the YouTube Music card, click Connect YouTube.
  4. You are redirected to Google's authorization page. Approve the request.
  5. You are redirected back. The card now shows Connected with the YouTube account's display name.

The OAuth scopes (the individual permissions Google is asked to grant) streamion.bot requests are: https://www.googleapis.com/auth/youtube, openid, and profile. The first scope is required to read and modify playlists; the other two are used to identify the connecting account.

Playlists page

The YouTube Music → Playlists page (/youtubemusic/playlists) is where you decide which YouTube playlist song requests are added to.

  • Saved playlists (top section) — playlists imported from your YouTube library. Exactly one can be Active at a time; song requests are appended to that playlist.
  • Your YouTube playlists (bottom section) — fresh from your YouTube library. Use the refresh control to reload.

Only playlists owned by the connected YouTube account can be activated for song requests. Playlists you only subscribe to (but did not create) cannot be written to.

Available row actions: View tracks, Activate / Deactivate, Delete (removes from streamion.bot, not from YouTube).

Song-request settings

The YouTube Music song-request settings appear on Settings → Music as a Song Requests · YouTube Music card, but only while YouTube Music is the active provider and the connection is healthy. Settings auto-save on change.

SettingDefaultDescription
Enable song requestsonMaster switch. When off, !sr replies "Song requests are currently disabled."
Max. track length (seconds)7 minTracks longer than this are rejected. Empty value = unlimited. Range 30 s – 30 min.
Block explicit / age-restricted videosoffRejects age-restricted videos and uploads labelled (Explicit) / [Explicit] in the title, plus uploader-tagged explicit content. YouTube's API does not give us a clean "explicit" flag the way Spotify does, so this filter does its best with the signals available; the blacklist catches what slips through.
Duplicate checkonRejects a track that is already in the active playlist.
Max. requests per user per streamunlimitedEach chatter can successfully request at most this many tracks per stream session. Failed attempts (not found, blocked, etc.) do not count. Resets when the channel goes online (Twitch stream.online). Empty value = unlimited. Range 1 – 100.

Blacklist

The blacklist is managed at /settings/youtubemusic/blacklist and prevents specific channels or keywords from being added through !sr.

  • Channel blacklist — paste a YouTube channel URL, a channel ID, or a channel handle (the @something name). streamion.bot identifies the exact channel from your input; everything that channel uploads is blocked.
  • Keyword blacklist — case-insensitive match against the video title and uploader name. Useful for blanket bans on themes or sound-alike covers.

Blacklist entries are scoped to your workspace.

Chat commands while YouTube Music is active

CommandPermissionBehaviour
!sr <input> (alias !songrequest)EveryoneRequests a song. Input can be a YouTube video URL, a youtu.be/... short link, a YouTube video ID, or free text in the form Artist - Title. Free text is searched via YouTube.
!playlist (alias !pl)EveryoneShows the currently active YouTube playlist with a link.
!nexttracks (alias !queue)EveryoneShows the next 3 tracks in the active playlist.

Defaults (trigger, aliases, permission, cooldowns) can be overridden per channel on the Commands page.

Disconnecting

Click Disconnect on the YouTube Music card on /settings/music. streamion.bot revokes the tokens and removes the stored connection. To revoke streamion.bot's access on Google's side as well, visit myaccount.google.com/permissions.

Troubleshooting

  • !sr says "Song requests are currently disabled." — Either YouTube Music is not the active provider in Settings → Music, or the Enable song requests switch is off, or the connection is in the Needs reauth state.
  • !sr says "the active playlist isn't owned by the connected account" — Activate a playlist that the connected YouTube account owns; you cannot add tracks to a playlist someone else created.
  • YouTube card shows "needs re-authorization" — The stored credentials could not be refreshed. Click Reconnect and walk the OAuth flow again. Common causes: the streamion.bot app was revoked in the Google account's security settings, or the account's password changed.
  • A video gets through the explicit filter — Add the uploader's channel or a keyword to the blacklist on /settings/youtubemusic/blacklist.