"description":"A request batch which processes all requests serially, as fast as possible.\n\nNote: To introduce artificial delay, use the `Sleep` request and the `sleepMillis` request field.",
"description":"A request batch type which processes all requests serially, in sync with the graphics thread. Designed to provide high accuracy for animations.\n\nNote: To introduce artificial delay, use the `Sleep` request and the `sleepFrames` request field.",
"description":"A request batch type which processes all requests using all available threads in the thread pool.\n\nNote: This is mainly experimental, and only really shows its colors during requests which require lots of\nactive processing, like `GetSourceScreenshot`.",
"description":"The resource does not support being configured.\n\nThis is particularly relevant to transitions, where they do not always have changeable settings.",
"description":"Performing an action on the resource failed.",
"enumIdentifier":"ResourceActionFailed",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":701
},
{
"description":"Processing the request failed unexpectedly.\n\nNote: A comment is required to be provided by obs-websocket.",
"enumIdentifier":"RequestProcessingFailed",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":702
},
{
"description":"The combination of request fields cannot be used to perform an action.",
"enumIdentifier":"CannotAct",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":703
}
]
},
{
"enumType":"WebSocketCloseCode",
"enumIdentifiers":[
{
"description":"For internal use only to tell the request handler not to perform any close action.",
"enumIdentifier":"DontClose",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":0
},
{
"description":"Unknown reason, should never be used.",
"enumIdentifier":"UnknownReason",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4000
},
{
"description":"The server was unable to decode the incoming websocket message.",
"enumIdentifier":"MessageDecodeError",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4002
},
{
"description":"A data field is required but missing from the payload.",
"enumIdentifier":"MissingDataField",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4003
},
{
"description":"A data field's value type is invalid.",
"enumIdentifier":"InvalidDataFieldType",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4004
},
{
"description":"A data field's value is invalid.",
"enumIdentifier":"InvalidDataFieldValue",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4005
},
{
"description":"The specified `op` was invalid or missing.",
"enumIdentifier":"UnknownOpCode",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4006
},
{
"description":"The client sent a websocket message without first sending `Identify` message.",
"enumIdentifier":"NotIdentified",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4007
},
{
"description":"The client sent an `Identify` message while already identified.\n\nNote: Once a client has identified, only `Reidentify` may be used to change session parameters.",
"description":"The server detected the usage of an old version of the obs-websocket RPC protocol.",
"enumIdentifier":"UnsupportedRpcVersion",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4010
},
{
"description":"The websocket session has been invalidated by the obs-websocket server.\n\nNote: This is the code used by the `Kick` button in the UI Session List. If you receive this code, you must not automatically reconnect.",
"enumIdentifier":"SessionInvalidated",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4011
},
{
"description":"A requested feature is not supported due to hardware/software limitations.",
"enumIdentifier":"UnsupportedFeature",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":4012
}
]
},
{
"enumType":"WebSocketOpCode",
"enumIdentifiers":[
{
"description":"The initial message sent by obs-websocket to newly connected clients.",
"enumIdentifier":"Hello",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":0
},
{
"description":"The message sent by a newly connected client to obs-websocket in response to a `Hello`.",
"enumIdentifier":"Identify",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":1
},
{
"description":"The response sent by obs-websocket to a client after it has successfully identified with obs-websocket.",
"enumIdentifier":"Identified",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":2
},
{
"description":"The message sent by an already-identified client to update identification parameters.",
"enumIdentifier":"Reidentify",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":3
},
{
"description":"The message sent by obs-websocket containing an event payload.",
"enumIdentifier":"Event",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":5
},
{
"description":"The message sent by a client to obs-websocket to perform a request.",
"enumIdentifier":"Request",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":6
},
{
"description":"The message sent by obs-websocket in response to a particular request from a client.",
"enumIdentifier":"RequestResponse",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":7
},
{
"description":"The message sent by a client to obs-websocket to perform a batch of requests.",
"enumIdentifier":"RequestBatch",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":8
},
{
"description":"The message sent by obs-websocket in response to a particular batch of requests from a client.",
"enumIdentifier":"RequestBatchResponse",
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"enumValue":9
}
]
}
],
"requests":[
{
"description":"Gets the value of a \"slot\" from the selected persistent data realm.",
"requestType":"GetPersistentData",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"realm",
"valueType":"String",
"valueDescription":"The data realm to select. `OBS_WEBSOCKET_DATA_REALM_GLOBAL` or `OBS_WEBSOCKET_DATA_REALM_PROFILE`",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"slotName",
"valueType":"String",
"valueDescription":"The name of the slot to retrieve data from",
"valueDescription":"Value associated with the slot. `null` if not set"
}
]
},
{
"description":"Sets the value of a \"slot\" from the selected persistent data realm.",
"requestType":"SetPersistentData",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"realm",
"valueType":"String",
"valueDescription":"The data realm to select. `OBS_WEBSOCKET_DATA_REALM_GLOBAL` or `OBS_WEBSOCKET_DATA_REALM_PROFILE`",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"slotName",
"valueType":"String",
"valueDescription":"The name of the slot to retrieve data from",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"slotValue",
"valueType":"Any",
"valueDescription":"The value to apply to the slot",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets an array of all scene collections",
"requestType":"GetSceneCollectionList",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[],
"responseFields":[
{
"valueName":"currentSceneCollectionName",
"valueType":"String",
"valueDescription":"The name of the current scene collection"
},
{
"valueName":"sceneCollections",
"valueType":"Array<String>",
"valueDescription":"Array of all available scene collections"
}
]
},
{
"description":"Switches to a scene collection.\n\nNote: This will block until the collection has finished changing.",
"requestType":"SetCurrentSceneCollection",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"sceneCollectionName",
"valueType":"String",
"valueDescription":"Name of the scene collection to switch to",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Creates a new scene collection, switching to it in the process.\n\nNote: This will block until the collection has finished changing.",
"requestType":"CreateSceneCollection",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"sceneCollectionName",
"valueType":"String",
"valueDescription":"Name for the new scene collection",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets an array of all profiles",
"requestType":"GetProfileList",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[],
"responseFields":[
{
"valueName":"currentProfileName",
"valueType":"String",
"valueDescription":"The name of the current profile"
},
{
"valueName":"profiles",
"valueType":"Array<String>",
"valueDescription":"Array of all available profiles"
}
]
},
{
"description":"Switches to a profile.",
"requestType":"SetCurrentProfile",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"profileName",
"valueType":"String",
"valueDescription":"Name of the profile to switch to",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Creates a new profile, switching to it in the process",
"requestType":"CreateProfile",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"profileName",
"valueType":"String",
"valueDescription":"Name for the new profile",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Removes a profile. If the current profile is chosen, it will change to a different profile first.",
"requestType":"RemoveProfile",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"profileName",
"valueType":"String",
"valueDescription":"Name of the profile to remove",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets a parameter from the current profile's configuration.",
"requestType":"GetProfileParameter",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"parameterCategory",
"valueType":"String",
"valueDescription":"Category of the parameter to get",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"parameterName",
"valueType":"String",
"valueDescription":"Name of the parameter to get",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"parameterValue",
"valueType":"String",
"valueDescription":"Value associated with the parameter. `null` if not set and no default"
},
{
"valueName":"defaultParameterValue",
"valueType":"String",
"valueDescription":"Default value associated with the parameter. `null` if no default"
}
]
},
{
"description":"Sets the value of a parameter in the current profile's configuration.",
"requestType":"SetProfileParameter",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"parameterCategory",
"valueType":"String",
"valueDescription":"Category of the parameter to set",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"parameterName",
"valueType":"String",
"valueDescription":"Name of the parameter to set",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"parameterValue",
"valueType":"String",
"valueDescription":"Value of the parameter to set. Use `null` to delete",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets the current video settings.\n\nNote: To get the true FPS value, divide the FPS numerator by the FPS denominator. Example: `60000/1001`",
"requestType":"GetVideoSettings",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[],
"responseFields":[
{
"valueName":"fpsNumerator",
"valueType":"Number",
"valueDescription":"Numerator of the fractional FPS value"
},
{
"valueName":"fpsDenominator",
"valueType":"Number",
"valueDescription":"Denominator of the fractional FPS value"
},
{
"valueName":"baseWidth",
"valueType":"Number",
"valueDescription":"Width of the base (canvas) resolution in pixels"
},
{
"valueName":"baseHeight",
"valueType":"Number",
"valueDescription":"Height of the base (canvas) resolution in pixels"
},
{
"valueName":"outputWidth",
"valueType":"Number",
"valueDescription":"Width of the output resolution in pixels"
},
{
"valueName":"outputHeight",
"valueType":"Number",
"valueDescription":"Height of the output resolution in pixels"
}
]
},
{
"description":"Sets the current video settings.\n\nNote: Fields must be specified in pairs. For example, you cannot set only `baseWidth` without needing to specify `baseHeight`.",
"requestType":"SetVideoSettings",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"fpsNumerator",
"valueType":"Number",
"valueDescription":"Numerator of the fractional FPS value",
"valueRestrictions":">= 1",
"valueOptional":true,
"valueOptionalBehavior":"Not changed"
},
{
"valueName":"fpsDenominator",
"valueType":"Number",
"valueDescription":"Denominator of the fractional FPS value",
"valueRestrictions":">= 1",
"valueOptional":true,
"valueOptionalBehavior":"Not changed"
},
{
"valueName":"baseWidth",
"valueType":"Number",
"valueDescription":"Width of the base (canvas) resolution in pixels",
"valueRestrictions":">= 1, <= 4096",
"valueOptional":true,
"valueOptionalBehavior":"Not changed"
},
{
"valueName":"baseHeight",
"valueType":"Number",
"valueDescription":"Height of the base (canvas) resolution in pixels",
"valueRestrictions":">= 1, <= 4096",
"valueOptional":true,
"valueOptionalBehavior":"Not changed"
},
{
"valueName":"outputWidth",
"valueType":"Number",
"valueDescription":"Width of the output resolution in pixels",
"valueRestrictions":">= 1, <= 4096",
"valueOptional":true,
"valueOptionalBehavior":"Not changed"
},
{
"valueName":"outputHeight",
"valueType":"Number",
"valueDescription":"Height of the output resolution in pixels",
"valueRestrictions":">= 1, <= 4096",
"valueOptional":true,
"valueOptionalBehavior":"Not changed"
}
],
"responseFields":[]
},
{
"description":"Gets the current stream service settings (stream destination).",
"requestType":"GetStreamServiceSettings",
"complexity":4,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[],
"responseFields":[
{
"valueName":"streamServiceType",
"valueType":"String",
"valueDescription":"Stream service type, like `rtmp_custom` or `rtmp_common`"
},
{
"valueName":"streamServiceSettings",
"valueType":"Object",
"valueDescription":"Stream service settings"
}
]
},
{
"description":"Sets the current stream service settings (stream destination).\n\nNote: Simple RTMP settings can be set with type `rtmp_custom` and the settings fields `server` and `key`.",
"requestType":"SetStreamServiceSettings",
"complexity":4,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"requestFields":[
{
"valueName":"streamServiceType",
"valueType":"String",
"valueDescription":"Type of stream service to apply. Example: `rtmp_common` or `rtmp_custom`",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"streamServiceSettings",
"valueType":"Object",
"valueDescription":"Settings to apply to the service",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets data about the current plugin and RPC version.",
"description":"Call a request registered to a vendor.\n\nA vendor is a unique name registered by a third-party plugin or script, which allows for custom requests and events to be added to obs-websocket.\nIf a plugin or script implements vendor requests or events, documentation is expected to be provided with them.",
"description":"Sleeps for a time duration or number of frames. Only available in request batches with types `SERIAL_REALTIME` or `SERIAL_FRAME`.",
"requestType":"Sleep",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"general",
"requestFields":[
{
"valueName":"sleepMillis",
"valueType":"Number",
"valueDescription":"Number of milliseconds to sleep for (if `SERIAL_REALTIME` mode)",
"valueRestrictions":">= 0, <= 50000",
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sleepFrames",
"valueType":"Number",
"valueDescription":"Number of frames to sleep for (if `SERIAL_FRAME` mode)",
"valueRestrictions":">= 0, <= 10000",
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets an array of all inputs in OBS.",
"requestType":"GetInputList",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputKind",
"valueType":"String",
"valueDescription":"Restrict the array to only inputs of the specified kind",
"valueRestrictions":null,
"valueOptional":true,
"valueOptionalBehavior":"All kinds included"
}
],
"responseFields":[
{
"valueName":"inputs",
"valueType":"Array<Object>",
"valueDescription":"Array of inputs"
}
]
},
{
"description":"Gets an array of all available input kinds in OBS.",
"requestType":"GetInputKindList",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"unversioned",
"valueType":"Boolean",
"valueDescription":"True == Return all kinds as unversioned, False == Return with version suffixes (if available)",
"valueRestrictions":null,
"valueOptional":true,
"valueOptionalBehavior":"false"
}
],
"responseFields":[
{
"valueName":"inputKinds",
"valueType":"Array<String>",
"valueDescription":"Array of input kinds"
}
]
},
{
"description":"Creates a new input, adding it as a scene item to the specified scene.",
"requestType":"CreateInput",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene to add the input to as a scene item",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the new input to created",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"inputKind",
"valueType":"String",
"valueDescription":"The kind of input to be created",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"inputSettings",
"valueType":"Object",
"valueDescription":"Settings object to initialize the input with",
"valueRestrictions":null,
"valueOptional":true,
"valueOptionalBehavior":"Default settings used"
},
{
"valueName":"sceneItemEnabled",
"valueType":"Boolean",
"valueDescription":"Whether to set the created scene item to enabled or disabled",
"valueRestrictions":null,
"valueOptional":true,
"valueOptionalBehavior":"True"
}
],
"responseFields":[
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"ID of the newly created scene item"
}
]
},
{
"description":"Removes an existing input.\n\nNote: Will immediately remove all associated scene items.",
"requestType":"RemoveInput",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to remove",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Sets the name of an input (rename).",
"requestType":"SetInputName",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Current input name",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"newInputName",
"valueType":"String",
"valueDescription":"New name for the input",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets the default settings for an input kind.",
"requestType":"GetInputDefaultSettings",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputKind",
"valueType":"String",
"valueDescription":"Input kind to get the default settings for",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"defaultInputSettings",
"valueType":"Object",
"valueDescription":"Object of default settings for the input kind"
}
]
},
{
"description":"Gets the settings of an input.\n\nNote: Does not include defaults. To create the entire settings object, overlay `inputSettings` over the `defaultInputSettings` provided by `GetInputDefaultSettings`.",
"requestType":"GetInputSettings",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to get the settings of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"inputSettings",
"valueType":"Object",
"valueDescription":"Object of settings for the input"
},
{
"valueName":"inputKind",
"valueType":"String",
"valueDescription":"The kind of the input"
}
]
},
{
"description":"Sets the settings of an input.",
"requestType":"SetInputSettings",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to set the settings of",
"description":"Gets the audio mute state of an input.",
"requestType":"GetInputMute",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of input to get the mute state of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"inputMuted",
"valueType":"Boolean",
"valueDescription":"Whether the input is muted"
}
]
},
{
"description":"Sets the audio mute state of an input.",
"requestType":"SetInputMute",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to set the mute state of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"inputMuted",
"valueType":"Boolean",
"valueDescription":"Whether to mute the input or not",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Toggles the audio mute state of an input.",
"requestType":"ToggleInputMute",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to toggle the mute state of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"inputMuted",
"valueType":"Boolean",
"valueDescription":"Whether the input has been muted or unmuted"
}
]
},
{
"description":"Gets the current volume setting of an input.",
"requestType":"GetInputVolume",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to get the volume of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"inputVolumeMul",
"valueType":"Number",
"valueDescription":"Volume setting in mul"
},
{
"valueName":"inputVolumeDb",
"valueType":"Number",
"valueDescription":"Volume setting in dB"
}
]
},
{
"description":"Sets the volume setting of an input.",
"requestType":"SetInputVolume",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to set the volume of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"inputVolumeMul",
"valueType":"Number",
"valueDescription":"Volume setting in mul",
"valueRestrictions":">= 0, <= 20",
"valueOptional":true,
"valueOptionalBehavior":"`inputVolumeDb` should be specified"
},
{
"valueName":"inputVolumeDb",
"valueType":"Number",
"valueDescription":"Volume setting in dB",
"valueRestrictions":">= -100, <= -26",
"valueOptional":true,
"valueOptionalBehavior":"`inputVolumeMul` should be specified"
}
],
"responseFields":[]
},
{
"description":"Gets the audio sync offset of an input.\n\nNote: The audio sync offset can be negative too!",
"requestType":"GetInputAudioSyncOffset",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to get the audio sync offset of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"inputAudioSyncOffset",
"valueType":"Number",
"valueDescription":"Audio sync offset in milliseconds"
}
]
},
{
"description":"Sets the audio sync offset of an input.",
"requestType":"SetInputAudioSyncOffset",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to set the audio sync offset of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"inputAudioSyncOffset",
"valueType":"Number",
"valueDescription":"New audio sync offset in milliseconds",
"valueRestrictions":">= -950, <= 20000",
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets the audio monitor type of an input.\n\nThe available audio monitor types are:\n- `OBS_MONITORING_TYPE_NONE`\n- `OBS_MONITORING_TYPE_MONITOR_ONLY`\n- `OBS_MONITORING_TYPE_MONITOR_AND_OUTPUT`",
"requestType":"GetInputAudioMonitorType",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to get the audio monitor type of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"monitorType",
"valueType":"String",
"valueDescription":"Audio monitor type"
}
]
},
{
"description":"Sets the audio monitor type of an input.",
"requestType":"SetInputAudioMonitorType",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input to set the audio monitor type of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"monitorType",
"valueType":"String",
"valueDescription":"Audio monitor type",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets the items of a list property from an input's properties.\n\nNote: Use this in cases where an input provides a dynamic, selectable list of items. For example, display capture, where it provides a list of available displays.",
"valueDescription":"Name of the list property to get the items of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"propertyItems",
"valueType":"Array<Object>",
"valueDescription":"Array of items in the list property"
}
]
},
{
"description":"Presses a button in the properties of an input.\n\nNote: Use this in cases where there is a button in the properties of an input that cannot be accessed in any other way. For example, browser sources, where there is a refresh button.",
"requestType":"PressInputPropertiesButton",
"complexity":4,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"inputs",
"requestFields":[
{
"valueName":"inputName",
"valueType":"String",
"valueDescription":"Name of the input",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"propertyName",
"valueType":"String",
"valueDescription":"Name of the button property to press",
"description":"Gets a list of all scene items in a scene.\n\nScenes only",
"requestType":"GetSceneItemList",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene to get the items of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"sceneItems",
"valueType":"Array<Object>",
"valueDescription":"Array of scene items in the scene"
}
]
},
{
"description":"Basically GetSceneItemList, but for groups.\n\nUsing groups at all in OBS is discouraged, as they are very broken under the hood.\n\nGroups only",
"requestType":"GetGroupItemList",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the group to get the items of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"sceneItems",
"valueType":"Array<Object>",
"valueDescription":"Array of scene items in the group"
}
]
},
{
"description":"Searches a scene for a source, and returns its id.\n\nScenes and Groups",
"requestType":"GetSceneItemId",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene or group to search in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sourceName",
"valueType":"String",
"valueDescription":"Name of the source to find",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item"
}
]
},
{
"description":"Creates a new scene item using a source.\n\nScenes only",
"requestType":"CreateSceneItem",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene to create the new item in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sourceName",
"valueType":"String",
"valueDescription":"Name of the source to add to the scene",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemEnabled",
"valueType":"Boolean",
"valueDescription":"Enable state to apply to the scene item on creation",
"valueRestrictions":null,
"valueOptional":true,
"valueOptionalBehavior":"True"
}
],
"responseFields":[
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item"
}
]
},
{
"description":"Removes a scene item from a scene.\n\nScenes only",
"requestType":"RemoveSceneItem",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Duplicates a scene item, copying all transform and crop info.\n\nScenes only",
"requestType":"DuplicateSceneItem",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"destinationSceneName",
"valueType":"String",
"valueDescription":"Name of the scene to create the duplicated item in",
"valueRestrictions":null,
"valueOptional":true,
"valueOptionalBehavior":"`sceneName` is assumed"
}
],
"responseFields":[
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the duplicated scene item"
}
]
},
{
"description":"Gets the transform and crop info of a scene item.\n\nScenes and Groups",
"requestType":"GetSceneItemTransform",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"sceneItemTransform",
"valueType":"Object",
"valueDescription":"Object containing scene item transform info"
}
]
},
{
"description":"Sets the transform and crop info of a scene item.",
"requestType":"SetSceneItemTransform",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemTransform",
"valueType":"Object",
"valueDescription":"Object containing scene item transform info to update",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets the enable state of a scene item.\n\nScenes and Groups",
"requestType":"GetSceneItemEnabled",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"sceneItemEnabled",
"valueType":"Boolean",
"valueDescription":"Whether the scene item is enabled. `true` for enabled, `false` for disabled"
}
]
},
{
"description":"Sets the enable state of a scene item.\n\nScenes and Groups",
"requestType":"SetSceneItemEnabled",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemEnabled",
"valueType":"Boolean",
"valueDescription":"New enable state of the scene item",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets the lock state of a scene item.\n\nScenes and Groups",
"requestType":"GetSceneItemLocked",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"sceneItemLocked",
"valueType":"Boolean",
"valueDescription":"Whether the scene item is locked. `true` for locked, `false` for unlocked"
}
]
},
{
"description":"Sets the lock state of a scene item.\n\nScenes and Group",
"requestType":"SetSceneItemLocked",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemLocked",
"valueType":"Boolean",
"valueDescription":"New lock state of the scene item",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets the index position of a scene item in a scene.\n\nAn index of 0 is at the bottom of the source list in the UI.\n\nScenes and Groups",
"requestType":"GetSceneItemIndex",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"sceneItemIndex",
"valueType":"Number",
"valueDescription":"Index position of the scene item"
}
]
},
{
"description":"Sets the index position of a scene item in a scene.\n\nScenes and Groups",
"requestType":"SetSceneItemIndex",
"complexity":3,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"scene items",
"requestFields":[
{
"valueName":"sceneName",
"valueType":"String",
"valueDescription":"Name of the scene the item is in",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemId",
"valueType":"Number",
"valueDescription":"Numeric ID of the scene item",
"valueRestrictions":">= 0",
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"sceneItemIndex",
"valueType":"Number",
"valueDescription":"New index position of the scene item",
"valueDescription":"Name of the scene to be renamed",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"newSceneName",
"valueType":"String",
"valueDescription":"New name for the scene",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[]
},
{
"description":"Gets the active and show state of a source.\n\n**Compatible with inputs and scenes.**",
"requestType":"GetSourceActive",
"complexity":2,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"sources",
"requestFields":[
{
"valueName":"sourceName",
"valueType":"String",
"valueDescription":"Name of the source to get the active state of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
}
],
"responseFields":[
{
"valueName":"videoActive",
"valueType":"Boolean",
"valueDescription":"Whether the source is showing in Program"
},
{
"valueName":"videoShowing",
"valueType":"Boolean",
"valueDescription":"Whether the source is showing in the UI (Preview, Projector, Properties)"
}
]
},
{
"description":"Gets a Base64-encoded screenshot of a source.\n\nThe `imageWidth` and `imageHeight` parameters are treated as \"scale to inner\", meaning the smallest ratio will be used and the aspect ratio of the original resolution is kept.\nIf `imageWidth` and `imageHeight` are not specified, the compressed image will use the full resolution of the source.\n\n**Compatible with inputs and scenes.**",
"requestType":"GetSourceScreenshot",
"complexity":4,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"sources",
"requestFields":[
{
"valueName":"sourceName",
"valueType":"String",
"valueDescription":"Name of the source to take a screenshot of",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"imageFormat",
"valueType":"String",
"valueDescription":"Image compression format to use. Use `GetVersion` to get compatible image formats",
"valueRestrictions":null,
"valueOptional":false,
"valueOptionalBehavior":null
},
{
"valueName":"imageWidth",
"valueType":"Number",
"valueDescription":"Width to scale the screenshot to",
"valueRestrictions":">= 8, <= 4096",
"valueOptional":true,
"valueOptionalBehavior":"Source value is used"
},
{
"valueName":"imageHeight",
"valueType":"Number",
"valueDescription":"Height to scale the screenshot to",
"valueRestrictions":">= 8, <= 4096",
"valueOptional":true,
"valueOptionalBehavior":"Source value is used"
},
{
"valueName":"imageCompressionQuality",
"valueType":"Number",
"valueDescription":"Compression quality to use. 0 for high compression, 100 for uncompressed. -1 to use \"default\" (whatever that means, idk)",
"valueRestrictions":">= -1, <= 100",
"valueOptional":true,
"valueOptionalBehavior":"-1"
}
],
"responseFields":[
{
"valueName":"imageData",
"valueType":"String",
"valueDescription":"Base64-encoded screenshot"
}
]
},
{
"description":"Saves a screenshot of a source to the filesystem.\n\nThe `imageWidth` and `imageHeight` parameters are treated as \"scale to inner\", meaning the smallest ratio will be used and the aspect ratio of the original resolution is kept.\nIf `imageWidth` and `imageHeight` are not specified, the compressed image will use the full resolution of the source.\n\n**Compatible with inputs and scenes.**",
"description":"The current scene collection has begun changing.\n\nNote: We recommend using this event to trigger a pause of all polling requests, as performing any requests during a\nscene collection change is considered undefined behavior and can cause crashes!",
"eventType":"CurrentSceneCollectionChanging",
"eventSubscription":"Config",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"dataFields":[
{
"valueName":"sceneCollectionName",
"valueType":"String",
"valueDescription":"Name of the current scene collection"
}
]
},
{
"description":"The current scene collection has changed.\n\nNote: If polling has been paused during `CurrentSceneCollectionChanging`, this is the que to restart polling.",
"eventType":"CurrentSceneCollectionChanged",
"eventSubscription":"Config",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"dataFields":[
{
"valueName":"sceneCollectionName",
"valueType":"String",
"valueDescription":"Name of the new scene collection"
}
]
},
{
"description":"The scene collection list has changed.",
"eventType":"SceneCollectionListChanged",
"eventSubscription":"Config",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"dataFields":[
{
"valueName":"sceneCollections",
"valueType":"Array<String>",
"valueDescription":"Updated list of scene collections"
}
]
},
{
"description":"The current profile has begun changing.",
"eventType":"CurrentProfileChanging",
"eventSubscription":"Config",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"dataFields":[
{
"valueName":"profileName",
"valueType":"String",
"valueDescription":"Name of the current profile"
}
]
},
{
"description":"The current profile has changed.",
"eventType":"CurrentProfileChanged",
"eventSubscription":"Config",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"dataFields":[
{
"valueName":"profileName",
"valueType":"String",
"valueDescription":"Name of the new profile"
}
]
},
{
"description":"The profile list has changed.",
"eventType":"ProfileListChanged",
"eventSubscription":"Config",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"config",
"dataFields":[
{
"valueName":"profiles",
"valueType":"Array<String>",
"valueDescription":"Updated list of profiles"
}
]
},
{
"description":"OBS has begun the shutdown process.",
"eventType":"ExitStarted",
"eventSubscription":"General",
"complexity":1,
"rpcVersion":"1",
"deprecated":false,
"initialVersion":"5.0.0",
"category":"general",
"dataFields":[]
},
{
"description":"Studio mode has been enabled or disabled.",
"description":"An event has been emitted from a vendor.\n\nA vendor is a unique name registered by a third-party plugin or script, which allows for custom requests and events to be added to obs-websocket.\nIf a plugin or script implements vendor requests or events, documentation is expected to be provided with them.",