Skip to main content

overwolf.settings API

Use this API to view and modify one of the following Overwolf settings properties:

  • Hotkeys – register a function for a given hotkey, or retrieve an existing hotkey key combination.
  • Retrieve the current Overwolf user language.
  • Video (i.e., folder location, capture settings, FPS settings, etc.).

Special OW URL's

You can also use the following helpful URLs to open the Overwolf settings and hotkey windows:

  • overwolf://settings
    A clickable link that opens the Overwolf settings window from your app.

  • overwolf://settings/subscriptions
    A clickable link that opens the Overwolf Subscriptions settings window from your app.

  • overwolf://settings/games-overlay
    A clickable link that opens the Overwolf Overlay and Hotkeys settings window from your app.

  • overwolf://settings/games-overlay?hotkey=hotkey_name_in_manifest
    A clickable link that opens the Overwolf Overlay and Hotkeys settings window from your app, and then focuses on the stated hotkey. This should be the same hotkey name as written in the manifest.json.

    Note that this means you can’t focus on Overwolf’s built-in hotkeys or hotkeys of other apps.

  • You can even link into the hotkeys of a specific game settings:
    overwolf://settings/games-overlay?hotkey=hotkey_name_in_manifest&gameId=game_id

Read more about how to use the overwolf.settings.hotkeys API in our Hotkeys best practices guide.

Methods Reference

Events Reference

Types Reference

getHotKey(featureId, callback)

Version added: 0.78

Permissions required: Hotkeys

Returns the hotkey assigned to a given feature id by calling the callback.

OBSOLETE

This function is obsolete. Instead, please use overwolf.settings.hotkeys.get().

ParameterTypeDescription
featureIdstringThe feature id for which to get the set hotkey
callbackfunctionA callback function which will be called with the status of the request

Callback argument: Success

A callback function which will be called with the status of the request

{ 
"status": "success",
"hotkey ": "Ctrl+F2"
}

registerHotKey(actionId, callback)

Version added: 0.78

Permissions required: Hotkeys

Registers a callback for a given hotkey action.

OBSOLETE

This function is obsolete. Instead, please register to the overwolf.settings.hotkeys.onPressed event.

ParameterTypeDescription
actionIdstringThe action id for which to register the callback
callbackfunctionThe function to run when the hotkey is pressed
important

If you are using a transparnet background controller (window), you must register the hotkey in that window.

Callback argument: Success

On successful registration, the callback function which will be called when the hotkey is pressed. A Note regarding hotkeys: Shift can only be combined with the F keys.

{ 
"status": "success",
"hotkey ": "Ctrl+F2"
}

Callback argument: Failure

If the registration had failed, the callback function will be called immediately with the status "error" and another property, “error”, indicating the reason for the failure.

{ "status": "error", "error": "something went wrong..." }

Usage Example

If your manifest.json file defined these hotkeys:

"data": {
"hotkeys" : {
"my_cool_action": {
"title": "My Cool Action",
"action-type": "custom",
"default": "Ctrl+Alt+C"
}
}
}

A call to register this hotkey should be look like this:

overwolf.settings.registerHotKey(
"my_cool_action",
function(arg) {
if (arg.status == "success") {
alert("This is my cool action!");
}
}
);

getCurrentOverwolfLanguage(callback)

Version added: 0.85

Returns the current language overwolf is set to in a two letter ISO name format.

OBSOLETE

This function is obsolete. Instead, please use overwolf.settings.language API.

ParameterTypeDescription
callbackfunctionA callback function which will be called with the status of the request

Callback argument: Success

A callback function which will be called with the status of the request and the current language overwolf is set to:

{ 
"status": "success",
"language ": "en"
}

getOverwolfVideosFolder(callback)

Version added: 0.86

Returns the current folder overwolf uses to store videos.

ParameterTypeDescription
callback(Result:FolderResult ) => voidcalled with the status of the request

setOverwolfVideosFolder(path, callback)

Version added: 0.119

Sets the folder Overwolf uses to store videos.

ParameterTypeDescription
pathstringThe folder to use
callback(Result:SetFolderResult) => voidcalled with the status of the request

Note: when you set a directory, you should use escape characters:

overwolf.settings.setOverwolfVideosFolder("C:\\Users\\Azamoth\\Videos\\Captures",console.log)

getOverwolfScreenshotsFolder(callback)

Version added: 0.103

Returns the current folder Overwolf uses to store screenshots and GIFs.

ParameterTypeDescription
callback(Result:FolderResult ) => voidcalled with the result of the request which contains the current Overwolf screenshots folder

