Skip to reference

Beta reference. Prepared from development builds for this version. This reference does not describe the current stable release.

A verified stable reference is not available yet. Choose a prepared beta version above.

Do · Actions · supported

Streamlabs Desktop Control

Run a Streamlabs Desktop local API action. Uses the Streamlabs Desktop settings from Settings > Connect.

action.streamlabs_control · 2.8.0

Browse all entries

Requirements and availability

Streamlabs Desktop local API connection configured in Settings > Connect.

Picker contexts: automation, timer, command, pad.

Behavior

Execute only in the Streamlabs Desktop lane. Operation defaults get_status. Linked source visibility updates all instances; item visibility updates the selected scene item. Return values are not automatically exported as template variables.

Configure in the app

Open: Do → Advanced Actions (commands only) → Add action

Steps

  1. Choose action category Streamlabs Desktop Control, select Streamlabs Desktop Control, and click Add action.
  2. Expand the action card. Configure the Fields below; check Editor defaults for your context and any operation-dependent fields.
  3. Choose resource values from real app pickers. Set output Platform separately from the trigger Where setting when the action offers it.
  4. Use Move action up / Move action down to position this action, then save the containing command, automation, timer or SheevPad button.

Limitations

  • Picker availability does not supply missing event variables. Check prerequisites and originating provider.
  • An action return value is not automatically a sequence variable. Only documented producers create template outputs.

Fields

FieldInput / optionsDefaults / limitsAvailability
Streamlabs action
operation
select
  • Connection - Get status: get_status
  • Connection - Refresh scene/source catalog: refresh_catalog
  • Scenes - Get current scene: get_current_scene
  • Scenes - Set scene: set_current_scene
  • Scenes - Return to previous scene: previous_scene
  • Sources - Toggle / set source visibility: source_visibility
  • Audio - Toggle / set source mute: source_mute
  • Stream / Record - Toggle streaming: stream_toggle
  • Stream / Record - Start streaming: stream_start
  • Stream / Record - Stop streaming: stream_stop
  • Stream / Record - Toggle recording: record_toggle
  • Stream / Record - Start recording: record_start
  • Stream / Record - Stop recording: record_stop
  • Stream / Record - Toggle replay buffer: replay_toggle
  • Stream / Record - Start replay buffer: replay_start
  • Stream / Record - Stop replay buffer: replay_stop
  • Stream / Record - Save replay: replay_save
  • Advanced - Set browser source URL: browser_url
  • Advanced - Raw Streamlabs request: raw_request

Editor defaults: {"automation":"get_status","timer":"get_status","command":"get_status","pad":"get_status"}

Literal value / selected resource
Scene name
sceneName
text

Editor defaults: {"automation":null,"timer":null,"command":null,"pad":null}

Example hint: Select scene

Supports variables
Source name
sourceName
text

Editor defaults: {"automation":null,"timer":null,"command":null,"pad":null}

Example hint: Select source

Supports variables
Visibility target
visibilityTarget
select
  • Linked source — all instances: linked
  • Selected scene item only: item

Editor defaults: {"automation":null,"timer":null,"command":null,"pad":null}

Literal value / selected resource
State
enabled
select
  • On / visible / muted: true
  • Off / hidden / unmuted: false
  • Toggle: toggle

Editor defaults: {"automation":null,"timer":null,"command":null,"pad":null}

Literal value / selected resource
Browser URL
url
text

Editor defaults: {"automation":null,"timer":null,"command":null,"pad":null}

Example hint: http://localhost:3000/overlay

Supports variables
Raw resource
resource
text

Editor defaults: {"automation":null,"timer":null,"command":null,"pad":null}

Example hint: ScenesService

Supports variables
Raw method
method
text

Editor defaults: {"automation":null,"timer":null,"command":null,"pad":null}

Example hint: getScenes

Supports variables
Raw args JSON
argsJson
textarea

Editor defaults: {"automation":null,"timer":null,"command":null,"pad":null}

Example hint: []

Supports variables

Operations

Connection - Get status

get_status

Read connection/output status. Does not create a template variable.

Fields: No extra fields

Connection - Refresh scene/source catalog

refresh_catalog

Streamlabs only: refresh scene/source catalog; not the OBS browser refresh action.

Fields: No extra fields

Scenes - Get current scene

get_current_scene

Read current program scene. Does not create a template variable.

Fields: No extra fields

Scenes - Set scene

set_current_scene

Select a current scene and remember the previous scene for return.

Fields: sceneName

Scenes - Return to previous scene

previous_scene

Return to the remembered previous scene; fail if none is available.

Fields: No extra fields

Sources - Toggle / set source visibility

source_visibility

linked (default) changes all instances of the source; item changes only selected itemResourceId. Select targets from the Streamlabs catalog.

Fields: sceneName, sourceName, visibilityTarget, enabled

Audio - Toggle / set source mute

source_mute

Mute/unmute the selected audio source; missing state toggles.

Fields: sourceName, enabled

Stream / Record - Toggle streaming

stream_toggle

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Stream / Record - Start streaming

stream_start

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Stream / Record - Stop streaming

stream_stop

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Stream / Record - Toggle recording

record_toggle

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Stream / Record - Start recording

record_start

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Stream / Record - Stop recording

record_stop

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Stream / Record - Toggle replay buffer

replay_toggle

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Stream / Record - Start replay buffer

replay_start

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Stream / Record - Stop replay buffer

replay_stop

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Stream / Record - Save replay

replay_save

Control the named output in this provider only; start/stop/toggle/save have their literal meanings. Replay save requires an active replay buffer.

Fields: No extra fields

Advanced - Set browser source URL

browser_url

Require source and nonempty URL; update browser source URL.

Fields: sourceName, url

Advanced - Raw Streamlabs request

raw_request

Require resource/method; blank args JSON is []; invalid JSON fails.

Fields: resource, method, argsJson

Contract details

Declared Contexts
[
  "timer",
  "automation"
]
Picker Contexts
[
  "automation",
  "timer",
  "command",
  "pad"
]
Hidden From Picker
false
Required Variables
[]
Failure Behavior
See the behavior for local skips/errors and context entries for sequence continuation.
Outputs
[]

Examples

Illustrative configuration; replace fixture resources in the editor. This is not an import file.

{
  "operation": "get_current_scene"
}

Related entries

Source and verification

Source-reviewed for 2.8.0. Connected-service validation remains subject to release UAT.

  • src/features/automations.js — ACTION_REGISTRY.streamlabs_control
  • public/index.html — getBuilderActionEntries / createDefaultAction

Source revision: 472fb34b484eeef0b663d28cacb628a7b9f14ff1

Downloads and AI prompt
Download JSONDownload Markdown