Skip to main content

Providers

The Providers view is the top-level kill-switch dashboard for every external platform Lumio integrates with (Twitch, YouTube, Kick, Trovo, Discord, Spotify, StreamElements, …). Each provider exposes a platform kill-switch plus three sub-flags for its connection types: Login, Channel, and Bot. It is also where operators configure and connect the Global Bot identity for Discord.

Where to find it

Admin sidebar → Providers (/providers).

Quick start

  1. Open Admin → Providers.
  2. Scan the cards — each provider has its own card with the current credentials status ("Configured" / "Not Configured"), connection counts, and the four toggles.
  3. To take a whole platform offline, flip the Platform kill-switch to off.
  4. To block only new logins while keeping existing channel + bot connections, leave Platform on and flip the Login sub-toggle off.
  5. For Discord, configure the Global Bot by pasting the Application ID and Bot Token, then click Save Token and Connect Bot.

Detailed walkthrough

Per-provider card

Each provider card surfaces:

  • Status — Enabled / Disabled at the platform level.
  • Credentials — Configured / Not Configured with a link to System Connections when not.
  • Statistics — Channel Connections, Login Connections, Bot Connections counts.
  • Kill-switch (Platform) — master switch. Off disables all three sub-flags.
  • Connection Types (sub-toggles) — Login, Channel, Bot. Each can be flipped independently while Platform is on.

Disabling warning text: "Disabling will block new connections and logins. Existing connections will continue working."

Global Bot section

Present for platforms that support a Lumio-owned bot identity (Discord, Twitch, Trovo, Kick, YouTube). Shows:

  • Connected as <username> or "Not connected".
  • Connect Bot — launches the OAuth authorize flow.
  • Disconnect Bot — confirms, then drops the token.

Discord-specific fields

Discord has two extra inputs above the Global Bot block:

  • Application ID — the Discord application ID from the Developer Portal.
  • Bot Token — paste the bot token; Save Token stores it encrypted in app_credentials.

Integrations row

Some providers show extra integration badges (for example, Discord shows "Installed: N Discord servers" — pulls from the adminDiscordGuilds count).

Common scenarios

  • Twitch EventSub outage — flip Platform → off on Twitch. Existing connections keep working (they use cached tokens via the Token Refresh Worker), but no new logins or reconnects are accepted.
  • Rolling a breaking bot update — disable the Bot sub-toggle only; channel API calls and OAuth logins keep flowing while bots stay disconnected.
  • Initial Discord setup — paste Application ID and Bot Token, Save Token, Connect Bot. The bot shows up as "Connected as …".
  • YouTube quota exhausted — flip YouTube's Channel sub-toggle off until the daily quota resets.

Permissions

ActionPermission
View provider cards / statsproviders:read
Toggle kill-switches / sub-togglesproviders:edit
Connect / disconnect global botbot-connections:create + bot-connections:delete
Save Discord bot tokenproviders:edit
Configure credentials (jump-off)system-connections:edit

Dashboard entry requires admin:access. System admins implicitly hold every permission above.

API

UI actionGraphQLREST
List providers with statsadminProvidersGET /v1/admin/providers
Toggle platformadminToggleProviderPATCH /v1/admin/providers/\{platform\}/toggle
Toggle sub-flagadminToggleProviderSubtypePATCH /v1/admin/providers/\{platform\}/\{subtype\}/toggle
Set platform enabled (explicit)adminSetProviderEnabledPATCH /v1/admin/providers/\{platform\}/enabled
Set subtype enabled (explicit)adminSetProviderSubtypeEnabledPATCH /v1/admin/providers/\{platform\}/\{subtype\}/enabled
Get global bot statusadminGlobalBotConnectionsGET /v1/admin/bot-connections
Authorize URL for global botadminBotAuthorizeUrlGET /v1/admin/bot-connections/\{platform\}/authorize
Exchange OAuth codeadminExchangeBotConnectionPOST /v1/admin/bot-connections/\{platform\}/exchange
Save Discord bot tokenadminSetDiscordBotTokenPUT /v1/admin/bot-connections/discord
Disconnect global botadminDeleteGlobalBotConnectionDELETE /v1/admin/bot-connections/\{platform\}

Tips & gotchas

  • Toggles are hierarchical. Platform off ⇒ Login/Channel/Bot off regardless of their individual state. Turning Platform back on restores the last sub-state.
  • Existing tokens keep working while a toggle is off — the switch gates new flows only. For immediate hard-offline, rotate tokens via System Connections.
  • The Discord Bot Token cannot be read back. If it's lost, generate a new token in the Discord Developer Portal and re-save.
  • Connection counts reflect the latest DB state at page load; they're not live. Refresh for current numbers.
  • Credentials must be Configured before any sub-toggle can be meaningfully used. If Credentials is "Not Configured", the Connect Bot button is a no-op.