Recording

Edit

Toggle Recording #

Toggles recording on or off in the selected OBS instance.

Use this when the same button should start recording if OBS is idle, or stop recording if OBS is already recording.

Box Name Type Description
OBS Dropdown OBS to send this command to (if using multiple OBS)

OBS WebSocket 5 Request: ToggleRecord

No request fields — starts recording if idle, stops it if active.

Response Field Type Description
outputActive Boolean true if recording is now active, false if it was stopped.


Edit

Start Recording #

Starts recording in the selected OBS instance.

Use this when you explicitly want OBS to begin a recording. If OBS is already recording, OBS may ignore the request or return an error depending on the OBS WebSocket version.

Box Name Type Description
OBS Dropdown OBS to send this command to (if using multiple OBS)

OBS WebSocket 5 Request: StartRecord

No request fields — starts the configured recording output immediately.


Edit

Stop Recording #

Stops the active recording in the selected OBS instance.

Use this when you explicitly want OBS to finish the current recording. The final file location and format are controlled by your OBS recording settings.

Box Name Type Description
OBS Dropdown OBS to send this command to (if using multiple OBS)

OBS WebSocket 5 Request: StopRecord

No request fields — stops and finalizes the current recording.

Response Field Type Description
outputPath String The file path of the saved recording (e.g. C:/Videos/recording.mkv).


Edit

Pause Recording #

Pauses the active recording in the selected OBS instance.

Use this when OBS is currently recording and you want to pause the recording without ending the recording file.

Box Name Type Description
OBS Dropdown OBS to send this command to (if using multiple OBS)

OBS WebSocket 5 Request: PauseRecord

No request fields — pauses the active recording. Use Resume Recording to continue.


Edit

Resume Recording #

Resumes the active recording in the selected OBS instance if it is paused.

Use this after Pause Recording to continue recording into the same recording session.

Box Name Type Description
OBS Dropdown OBS to send this command to (if using multiple OBS)

OBS WebSocket 5 Request: ResumeRecord

No request fields — resumes a paused recording.


Edit

Control Replay Buffer #

Controls the OBS Replay Buffer — Start, Stop, or Toggle it using the dropdown.

Box Name Type Description
OBS Dropdown OBS to send this command to, if using multiple OBS connections.
Action Dropdown Whether to Start, Stop, or Toggle the Replay Buffer.

The Replay Buffer continuously records the last N seconds of your stream/output in memory. Use Save Replay Buffer to save the current buffer to a file, and Get Last Replay Buffer to retrieve the saved file path.

The Replay Buffer must be enabled in OBS before using this command. To enable it:

  1. Open OBS and go to Settings (bottom right)
  2. Select Output on the left
  3. Set Output Mode to Advanced if not already selected
  4. Open the Replay Buffer tab
  5. Check Enable Replay Buffer
  6. Set Maximum Replay Time (e.g. 30, 60, or 120 seconds)
  7. Click Apply and OK

OBS WebSocket 5 Request: StartReplayBuffer / StopReplayBuffer / ToggleReplayBuffer

Action Request Sent
Start StartReplayBuffer
Stop StopReplayBuffer
Toggle ToggleReplayBuffer

ToggleReplayBuffer returns an outputActive boolean indicating whether the buffer is now active.


Edit

Save Replay Buffer #

Saves the current contents of the OBS Replay Buffer to a file.

Box Name Type Description
OBS Dropdown OBS to send this command to, if using multiple OBS connections.

The Replay Buffer must be running when this command is executed, otherwise OBS will ignore it. The file is saved to the path and format configured in OBS under Settings → Output → Replay Buffer.

The Replay Buffer must be enabled in OBS before using this command. To enable it:

  1. Open OBS and go to Settings (bottom right)
  2. Select Output on the left
  3. Set Output Mode to Advanced if not already selected
  4. Open the Replay Buffer tab
  5. Check Enable Replay Buffer
  6. Set Maximum Replay Time (e.g. 30, 60, or 120 seconds)
  7. Click Apply and OK

Use Control Replay Buffer to start the buffer, and Get Last Replay Buffer to retrieve the saved file path after saving.

OBS WebSocket 5 Request: SaveReplayBuffer

No request fields — saves the buffer immediately using OBS’s configured output path and format.


Edit

Get Last Replay Buffer #

Gets the file path of the last saved Replay Buffer recording and saves it as a string variable.

Box Name Type Description
OBS Dropdown OBS to send this command to, if using multiple OBS connections.
Save Variable As String Variable name to save the file path.

The Replay Buffer must be enabled and have been saved at least once in the current OBS session for this to return a path. To enable it:

  1. Open OBS and go to Settings (bottom right)
  2. Select Output on the left
  3. Set Output Mode to Advanced if not already selected
  4. Open the Replay Buffer tab
  5. Check Enable Replay Buffer
  6. Set Maximum Replay Time (e.g. 30, 60, or 120 seconds)
  7. Click Apply and OK

Use this command after Save Replay Buffer to know the exact path where the clip was saved, e.g. to move, rename, or upload the file.

Saved Value:

Value Type Description
savedVariable String Full file path of the last saved Replay Buffer clip (e.g. C:/Replays/Replay 2024-01-15 18-30-00.mkv).
undefined Undefined Saved if OBS is not connected, ws5 is not in use, or no replay has been saved yet in the current session.

OBS WebSocket 5 Request: GetLastReplayBufferReplay

No request fields.

Response Field Type Description
savedReplayPath String Full local file path of the last saved replay. Saved directly to your variable.

Example SAMMI Response:

C:/Users/streamer/Videos/Replays/Replay 2024-01-15 18-30-00.mkv


Edit

Get Replay Buffer Status #

Gets the current active state of the OBS Replay Buffer and saves it as a boolean.

Box Name Type Description
OBS Dropdown OBS to send this command to, if using multiple OBS connections.
Save Variable As String Variable name to save the status.

Useful for conditional logic — e.g. only trigger a save if the buffer is actually running.

The Replay Buffer must be enabled in OBS for it to ever report true. To enable it:

  1. Open OBS and go to Settings (bottom right)
  2. Select Output on the left
  3. Set Output Mode to Advanced if not already selected
  4. Open the Replay Buffer tab
  5. Check Enable Replay Buffer
  6. Set Maximum Replay Time (e.g. 30, 60, or 120 seconds)
  7. Click Apply and OK

Saved Value:

Value Type Description
true Boolean Replay Buffer is currently active and recording.
false Boolean Replay Buffer is stopped.
undefined Undefined Saved if OBS is not connected or ws5 is not in use.

OBS WebSocket 5 Request: GetReplayBufferStatus

No request fields.

Response Field Type Description
outputActive Boolean Whether the Replay Buffer is currently active. Saved directly to your variable.

Example SAMMI Response:

true


Edit

Get Recording Status #

Gets the current OBS recording status and saves it as an object.

Box Name Type Description
OBS Dropdown OBS to send this command to, if using multiple OBS connections.
Save Variable As String Variable name to save the status object.

Use Object Get Variable to read individual fields from the returned object.

Saved Payload:

Variable Name Type Description
outputActive Boolean Whether recording is currently active.
outputPaused Boolean Whether recording is currently paused.
outputTimecode String Current recording timecode (HH:MM:SS.mmm).
outputDuration Number Duration of the current recording in milliseconds.
outputBytes Number Total bytes written to the recording file so far.

OBS WebSocket 5 Request: GetRecordStatus

No request fields.

Example SAMMI Response Object:

{
  "outputActive": true,
  "outputPaused": false,
  "outputTimecode": "00:05:30.000",
  "outputDuration": 330000,
  "outputBytes": 123456789
}