Skip to content

Provider Variable Mapping

Joprebond edited this page Sep 15, 2026 · 2 revisions

Provider Variable Mapping

Variable mapping is a provider-based attribute — each stream provider StreamLink knows about (com.jopre.streamlink.provider.ProviderName) has its own interface in com.jopre.streamlink.provider.variables that defines the ProviderVariable bindings used to copy fields out of that provider's raw event payload and into StreamLink variables. Each ProviderVariable binds:

  • Provider Variable — the field path read from the provider's raw event payload (providerPath)
  • StreamLink Variable — the StreamLink variable name the value is written to (variableName)
  • Data Type — the VariableDataType the value is stored as (STRING, INTEGER, DECIMAL, BOOLEAN)

If a ProviderVariable is constructed without an explicit VariableDataType, it defaults to STRING (see ProviderVariable(String providerPath, String variableName)). See also Variables for how these bindings become runtime Variable instances (scope PROVIDER).

Each provider has its own dedicated page, broken into two parts: Events Supported by StreamLink (which EventConfigType values that provider currently drives) and The Variable Map (what gets bound to StreamLink variables for each of those events).

Providers

Provider (ProviderName) Page Status
TWITCH Provider: TWITCH Implemented
STREAM_LINK Provider: STREAM_LINK Implemented (StreamLink-native events, not a third-party service)
STREAM_LABS none Not implemented — ClientSideEventHandler's handling is an empty stub
STREAM_ELEMENTS none Not implemented — ClientSideEventHandler's handling is an empty stub

STREAM_LABS and STREAM_ELEMENTS are left without a page until they actually have a ...VariableMap implementation in the source to document.

Clone this wiki locally