setOverwolfScreenshotsFolder(path, callback)

Version added: 0.119

Sets the folder Overwolf uses to store screenshots.

ParameterTypeDescription
pathstringThe folder to use
callback(Result:SetFolderResult ) => voidcalled with the result of the request which contains the current Overwolf screenshots folder

getVideoCaptureSettings(callback)

Version added: 0.86

Returns the current video capture settings.

ParameterTypeDescription
callback(Result:GetVideoCaptureSettingsResult) => voidcalled with the result of the request which contains the current Overwolf capture settings

setVideoCaptureSettings(resolutionSettings, fps, callback)

Version added: 0.117

Permissions required: VideoCaptureSettings

requires the |VideoCaptureSettings| permission.

Sets new video capture settings.

ParameterTypeDescription
resolutionSettingsoverwolf.settings.ResolutionSettings enum
fpsint
callback(Result) => voidcalled with the result of the request

getAudioCaptureSettings(callback)

Version added: 0.117

Returns the current audio capture settings.

ParameterTypeDescription
callback(Result:GetAudioCaptureSettingsResult) => voidcalled with the status of the request

setAudioCaptureSettings(enableSound, enableMicrophone, callback)

Version added: 0.117

Sets new audio capture settings.

ParameterTypeDescription
enableSoundboolThe folder to use
enableMicrophonebool
callback(Result) => voidcalled with the result of the request

getFpsSettings(callback)

Version added: 0.89

Gets the status of the FPS control (on/off), its position, its offset (in pixels) and its scale [0, 1].

ParameterTypeDescription
callback(Result: GetFpsSettingsResult) => voidA callback function which will be called with the status of the request

setFpsSettings(settings, callback)

Version added: 0.89

Sets the state (on/off), position, offset (in pixels) and scale [0, 1] of the Fps control.

OBSOLETE

This function is obsolete.

ParameterTypeDescription
settingsFpsSettings ObjectContainer for the FPS settings
callback(Result) => voidcalled with the result of the request

setExtensionSettings(extensionSettings, callback)

Version added: 0.149

Sets the extension settings.

Supports enabling/disabling app auto-launch with Overwolf client, exit with Overwolf client and more.

ParameterTypeDescription
extensionSettingsGeneralExtensionSettings ObjectContainer for the extension settings
callback(Result) => voidcalled with the result of the request

getExtensionSettings(callback)

Version added: 0.149

Gets the extension settings.

ParameterTypeDescription
callback(Result: GetExtensionSettingsResult) => voidA callback function which will be called with the status of the request

onFpsSettingsChanged

Version added: 0.89

Fired when fps settings are changed, with the following structure: FpsSettingsChangedEvent Object.

OnVideoCaptureSettingsChanged

Version added: 0.117

Fired when video capture settings are changed, with the following structure: VideoCaptureSettingsChangedEvent Object.

OnAudioCaptureSettingsChanged

Version added: 0.117

Fired when audio capture settings are changed, with the following structure: AudioCaptureSettingsChangedEvent Object.

OnHotKeyChanged

Version added: 0.119

Fired when a hotkey is modified. Apps will only be notified of hotkey changes that relate to them.

OBSOLETE

This event is obsolete. Instead, please use the overwolf.settings.hotkeys.onChanged event.

Event Data Example: Success

{ "source": "replayhud_save", "description": "Replay HUD: Save Replay for later", "hotkey": "Ctrl+Shift+F7" }

ResolutionSettings enum

Version added: 0.78

Describes Resolution settings.

OptionDescription
Original
R1080p
R720p
R480p

eIndicationPosition enum

Version added: 0.78

Describes position to use as anchor.

OptionDescription
None-1
TopLeftCorner0
TopRightCorner1
BottomLeftCorner2
BottomRightCorner3

FpsSettings Object

Version added: 0.78

Container for the FPS settings.

ParameterTypeDescription
offsetOdkv2Point ObjectThe offset from the edge (in pixels)
scaledoubleA scale (1.0 = original)
enabledboolWhether to enable or disable fps
positioneIndicationPosition enumThe position (anchor) to use

Object Data Example

{
"settings": {
"offset": {
"x": 0,
"y": 0
},
"scale": 1,
"enabled": false,
"position": 0
}
}

GeneralExtensionSettings Object

Version added: 0.149

Container for the extension settings.

ParameterTypeDescription
auto_launch_with_overwolfboolSet your app to auto-launch when the OW client starts. See notes.
exit_overwolf_on_exitboolSet the OW client to auto-shutdown when your OW app closes. See notes.
channelstringSet the app to a specific channel. See notes.
warning

