### Start Recording - HTTP GET Request Source: https://vmixapi.com/index_function=StartStopRecording This example shows how to trigger the StartStopRecording function in vMix using an HTTP GET request. It targets the vMix API endpoint with the specified function. ```http http://127.0.0.1:8088/api/?Function=StartStopRecording ``` -------------------------------- ### AudioBusOn v24 Source: https://vmixapi.com/index_function=Restart Turn on the audio bus ```APIDOC ## AudioBusOn v24 ### Description Turns on the audio bus. ### Method GET ### Endpoint /api/?Function=AudioBusOn&Input=[InputName] ### Parameters #### Query Parameters - **Input** (string) - Required - The name or title of the Input. ### Request Example N/A ### Response #### Success Response (200) - No specific fields returned. #### Response Example N/A ``` -------------------------------- ### Remove Input Source: https://vmixapi.com/index_function=RemoveInput Removes a specified input from vMix. This can be done using input number, GUID, or name. Examples are provided for Companion, Web scripting, VB.NET, and HTTP GET requests. ```APIDOC ## POST /api/ ### Description Removes a specified input from vMix. This can be done using input number, GUID, or name. ### Method POST ### Endpoint /api/ ### Parameters #### Query Parameters - **Function** (string) - Required - Should be set to "RemoveInput". - **Input** (string) - Required - The input to remove. Can be referenced by input number, GUID, or name. ### Request Example ``` http://127.0.0.1:8088/api/?Function=RemoveInput&Input=My%20input ``` ### Response #### Success Response (200) (No specific success response details provided in the source text, typically an empty response or a status confirmation) #### Response Example (No specific response example provided in the source text) ``` -------------------------------- ### Audio API Source: https://vmixapi.com/index_function=StartPlayList This section covers endpoints related to audio control, including volume adjustments, bus management, solo functions, and plugin control. ```APIDOC ## Audio API Endpoints ### Audio Control This group of endpoints allows for direct control over audio playback and mixing. #### `AudioOn`, `AudioOff`, `AudioOnOff` - **Description**: Toggles audio on, off, or to its previous state. - **Method**: GET - **Endpoint**: `/api/AudioOn`, `/api/AudioOff`, `/api/AudioOnOff` #### `SetVolume` - **Description**: Sets the volume for a specific input. - **Method**: GET - **Endpoint**: `/api/SetVolume?value={volume}&input={input}` - **Query Parameters**: - **value** (integer) - Required - The volume level (0-100). - **input** (integer) - Optional - The input number to control. #### `SetVolumeFade` - **Description**: Sets the volume for a specific input with a fade effect. - **Method**: GET - **Endpoint**: `/api/SetVolumeFade?value={volume}&duration={duration}&input={input}` - **Query Parameters**: - **value** (integer) - Required - The target volume level (0-100). - **duration** (integer) - Required - The duration of the fade in milliseconds. - **input** (integer) - Optional - The input number to control. ### Audio Bus Control Endpoints for managing audio buses (A, B, X). #### `BusAAudioOn`, `BusAAudioOff`, `BusAAudioOnOff` - **Description**: Toggles audio on, off, or to its previous state for Bus A. - **Method**: GET - **Endpoint**: `/api/BusAAudioOn`, `/api/BusAAudioOff`, `/api/BusAAudioOnOff` #### `SetBusAVolume` - **Description**: Sets the volume for Bus A. - **Method**: GET - **Endpoint**: `/api/SetBusAVolume?value={volume}` - **Query Parameters**: - **value** (integer) - Required - The volume level (0-100). #### `SetBusAVolumeFade` - **Description**: Sets the volume for Bus A with a fade effect. - **Method**: GET - **Endpoint**: `/api/SetBusAVolumeFade?value={volume}&duration={duration}` - **Query Parameters**: - **value** (integer) - Required - The target volume level (0-100). - **duration** (integer) - Required - The duration of the fade in milliseconds. ### Solo Control Endpoints for managing solo audio functions. #### `SoloOn`, `SoloOff`, `SoloOnOff` - **Description**: Toggles solo mode on, off, or to its previous state for the selected input. - **Method**: GET - **Endpoint**: `/api/SoloOn`, `/api/SoloOff`, `/api/SoloOnOff` #### `SoloAllOff` - **Description**: Turns off solo mode for all inputs. - **Method**: GET - **Endpoint**: `/api/SoloAllOff` ### Master Audio Control Endpoints for controlling the master audio output. #### `MasterAudioOn`, `MasterAudioOff`, `MasterAudioOnOff` - **Description**: Toggles master audio on, off, or to its previous state. - **Method**: GET - **Endpoint**: `/api/MasterAudioOn`, `/api/MasterAudioOff`, `/api/MasterAudioOnOff` #### `SetMasterVolume` - **Description**: Sets the master volume level. - **Method**: GET - **Endpoint**: `/api/SetMasterVolume?value={volume}` - **Query Parameters**: - **value** (integer) - Required - The volume level (0-100). #### `SetMasterVolumeFade` - **Description**: Sets the master volume level with a fade effect. - **Method**: GET - **Endpoint**: `/api/SetMasterVolumeFade?value={volume}&duration={duration}` - **Query Parameters**: - **value** (integer) - Required - The target volume level (0-100). - **duration** (integer) - Required - The duration of the fade in milliseconds. ### Audio Channel Matrix Endpoints for managing audio channel matrix presets. #### `AudioChannelMatrixApplyPreset` - **Description**: Applies a specific audio channel matrix preset. - **Method**: GET - **Endpoint**: `/api/AudioChannelMatrixApplyPreset?preset={presetName}` - **Query Parameters**: - **preset** (string) - Required - The name of the preset to apply. ### Audio Mixer Endpoints for controlling the visibility of the audio mixer. #### `AudioMixerShowHide` - **Description**: Shows or hides the audio mixer window. - **Method**: GET - **Endpoint**: `/api/AudioMixerShowHide` ### Audio Plugins Endpoints for managing audio plugins. #### `AudioPluginOn`, `AudioPluginOff`, `AudioPluginOnOff` - **Description**: Toggles an audio plugin on, off, or to its previous state for a given input. - **Method**: GET - **Endpoint**: `/api/AudioPluginOn?input={input}&plugin={pluginId}`, `/api/AudioPluginOff?input={input}&plugin={pluginId}`, `/api/AudioPluginOnOff?input={input}&plugin={pluginId}` - **Query Parameters**: - **input** (integer) - Required - The input number. - **plugin** (integer) - Required - The ID of the plugin. #### `AudioPluginShow` - **Description**: Shows the configuration window for an audio plugin. - **Method**: GET - **Endpoint**: `/api/AudioPluginShow?input={input}&plugin={pluginId}` - **Query Parameters**: - **input** (integer) - Required - The input number. - **plugin** (integer) - Required - The ID of the plugin. ``` -------------------------------- ### Audio API Source: https://vmixapi.com/index_function=StartStopSRTOutput Commands related to audio control, including volume adjustments, bus management, soloing, and plugin control. ```APIDOC ## Audio Commands ### Description Controls various aspects of audio in vMix, including master volume, bus levels, soloing, and audio plugins. ### Method GET or POST (depending on specific command) ### Endpoint `/api/audio/{command}` ### Parameters * **command** (string) - The specific audio command to execute (e.g., `AudioOn`, `SetVolume`, `SoloOff`). * **value** (optional, number) - The value for commands that require it, such as volume levels or bus assignments. * **input** (optional, number) - The input number to apply the command to. ### Request Example ```json { "command": "SetVolume", "value": -6, "input": 1 } ``` ### Response #### Success Response (200) `OK` #### Response Example `OK` ``` -------------------------------- ### Start SRT Output using vMix API Source: https://vmixapi.com/index_function=StartSRTOutput This snippet demonstrates how to start an SRT output stream using the vMix API. It shows examples for different scripting environments, including Companion, Web scripting, VB.NET, HTTP GET requests, and TCP packets. The 'Value' parameter is optional and specifies the output number. ```Companion StartSRTOutput Value=0 ``` ```Web scripting Function=StartSRTOutput&Value=0 ``` ```VB.NET API.Function("StartSRTOutput", Value:="0") ``` ```HTTP GET http://127.0.0.1:8088/api/?Function=StartSRTOutput&Value=0 ``` ```TCP Packet FUNCTION StartSRTOutput Value=0\r\n ``` -------------------------------- ### Datasource Commands Source: https://vmixapi.com/index_function=SetOutputFullscreen Manage data sources, including navigation between rows and controlling playback. ```APIDOC ## DataSourceNextRow v24 ### Description Advances the data source to the next row. ### Method GET/POST ### Endpoint /api/datasourcenextrow ### Request Example ``` GET /api/datasourcenextrow ``` ### Response #### Success Response (200) - **status** (string) - Indicates success or failure. #### Response Example ```json { "status": "success" } ``` ``` -------------------------------- ### vMix API: MirrorOff Function Examples Source: https://vmixapi.com/index_function=MirrorOff Demonstrates how to call the 'MirrorOff' vMix API function using different methods. This includes examples for Companion custom commands, web scripting, VB.NET, HTTP GET requests, and raw TCP packets. The function requires an 'Input' parameter, which can be referenced by number, GUID, or name. ```Companion MirrorOff Input=My input ``` ```Web Scripting Function=MirrorOff&Input=My input ``` ```VB.NET API.Function("MirrorOff", Input:= "My input") ``` ```HTTP GET http://127.0.0.1:8088/api/?Function=MirrorOff&Input=My%20input ``` ```TCP FUNCTION MirrorOff Input=My input\r\n ``` -------------------------------- ### BusXAudioPluginShow API Source: https://vmixapi.com/index_function=BusXAudioPluginShow This API endpoint allows you to show the audio plugin editor for a specified plugin on a given bus. ```APIDOC ## GET /api/?Function=BusXAudioPluginShow ### Description Shows the audio plugin editor for the specified plugin on the given bus. ### Method GET ### Endpoint /api/ ### Parameters #### Query Parameters - **Function** (string) - Required - Should be set to "BusXAudioPluginShow". - **Value** (string) - Required - Specifies the bus and plugin number. Format: "bus,pluginNumber". - **bus** (string) - One of M, A, B, C, D, E, F, G. - **pluginNumber** (integer) - The plugin number (1 to n). ### Request Example ``` http://127.0.0.1:8088/api/?Function=BusXAudioPluginShow&Value=A,1 ``` ### Response #### Success Response (200) This endpoint typically returns an empty response or a success confirmation if the command is executed. The primary effect is the UI change in vMix. #### Response Example (No specific JSON response body is usually returned for this function.) ``` -------------------------------- ### Start Countdown Function Source: https://vmixapi.com/index_function=StartCountdown Initiates a countdown timer within vMix. Requires an input to be specified. This function is available in vMix versions 24 and later. Examples are provided for Companion, Web scripting, VB.NET, HTTP GET, and TCP ASCII. ```Companion StartCountdown Input=My input ``` ```Web scripting Function=StartCountdown&Input=My input ``` ```VB.NET API.Function("StartCountdown", Input:="My input") ``` ```HTTP GET http://127.0.0.1:8088/api/?Function=StartCountdown&Input=My%20input ``` ```TCP ASCII FUNCTION StartCountdown Input=My input\r\n ``` -------------------------------- ### Datasource Commands Source: https://vmixapi.com/index_function=StartStreaming Commands for controlling data sources, including navigating rows and controlling playback. ```APIDOC ## Datasource Commands ### Description Manage and interact with vMix data sources to dynamically update titles or other elements. ### Methods & Endpoints - **DataSourceNextRow** - **Method:** GET - **Endpoint:** `/api?Function=DataSourceNextRow&Input=X` - **Description:** Moves to the next row in the specified data source. - **Parameters:** - **Input** (integer) - Required - The input number of the data source. - **DataSourcePreviousRow** - **Method:** GET - **Endpoint:** `/api?Function=DataSourcePreviousRow&Input=X` - **Description:** Moves to the previous row in the specified data source. - **Parameters:** - **Input** (integer) - Required - The input number of the data source. - **DataSourceSelectRow** - **Method:** GET - **Endpoint:** `/api?Function=DataSourceSelectRow&Input=X&Row=Y` - **Description:** Selects a specific row in the data source. - **Parameters:** - **Input** (integer) - Required - The input number of the data source. - **Row** (integer) - Required - The row number to select. - **DataSourcePlay** - **Method:** GET - **Endpoint:** `/api?Function=DataSourcePlay&Input=X` - **Description:** Starts playback or updates the data source. - **Parameters:** - **Input** (integer) - Required - The input number of the data source. - **DataSourcePause** - **Method:** GET - **Endpoint:** `/api?Function=DataSourcePause&Input=X` - **Description:** Pauses the data source. - **Parameters:** - **Input** (integer) - Required - The input number of the data source. - **DataSourceAutoNextOn** - **Method:** GET - **Endpoint:** `/api?Function=DataSourceAutoNextOn&Input=X` - **Description:** Enables automatic row progression for the data source. - **Parameters:** - **Input** (integer) - Required - The input number of the data source. - **DataSourceAutoNextOff** - **Method:** GET - **Endpoint:** `/api?Function=DataSourceAutoNextOff&Input=X` - **Description:** Disables automatic row progression for the data source. - **Parameters:** - **Input** (integer) - Required - The input number of the data source. ### Request Example ```json { "query": "/api?Function=DataSourceSelectRow&Input=4&Row=5" } ``` ### Response Example (Success) ```json { "response": "OK" } ``` ``` -------------------------------- ### vMix API HTTP GET Request Example Source: https://vmixapi.com/index_function=OverlayInput4Zoom An example of how to make an HTTP GET request to the vMix API. This is a common method for controlling vMix remotely. The example uses the default local host and port, and demonstrates calling a specific function. ```http http://127.0.0.1:8088/api/?Function=OverlayInput4Zoom ``` -------------------------------- ### vMix API HTTP GET Request Example Source: https://vmixapi.com/index_function=DataSourcePreviousRow An example of how to make an HTTP GET request to the vMix API. This specific example retrieves data for the 'DataSourcePreviousRow' function, targeting a data source named 'Google Sheets' and a table named 'Sheet1'. ```http http://127.0.0.1:8088/api/?Function=DataSourcePreviousRow&Value=Google%20Sheets,Sheet1 ``` -------------------------------- ### Audio API Commands Source: https://vmixapi.com/index_function=QuickPlay Commands related to audio control, including volume, muting, bus management, and plugin manipulation. ```APIDOC ## Audio Commands ### Description This section covers commands for controlling audio levels, muting, soloing, bus audio, and audio plugins within vMix. ### Commands - **Audio** (v24) - **Audio v24** - **AudioAuto v24** - **AudioAutoOff v24** - **AudioAutoOn v24** - **AudioBus v24** - **AudioBusOff v24** - **AudioBusOn v24** - **AudioChannelMatrixApplyPreset v24** - **AudioMixerShowHide v24** - **AudioOff v24** - **AudioOn v24** - **AudioPluginOff v24** - **AudioPluginOn v24** - **AudioPluginOnOff v24** - **AudioPluginShow v24** - **BusAAudio v24** - **BusAAudioOff v24** - **BusAAudioOn v24** - **BusAAudioPluginOff v24** - **BusAAudioPluginOn v24** - **BusAAudioPluginOnOff v24** - **BusAAudioPluginShow v24** - **BusBAudio v24** - **BusBAudioOff v24** - **BusBAudioOn v24** - **BusBAudioPluginOff v24** - **BusBAudioPluginOn v24** - **BusBAudioPluginOnOff v24** - **BusBAudioPluginShow v24** - **BusXAudio v24** - **BusXAudioOff v24** - **BusXAudioOn v24** - **BusXAudioPluginOff v24** - **BusXAudioPluginOn v24** - **BusXAudioPluginOnOff v24** - **BusXAudioPluginShow v24** - **BusXSendToMaster v24** - **BusXSendToMasterOff v24** - **BusXSendToMasterOn v24** - **BusXSolo v24** - **BusXSoloOff v24** - **BusXSoloOn v24** - **MasterAudio v24** - **MasterAudioOff v24** - **MasterAudioOn v24** - **MasterAudioPluginOff v24** - **MasterAudioPluginOn v24** - **MasterAudioPluginOnOff v24** - **MasterAudioPluginShow v24** - **SetBalance v24** - **SetBusAVolume v24** - **SetBusAVolumeFade v28** - **SetBusBVolume v24** - **SetBusBVolumeFade v28** - **SetBusCVolume v24** - **SetBusCVolumeFade v28** - **SetBusDVolume v24** - **SetBusDVolumeFade v28** - **SetBusEVolume v24** - **SetBusEVolumeFade v28** - **SetBusFVolume v24** - **SetBusFVolumeFade v28** - **SetBusGVolume v24** - **SetBusGVolumeFade v28** - **SetGain v24** - **SetGainChannel1 v24** - **SetGainChannel2 v24** - **SetHeadphonesVolume v24** - **SetMasterVolume v24** - **SetMasterVolumeFade v28** - **SetVolume v24** - **SetVolumeBusMixer v27** - **SetVolumeBusMixerA v27** - **SetVolumeBusMixerB v27** - **SetVolumeBusMixerC v27** - **SetVolumeBusMixerD v27** - **SetVolumeBusMixerE v27** - **SetVolumeBusMixerF v27** - **SetVolumeBusMixerG v27** - **SetVolumeBusMixerM v27** - **SetVolumeChannel1 v24** - **SetVolumeChannel2 v24** - **SetVolumeChannelMixer v24** - **SetVolumeChannelMixer1 v27** - **SetVolumeChannelMixer10 v27** - **SetVolumeChannelMixer11 v27** - **SetVolumeChannelMixer12 v27** - **SetVolumeChannelMixer13 v27** - **SetVolumeChannelMixer14 v27** - **SetVolumeChannelMixer15 v27** - **SetVolumeChannelMixer16 v27** - **SetVolumeChannelMixer2 v27** - **SetVolumeChannelMixer3 v27** - **SetVolumeChannelMixer4 v27** - **SetVolumeChannelMixer5 v27** - **SetVolumeChannelMixer6 v27** - **SetVolumeChannelMixer7 v27** - **SetVolumeChannelMixer8 v27** - **SetVolumeChannelMixer9 v27** - **SetVolumeFade v24** - **Solo v24** - **SoloAllOff v27** - **SoloOff v24** - **SoloOn v24** - **SoloPFL v27** - **SoloPFLOff v27** - **SoloPFLOn v27** ``` -------------------------------- ### General Commands Source: https://vmixapi.com/index_function=StartSRTOutput General utility commands for vMix. ```APIDOC ## General Commands General utility commands for vMix. ### Commands - **ActivatorRefresh**: Refreshes the activator. - **KeyPress**: Simulates a key press. - **SendKeys**: Sends a sequence of key presses. ``` -------------------------------- ### ReplayCamera6 Function Example: HTTP GET Request Source: https://vmixapi.com/index_function=ReplayCamera6 Provides an example of how to call the 'ReplayCamera6' function using an HTTP GET request. This format is common for remote control and integration with other applications. ```http http://127.0.0.1:8088/api/?Function=ReplayCamera6 ``` -------------------------------- ### ReplayACamera8 vMix API Function Examples Source: https://vmixapi.com/index_function=ReplayACamera8 Demonstrates how to call the 'ReplayACamera8' function using different methods. This includes Companion custom commands, web scripting, VB.NET, HTTP GET requests, and TCP packets. Input referencing can be done by number, GUID, or name. ```Companion ReplayACamera8 ``` ```Web Scripting Function=ReplayACamera8 ``` ```VB.NET API.Function("ReplayACamera8") ``` ```HTTP GET http://127.0.0.1:8088/api/?Function=ReplayACamera8 ``` ```TCP Packet FUNCTION ReplayACamera8 \r\n ``` -------------------------------- ### Enable Bus Audio Plugin (Web Scripting) Source: https://vmixapi.com/index_function=BusXAudioPluginOn Turns on a specified audio plugin for a given bus using web scripting. This method constructs a URL with 'Function' and 'Value' parameters. ```http Function=BusXAudioPluginOn&Value=A,1 ``` -------------------------------- ### Control Audio Off with vMix API Source: https://vmixapi.com/index_function=AudioOff This snippet demonstrates how to mute a single input using the 'AudioOff' function in vMix. It includes examples for Companion custom commands, web scripting, VB.NET, HTTP GET requests, and raw TCP packets. Input referencing can be done by name, number, or GUID. ```companion AudioOff Input=My input ``` ```web Function=AudioOff&Input=My input ``` ```vb.net API.Function("AudioOff", Input:="My input") ``` ```http http://127.0.0.1:8088/api/?Function=AudioOff&Input=My%20input ``` ```tcp FUNCTION AudioOff Input=My input\r\n ``` -------------------------------- ### Datasource API Source: https://vmixapi.com/index_function=ReplayMarkInOut Manage datasource inputs, including navigating rows, pausing, playing, and selecting rows. ```APIDOC ## Datasource API Endpoints Control and navigate through datasource inputs. ### Datasource Navigation and Control - **DataSourceAutoNextOff v24**: Disables automatic advancement to the next row in a datasource. - **DataSourceAutoNextOn v24**: Enables automatic advancement to the next row in a datasource. - **DataSourceAutoNextOnOff v24**: Toggles automatic advancement to the next row in a datasource. - **DataSourceNextRow v24**: Advances the datasource to the next row. - **DataSourcePause v24**: Pauses the datasource. - **DataSourcePlay v24**: Plays the datasource. - **DataSourcePlayPause v24**: Toggles between play and pause for the datasource. - **DataSourcePreviousRow v24**: Navigates the datasource to the previous row. - **DataSourceSelectRow v24**: Selects a specific row in the datasource. ``` -------------------------------- ### Audio API - MasterAudioOn Source: https://vmixapi.com/index_function=ReplaySelectPreviousEvent Turns on the master audio. ```APIDOC ## GET /api/?Function=MasterAudioOn ### Description Turns on the master audio. ### Method GET ### Endpoint /api/?Function=MasterAudioOn ### Parameters None ### Request Example None ### Response #### Success Response (200) - Returns 'OK' if successful. #### Response Example OK ``` -------------------------------- ### Calling ReplayBCamera2 Function in vMix API Source: https://vmixapi.com/index_function=ReplayBCamera2 Demonstrates how to invoke the 'ReplayBCamera2' function using different methods. This function is used for replay-related actions. Examples cover Companion, web scripting, VB.NET, HTTP GET, and TCP packet formats. Input referencing is flexible, allowing by number, GUID, or name. ```Companion ReplayBCamera2 ``` ```Web Scripting Function=ReplayBCamera2 ``` ```VB.NET API.Function("ReplayBCamera2") ``` ```HTTP GET http://127.0.0.1:8088/api/?Function=ReplayBCamera2 ``` ```TCP FUNCTION ReplayBCamera2 \r\n ``` -------------------------------- ### Change Input Green Gain Level (vMix API) Source: https://vmixapi.com/index_function=SetCCGainG This function modifies the green gain level of a specified input in vMix. It requires the input to be referenced by name, number, or GUID, and the desired gain value. The gain is typically between 0 and 2. Examples are provided for web scripting, VB.NET, HTTP GET, and TCP packet formats. ```webscript Function=SetCCGainG&Input=My input&Value=1.2 ``` ```vbnet API.Function("SetCCGainG", Input:="My input", Value:="1.2") ``` ```http http://127.0.0.1:8088/api/?Function=SetCCGainG&Input=My%20input&Value=1.2 ``` ```tcp FUNCTION SetCCGainG Input=My input&Value=1.2\r\n ``` -------------------------------- ### BusXAudioPluginOn Source: https://vmixapi.com/index_function=BusXAudioPluginOn Turns on a specified audio plugin for a given bus. Supports various ways to reference inputs. ```APIDOC ## BusXAudioPluginOn ### Description Turns on a specified audio plugin for a given bus. ### Method GET ### Endpoint http://127.0.0.1:8088/api/?Function=BusXAudioPluginOn&Value={bus},{pluginNumber} ### Parameters #### Query Parameters - **Function** (string) - Required - The API function to call, in this case 'BusXAudioPluginOn'. - **Value** (string) - Required - Specifies the bus and plugin number. Format: `bus,pluginNumber`. - **bus** (string) - One of M, A, B, C, D, E, F, G. - **pluginNumber** (integer) - 1 to n plugins. ### Request Example ``` http://127.0.0.1:8088/api/?Function=BusXAudioPluginOn&Value=A,1 ``` ### Response #### Success Response (200) No specific response body is detailed, but the function should execute. #### Response Example (No example provided in source) ``` -------------------------------- ### Datasource Commands Source: https://vmixapi.com/index_function=ScriptStopAll Manage data sources, including navigating rows, playing, pausing, and setting the next row automatically. ```APIDOC ## Datasource Commands ### Description Control data source inputs, including moving to the next or previous row, playing/pausing, and enabling/disabling automatic advancement. ### Method POST ### Endpoint /api/datasource ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **command** (string) - Required - The specific datasource command (e.g., "DataSourceNextRow", "DataSourcePlayPause"). - **value** (string/number) - Optional - A value may be required for commands like "DataSourceSelectRow". - **input** (number) - Required - The input number of the datasource. ### Request Example ```json { "command": "DataSourceSelectRow", "value": 5, "input": 3 } ``` ### Response #### Success Response (200) - **status** (string) - "success" or "error" - **message** (string) - A message indicating the result of the command. #### Response Example ```json { "status": "success", "message": "Selected row 5 for datasource input 3." } ``` ``` -------------------------------- ### Preview Overlay Input 2 using vMix API Source: https://vmixapi.com/index_function=PreviewOverlayInput2 Demonstrates how to use the PreviewOverlayInput2 function in vMix across various platforms. This function is used to preview an overlay on a specified input. It requires an 'Input' parameter, which can be an input number, GUID, or name. Examples are provided for Companion, Web scripting, VB.NET, HTTP GET requests, and TCP packets. ```companion PreviewOverlayInput2 Input=My input ``` ```web Function=PreviewOverlayInput2&Input=My input ``` ```vb.net API.Function("PreviewOverlayInput2", Input:="My input") ``` ```http http://127.0.0.1:8088/api/?Function=PreviewOverlayInput2&Input=My%20input ``` ```tcp FUNCTION PreviewOverlayInput2 Input=My input\r\n ``` -------------------------------- ### Toggle Solo PFL in vMix (HTTP GET) Source: https://vmixapi.com/index_function=SoloPFL Example of how to toggle the Solo PFL function in vMix using an HTTP GET request. This method is useful for remote control and automation, typically sent to the vMix API endpoint. ```http http://127.0.0.1:8088/api/?Function=SoloPFL ``` -------------------------------- ### BusXAudio Function Examples Source: https://vmixapi.com/index_function=BusXAudio Demonstrates how to use the BusXAudio function to control audio buses in vMix. This function requires a 'Value' parameter specifying the bus (M, A, B, C, D, E, F, G). Examples are provided for Companion custom commands, Web scripting, VB.NET scripting, HTTP GET requests, and TCP packets. ```text BusXAudio Value=M ``` ```text Function=BusXAudio&Value=M ``` ```vb.net API.Function("BusXAudio", Value:=M) ``` ```http http://127.0.0.1:8088/api/?Function=BusXAudio&Value=M ``` ```tcp FUNCTION BusXAudio Value=M\r\n ``` -------------------------------- ### SetCCLiftR HTTP GET Request Example Source: https://vmixapi.com/index_function=SetCCLiftR Illustrates making an HTTP GET request to the vMix API to execute the SetCCLiftR function, including input and value parameters. ```http http://127.0.0.1:8088/api/?Function=SetCCLiftR&Input=My%20input&Value=-0.8 ``` -------------------------------- ### Datasource API Source: https://vmixapi.com/index_function=SetTickerSpeed Manage datasource inputs, including navigating rows and controlling playback. ```APIDOC ## Datasource API Endpoints ### Description This section details the API endpoints for managing datasource inputs in vMix. ### Endpoints - **DataSourceAutoNextOff v24**: Disable automatic next row for datasource. - **DataSourceAutoNextOn v24**: Enable automatic next row for datasource. - **DataSourceAutoNextOnOff v24**: Toggle automatic next row for datasource. - **DataSourceNextRow v24**: Move to the next row in the datasource. - **DataSourcePause v24**: Pause datasource playback. - **DataSourcePlay v24**: Play datasource. - **DataSourcePlayPause v24**: Play or pause datasource. - **DataSourcePreviousRow v24**: Move to the previous row in the datasource. - **DataSourceSelectRow v24**: Select a specific row in the datasource. ``` -------------------------------- ### GET /api/?Function=ReplayCamera3 Source: https://vmixapi.com/index_function=ReplayCamera3 This endpoint demonstrates how to use the ReplayCamera3 function via an HTTP GET request. It's a general example of calling a vMix API function. ```APIDOC ## GET /api/?Function=ReplayCamera3 ### Description This example shows how to call the ReplayCamera3 function using an HTTP GET request to the vMix API. ### Method GET ### Endpoint `/api/?Function=ReplayCamera3` ### Parameters #### Query Parameters - **Function** (string) - Required - The function to call, in this case `ReplayCamera3`. ### Request Example ``` http://127.0.0.1:8088/api/?Function=ReplayCamera3 ``` ### Response #### Success Response (200) *(No specific response format provided in the source text for this example, but typically vMix API returns success/failure status)* ``` -------------------------------- ### Datasource Commands Source: https://vmixapi.com/index_function=ReplayCamera5 Manage data sources, including navigating rows and controlling playback. ```APIDOC ## Datasource Commands ### Description Commands for interacting with data sources in vMix. ### Commands - **DataSourceAutoNextOff**: Disable automatic next row for data sources. - **DataSourceAutoNextOn**: Enable automatic next row for data sources. - **DataSourceAutoNextOnOff**: Toggle automatic next row for data sources. - **DataSourceNextRow**: Move to the next row in the data source. - **DataSourcePause**: Pause data source playback. - **DataSourcePlay**: Play data source. - **DataSourcePlayPause**: Play or pause data source. - **DataSourcePreviousRow**: Move to the previous row in the data source. - **DataSourceSelectRow**: Select a specific row in the data source. ``` -------------------------------- ### General API Source: https://vmixapi.com/index_function=StartPlayList General utility endpoints for vMix control. ```APIDOC ## General API Endpoints ### Refresh Activator - **`ActivatorRefresh`**: Refreshes the vMix activator, often used after external changes. - **Method**: GET - **Endpoint**: `/api/ActivatorRefresh` ### Keyboard Input Simulation - **`KeyPress`**: Simulates a single key press. - **Method**: GET - **Endpoint**: `/api/KeyPress?key={keyCode}` - **Query Parameters**: - **key** (string) - Required - The virtual key code of the key to press (e.g., "Enter", "A", "F1"). - **`SendKeys`**: Sends a sequence of keystrokes. - **Method**: GET - **Endpoint**: `/api/SendKeys?keys={keys}` - **Query Parameters**: - **keys** (string) - Required - A string representing the keys to send (e.g., "{Ctrl}c", "My Text"). Modifier keys should be enclosed in curly braces (e.g., {Ctrl}, {Alt}, {Shift}). ``` -------------------------------- ### Toggle SRT Output - HTTP GET Request Source: https://vmixapi.com/index_function=StartStopSRTOutput Initiates or stops an SRT output stream via an HTTP GET request. The example specifies the function and an optional output value. ```http http://127.0.0.1:8088/api/?Function=StartStopSRTOutput&Value=0 ``` -------------------------------- ### Datasource Commands Source: https://vmixapi.com/index_function=SetLayerDynamicCropX2 Commands for managing datasource inputs, including navigation and playback. ```APIDOC ## Datasource Commands This section details commands for managing datasource inputs. ### Navigation and Control - **DataSourceAutoNextOff** (v24) - **DataSourceAutoNextOn** (v24) - **DataSourceAutoNextOnOff** (v24) - **DataSourceNextRow** (v24) - **DataSourcePause** (v24) - **DataSourcePlay** (v24) - **DataSourcePlayPause** (v24) - **DataSourcePreviousRow** (v24) - **DataSourceSelectRow** (v24) ``` -------------------------------- ### Set Input Gamma (HTTP GET) Source: https://vmixapi.com/index_function=SetCCGammaR An example of making an HTTP GET request to the vMix API to modify an input's red gamma. The parameters are appended to the base API URL. ```http http://127.0.0.1:8088/api/?Function=SetCCGammaR&Input=My%20input&Value=-0.8 ``` -------------------------------- ### Datasource API Source: https://vmixapi.com/index_function=StartStopSRTOutput Commands for controlling data sources, including navigating rows, pausing, and playing. ```APIDOC ## Datasource Commands ### Description Manages data source operations within vMix, such as advancing to the next row, pausing playback, or selecting a specific row. ### Method GET or POST (depending on specific command) ### Endpoint `/api/datasource/{command}` ### Parameters * **command** (string) - The specific datasource command (e.g., `DataSourceNextRow`, `DataSourcePlay`). * **value** (optional, number) - Row number for `DataSourceSelectRow`. ### Request Example ```json { "command": "DataSourceSelectRow", "value": 5 } ``` ### Response #### Success Response (200) `OK` #### Response Example `OK` ``` -------------------------------- ### Replay Previous Playback - HTTP GET Request Source: https://vmixapi.com/index_function=ReplayPlayPrevious This example shows how to trigger the 'ReplayPlayPrevious' function using an HTTP GET request, including the API endpoint, function name, and channel parameter. ```http http://127.0.0.1:8088/api/?Function=ReplayPlayPrevious&Channel=1 ``` -------------------------------- ### Execute ReplayJumpFramesFastOn - HTTP GET Source: https://vmixapi.com/index_function=ReplayJumpFramesFastOn Example of how to execute the 'ReplayJumpFramesFastOn' vMix API function via an HTTP GET request. This demonstrates the URL structure including the host, port, and function parameters. ```http http://127.0.0.1:8088/api/?Function=ReplayJumpFramesFastOn&Value=30&Channel=1 ``` -------------------------------- ### vMix Input Referencing Examples Source: https://vmixapi.com/index_function=BusXSolo Illustrates different methods for referencing vMix inputs. These include referencing by input number, GUID, or name. Special references like 'Input in preview', 'Active input', and 'Input currently under mouse cursor' are also mentioned, though their compatibility may vary with different API functions. ```Plain Text 1 to n (Input number) 877bb3e7-58bd-46a1-85ce-0d673aec6bf5 (GUID) My input (Name) 0 (Input in preview) -1 (Active input) -3 (Input currently under mouse cursor) ``` -------------------------------- ### MarkOut Function Example via HTTP GET Source: https://vmixapi.com/index_function=MarkOut Illustrates how to trigger the MarkOut function by sending an HTTP GET request to the vMix API. This is commonly used for remote control and integration with other systems. ```http http://127.0.0.1:8088/api/?Function=MarkOut&Input=My%20input ``` -------------------------------- ### Datasource Commands Source: https://vmixapi.com/index_function=ReplayMarkOut Manage data source functionalities, including navigating rows and controlling playback. ```APIDOC ## Datasource Commands API endpoints for managing data sources in vMix. ### Datasource - **DataSourceAutoNextOff**: Disables automatic next row for data sources. - **DataSourceAutoNextOn**: Enables automatic next row for data sources. - **DataSourceAutoNextOnOff**: Toggles automatic next row for data sources. - **DataSourceNextRow**: Moves to the next row in the data source. - **DataSourcePause**: Pauses data source playback. - **DataSourcePlay**: Starts data source playback. - **DataSourcePlayPause**: Toggles data source play/pause. - **DataSourcePreviousRow**: Moves to the previous row in the data source. - **DataSourceSelectRow**: Selects a specific row in the data source. ``` -------------------------------- ### Input Referencing Examples Source: https://vmixapi.com/index_function=SetVolumeChannelMixer15 Illustrates different methods for referencing inputs within the vMix API. It covers referencing by input number, GUID, name, and special references like the preview or active input. ```plaintext Input by number: `1` to `n` Input by GUID: `877bb3e7-58bd-46a1-85ce-0d673aec6bf5` Input by name: `My input` Special references: * `0`: Input in preview * `-1`: Active input * `-3`: Input currently under mouse cursor (hover) ``` -------------------------------- ### Set Input Red Gain (HTTP GET) Source: https://vmixapi.com/index_function=SetCCGainR Changes an input's red gain level. Requires input name and a gain value between 0 and 2. This is an HTTP GET request example. ```http http://127.0.0.1:8088/api/?Function=SetCCGainR&Input=My%20input&Value=1.2 ``` -------------------------------- ### Datasource API Source: https://vmixapi.com/index_function=OverlayInput3Out Manage datasource functionalities, including navigating rows and controlling playback. ```APIDOC ## Datasource API Endpoints ### Description Provides endpoints for managing vMix datasources. ### Endpoints - **DataSourceAutoNextOff v24** - **DataSourceAutoNextOn v24** - **DataSourceAutoNextOnOff v24** - **DataSourceNextRow v24** - **DataSourcePause v24** - **DataSourcePlay v24** - **DataSourcePlayPause v24** - **DataSourcePreviousRow v24** - **DataSourceSelectRow v24** ``` -------------------------------- ### vMix ReplayCamera2 Function Examples Source: https://vmixapi.com/index_function=ReplayCamera2 Demonstrates how to use the ReplayCamera2 function in vMix across different platforms. It shows examples for Companion, Web scripting, VB.NET, HTTP GET requests, and raw TCP packets. ```companion ReplayCamera2 ``` ```webscript Function=ReplayCamera2 ``` ```vb.net API.Function("ReplayCamera2") ``` ```http http://127.0.0.1:8088/api/?Function=ReplayCamera2 ``` ```tcp FUNCTION ReplayCamera2 \r\n ```