The exit_overwolf_on_exit option shouldn’t be used without Overwolf’s permission

{
"settings": {
"auto_launch_with_overwolf": true,
"exit_overwolf_on_exit": false,
"channel": "channel_name"
}
}

Usage example:

SetExtensionSettings({"auto_launch_with_overwolf": true, channel: 'channel_name'}, callback).

auto_launch_with_overwolf notes

  • After setting the "auto_launch_with_overwolf", your app should use auto-launch after you start the client (takes ~15 seconds).
  • If you would like to set app auto-launch with OW client, you should add the "Tray" permission to your app's manifest permissions list.
  • You can set the same app auto-launch with OW client using the manifest. Read more about it.
  • Apps launched this way will have origin "overwolfstartlaunchevent".

exit_overwolf_on_exit notes

  • If you would like to set app auto-launch with OW client, you should add the "Shutdown" permission to your app's manifest permissions list.
  • Currently you can NOT set the same auto-exit with OW client using the manifest. Maybe we will add this feature in the future.
  • Overwolf client no not closes when an app that was using that setting has crashed, however, it will still close Overwolf if the user has dismissed the crash notification or didn’t click on the "Relaunch" button in that same notification.

channel notes

  • You should pre-define your app channels in your dev console.
  • You can set a specific channel to use a specific version, this way you can super easily create and distribute beta versions for your apps.

GetFpsSettingsResult Object

ParameterTypeDescription
successbooleaninherited from the "Result" Object
errorstringinherited from the "Result" Object
settingsFpsSettings Objectcontainer for the FPS object

Example data: Success

{
"status": "success",
"settings": {
"offset": {
"x": 0,
"y": 0
},
"scale": 1,
"enabled": false,
"position": 0
}
}

GetExtensionSettingsResult Object

ParameterTypeDescription
successbooleaninherited from the "Result" Object
errorstringinherited from the "Result" Object
settingsGeneralExtensionSettings ObjectContainer for the extension settings

Example data: Success

{
"success": true,
"settings": {
"auto_launch_with_overwolf": true
}
}

FolderResult Object

ParameterTypeDescription
successbooleaninherited from the "Result" Object
errorstringinherited from the "Result" Object
pathPath ObjectContainer for the path entity

Example data: Success

{
"status": "success",
"path": {
"Value": "E:\Video\Overwolf",
"Type": "System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
"Name": "Folders_VideoCapturesFolder"
}
}

SetFolderResult Object

ParameterTypeDescription
successbooleaninherited from the "Result" Object
errorstringinherited from the "Result" Object
pathstringContainer for the path

Example data: Success

{
"status": "success",
"path": "E:\Video\Overwolf"
}

FolderResult Object

ParameterTypeDescription
successbooleaninherited from the "Result" Object
errorstringinherited from the "Result" Object
pathPath ObjectContainer for the path entity

Example data: Success

{
"status": "success",
"path": {
"Value": "E:\Video\Overwolf",
"Type": "System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
"Name": "Folders_VideoCapturesFolder"
}
}

Path Object

Container for the path entity

ParameterTypeDescription
Valuestring
Typestring
Namestring

Example data

{
"Value": "E:\Video\Overwolf",
"Type": "System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
"Name": "Folders_VideoCapturesFolder"
}

GetVideoCaptureSettingsResult Object

ParameterTypeDescription
successbooleaninherited from the "Result" Object
errorstringinherited from the "Result" Object
encoderstring
presetstring
fpsnumber
resolutionnumber

Example data: Success

{
"encoder": "NVIDIA_NVENC",
"preset": "DEFAULT",
"fps": 30,
"resolution": 2
}

GetAudioCaptureSettingsResult Object

ParameterTypeDescription
successbooleaninherited from the "Result" Object
errorstringinherited from the "Result" Object
sound_enabledboolean
microphone_enabledboolean

Example data: Success

{
"sound_enabled": true,
"microphone_enabled": false
}

FpsSettingsChangedEvent Object

ParameterTypeDescription
settingstringOne of the following values: "OnScreenLocation" / "Enabled" / "Scale" / "Offset"

Event data example

{ 
"setting":"OnScreenLocation"
}

VideoCaptureSettingsChangedEvent Object

ParameterTypeDescription
settingstringOne of the following values: "resolution" / "fps" / "unknown" / "Offset"

Event data example

{ 
"setting":"resolution"
}

AudioCaptureSettingsChangedEvent Object

ParameterTypeDescription
settingstringOne of the following values: "speakers" / "microphone" / "unknown" / "Offset"

Event data example

{ 
"setting":"speakers"
}