### GetGameDBInfoResult Example (Installed) Source: https://dev.overwolf.com/ow-native/reference/games/ow-games Example data for a successful retrieval of game database information when the game is installed. ```json { "success":true, "gameInfo":null, "installedGameInfo":{ "GameInfoClassID":1136, "GameInfoID":11361, "ProcessPath":null, "LauncherPath":"D:/Games/Guild Wars/Gw.exe", "LauncherCommandLineParams":null, "LastTimeVerified":"2020-03-28T19:47:44.828Z", "ManuallyAdded":false, "WasAutoAddedByProcessDetection":true, "GameInfo":{ ... } } } ``` -------------------------------- ### Match Start Event Fired Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/playerunknowns-battlegrounds Example structure for the 'matchStart' event. ```json {"events":[{"name":"matchStart","data":""}]} ``` -------------------------------- ### Manifest.json Configuration Example Source: https://dev.overwolf.com/ow-native/getting-started/onboarding-resources/sample-app-components An example of a manifest.json file, showing the definition for the start window and windows object. ```json { "start_window": "background", "windows": { "background": { "is_background_page": true } } } ``` -------------------------------- ### GetGameInfoResult Example Source: https://dev.overwolf.com/ow-native/reference/games/ow-games Example data for a successful retrieval of installed game information. ```json { "success":true, "gameInfo":{ "GameInfoClassID":1136, "GameInfoID":11361, "ProcessPath":null, "LauncherPath":"D:/Games/Guild Wars/Gw.exe", "LauncherCommandLineParams":null, "LastTimeVerified":"2020-03-28T19:47:44.828Z", "ManuallyAdded":false, "WasAutoAddedByProcessDetection":true, "GameInfo":{ ... } } } ``` -------------------------------- ### Match Start Event Data Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/splitgate-arena-warfare?game-tab=events-status Example of the data structure for the match start event. ```json {"name":"matchStart","data":""} ``` -------------------------------- ### Rainbow Six Siege Match Start Log Data Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/rainbow-six-siege?game-tab=events-status An example of the match start log, detailing information about how a match began, including map, start reason, and matchmaking details. This is useful for analyzing match initiation. ```json {"gameId":10826,"feature":"match_info","category":"match_info","key":"match_start_log","value":"{\"MAP\":\"00000037625C3900\",\"STARTREASON\":\"Menu\",\"MMID\":\"0\",\"PARTY\":1,\"SQUADID\":\"0\",\"TEAM\":\"1\",\"SKILLRANK\":0,\"MTYPE\":\"0000005D2BE7FEF5\",\"GAMEMODEALTERATION\":\"normal\",\"PLAYGROUP\":\"pc\",\"playlist\":\"00000060899B9D62\",\"MMKPREF\":[],\"reputationlevel\":3}"} ``` -------------------------------- ### Match Start Event Data Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/arc-raiders Example of the data structure for the match_start event. ```json {"events":[{"name":"match_start","data":null}]} ``` -------------------------------- ### Event Data Example - Record Start Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/roblox Example data structure for the `record_start` event. ```JSON {"events":[{"name":"record_start","data":""}]} ``` -------------------------------- ### match_info quest_start Event Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/monster-hunter-wilds This example shows the data structure when the quest_start event is fired upon the local player starting a quest. ```json {"events":[{"name":"quest_start","data":"quest_start"}]} ``` -------------------------------- ### Minecraft Match Start Event Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/minecraft?game-tab=events-status Example data for the 'match_start' event, fired when loading into a map. ```json {"events":[{"name":"match_start","data":"null"}]} ``` -------------------------------- ### Global Hotkey Example (Single Game) Source: https://dev.overwolf.com/ow-native/reference/settings/hotkeys-api This example shows how to set a global hotkey for all installed games. The 'binding' field provides a human-readable name, while 'virtualKeycode' and 'modifierKeys' represent the key codes. ```json { "success":true, "globals":[ { "binding":"Ctrl+F3", "name":"toggle_app", "title":"Show/Hide Buff window", "virtualKeycode":116, //F5 "modifierKeys":4, //Shift "extension-uid":"caboggillkkpgkiokbjmgldfkedbfnpkgadakcdl", "isPassthrough":false, "hold":false, "IsUnassigned":false } ] } ``` -------------------------------- ### Game Phase Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/rainbow-six-siege?game-tab=events-status This example demonstrates how to get the current game phase in Rainbow Six Siege. ```json {"gameId":10826,"feature":"game_info","category":"game_info","key":"phase","value":"lobby"} ``` -------------------------------- ### InstalledGameInfo Data Example Source: https://dev.overwolf.com/ow-native/reference/games/ow-games This example demonstrates the structure of the InstalledGameInfo object, which holds information about games installed on the user's system. It includes game IDs, paths, and verification timestamps, along with a nested GameInfo object. ```json { "GameInfoClassID":1136, "GameInfoID":11361, "ProcessPath":null, "LauncherPath":"D:/Games/Guild Wars/Gw.exe", "LauncherCommandLineParams":null, "LastTimeVerified":"2020-03-28T19:47:44.828Z", "ManuallyAdded":false, "WasAutoAddedByProcessDetection":true, "GameInfo":{ ... } } ``` -------------------------------- ### Match Info: Match Started Data Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/roblox?game-tab=events-status Example data structure for the match_started feature within match_info. Possible values are true or false. ```JSON {"feature":"match_info","category":"match_info","key":"match_started","value":true} ``` -------------------------------- ### Overwatch Match Start Event Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/overwatch This snippet shows the data structure for the 'match_start' event in Overwatch. ```json {"name":"match_start","data":""} ``` -------------------------------- ### Match Started Info Update Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/league-of-legends-arena?game-tab=events-status Data example for the 'match_started' info update, indicating that the match has begun. This is part of the game_info category. ```json {"feature":"match","category":"game_info","key":"match_started","value":true} ``` -------------------------------- ### Fortnite Emote Start Data Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/fortnite?game-tab=events-status Example of an emote start event, typically indicating the start of an in-game emote. ```json {"gameId":21216,"feature":"match_info","key":"emote_start","value":null} ``` -------------------------------- ### RecordingAppOptions Example Source: https://dev.overwolf.com/ow-electron/reference/Overwolf-electron-APIs/recorder/interfaces/RecordingAppOptions An example demonstrating how to set configuration options for the recording application. ```APIDOC ## RecordingAppOptions ### Description Configuration options for launching or customizing the recording application behavior. ### Properties #### enableDebugLogs - **Type**: `boolean` - **Description**: Enables verbose debug logs for the recorder. Can be used to troubleshoot issues during recording. #### showDebugWindow - **Type**: `boolean` - **Description**: Whether to show the recorder capture (OBS) window during runtime. Useful for debugging or development purposes. ### Example ```typescript const options: RecordingAppOptions = { showDebugWindow: true, enableDebugLogs: true, }; ``` ``` -------------------------------- ### Global Hotkey Example (Multiple Games with Exception) Source: https://dev.overwolf.com/ow-native/reference/settings/hotkeys-api This example demonstrates setting a global hotkey for all games, with a specific override for 'League of Legends'. It illustrates how to define game-specific hotkey configurations. ```json { "success":true, "globals":[ { "binding":"Ctrl+F3", "name":"toggle_app", "title":"Show/Hide Buff window", "virtualKeycode":116, //F5 "modifierKeys":4, //Shift "extension-uid":"caboggillkkpgkiokbgldfkedbfnpkgadakcdl", "isPassthrough":false, "hold":false, "IsUnassigned":false } ], "games":{ "5426":[ { "binding":"Ctrl+F3", "name":"toggle_app", "title":"Show/Hide Buff window", "virtualKeycode":68, //D "modifierKeys":2, //Ctrl "extension-uid":"caboggillkkpgkiokbgldfkedbfnpkgadakcdl", "isPassthrough":false, "hold":false, "IsUnassigned":false } ] } } ``` -------------------------------- ### Discord Get Guilds Success Example Source: https://dev.overwolf.com/ow-native/reference/social/discord Example data structure for a successful response from the get Guilds method, listing guilds the user is registered to. ```json { "status": "success", "guilds": [ { "id": "310742576380772355", "name": "Overwolf", "icon": "https://cdn.discordapp.com/icons/310742576380772355/ff2c69e1b4b4d3563fdfbeb6e8a96d37.png", "owner": false, "roles": null }, { "id": "407312977017045002", "name": "PUBGG", "icon": "https://cdn.discordapp.com/icons/407312977017045002/032b6941ca08ffcd89bbcb7fb16b2217.png", "owner": false, "roles": null } ] } ``` -------------------------------- ### Example Data: Success Source: https://dev.overwolf.com/ow-native/reference/games/launchers This JSON object represents a successful response from getRunningLaunchersInfo, detailing a running launcher. ```json { "success": true, "launchers":[ { "title":"League of Legends Launcher", "id":54271, "classId":5427, "isInFocus":false, "position":{ "top":252, "left":2066, "width":1280, "height":720 }, "handle":329882, "commandLine":"E:/Games/RADS/projects/league_client/releases/0.0.0.65/deploy/LeagueClientUx.exe "--release=0.0.0.35" "--remoting-auth-token=scIN957coAwcbo0WW78nzg" "--rads-product-directory=E:/Games/RADS/solutions/league_client_sln/releases/0.0.0.35/deploy/" "--respawn-command=LeagueClient.exe" "--respawn-display-name=League of Legends" "--app-port=57610" "--install-directory=E:/Games/" "--app-name=LeagueClient" "--ux-name=LeagueClientUx" "--ux-helper-name=LeagueClientUxHelper" "--log-dir=LeagueClient Logs" "--bugsplat-name=league_client_riotgames_com" "--bugsplat-platform-id=EUW1" "--project=LeagueClient" "--app-log-file-path=E:/Games/Logs/LeagueClient Logs/2017-04-20T11-12-28_9576_LeagueClient.log" "--app-pid=9576", "processId":1468, "path":"E:/Games/RADS/projects/league_client/releases/0.0.0.65/deploy/LeagueClientUx.exe" } ] } ``` -------------------------------- ### start(settings, callback) Source: https://dev.overwolf.com/ow-native/reference/streaming/ow-streaming Starts the streaming capture with the provided settings. The callback function will be invoked upon completion or error. ```APIDOC ## start(settings, callback) ### Description Starts the streaming capture with the provided settings. The callback function will be invoked upon completion or error. ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body * **settings** (object) - Required - Configuration object for the stream. * **callback** (function) - Required - A function to be called with the result of the operation. ``` -------------------------------- ### Replay Settings Configuration Example Source: https://dev.overwolf.com/ow-native/reference/media/replays This JSON object shows how to configure replay settings, including audio, video buffering, peripheral capture, and disk quota management. ```json "settings": { "video": { "buffer_length": 20000 }, "audio": { "mic": { "volume": 100, "enable": true }, "game": { "volume": 75, "enable": true } }, "peripherals": { "capture_mouse_cursor": "both" }, "quota": { "max_quota_gb": 2, "excluded_directories": [ "cool_session" ] } } ``` -------------------------------- ### Example manifest.json Source: https://dev.overwolf.com/ow-native/reference/manifest/manifest-json This is an example of a manifest.json file, showcasing basic app configurations. ```json { "meta": { "name": "My App", "version": "1.0.0", "author": "My Company" }, "app": { "name": "My App", "internalName": "my_app", "version": "1.0.0" }, "launch": { "வைத்": "index.html", "width": 800, "height": 600 }, "permissions": [ "game_info" ], "showInAppstore": true, "minAppVersion": "0.1.0" } ``` -------------------------------- ### match_info Sleep Start Event Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/schedule1?game-tab=events-status Example data structure for the sleep_start event in match_info. ```json {"events":[{"name":"sleep_start","data":null}]} ``` -------------------------------- ### Setup Ads SDK and Create OwAd Instance Source: https://dev.overwolf.com/ow-native/reference/ads/owad Fetches the latest Ads SDK and initializes an OwAd instance. Use the `onload` and `onerror` callbacks to handle SDK loading status. The `OwAd` constructor requires a DOM element and mandatory ad settings. ```html ``` -------------------------------- ### Fortnite Emote Start Event Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/fortnite Indicates the start of a player's emote action. ```json {"events":[{"name":"emote_start","data":null}]} ``` -------------------------------- ### Get List of Installed Extensions Source: https://dev.overwolf.com/ow-native/reference/extensions/ow-extensions Retrieves an array containing information about all installed Overwolf applications. ```javascript overwolf.extensions.getExtensions(function(result) { console.log("Get extensions result: " + JSON.stringify(result)); }); ``` -------------------------------- ### App Launch Origin Example Source: https://dev.overwolf.com/ow-native/reference/extensions/ow-extensions This example shows the format of the origin URL when an app is launched while already running. It includes query parameters indicating the launch source. ```url overwolf-extension://hffhbjnafafjnehejohpkfhjdenpifhihebpkhni/index.html?source=gamelaunchevent ``` -------------------------------- ### Battle Start Event Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/league-of-legends-arena?game-tab=events-status Example of a battle_start event notification. The data field is empty for this event. ```json {"events":[{"name":"battle_start","data":""}]} ``` -------------------------------- ### init Source: https://dev.overwolf.com/ow-native/reference/logitech/led Initializes the LED API. ```APIDOC ## init(callback) ### Description Initializes the LED API. ### Parameters #### Request Body - **callback** (function) - Required - Callback with the result of the request ``` -------------------------------- ### Game Window Capture Configuration Example Source: https://dev.overwolf.com/ow-native/reference/streaming/ow-streaming Example JSON structure for configuring game window capture settings. Note the default values and version added information. ```json "game_window_capture": { "enable_when_available": bool, // Disabled by default "capture_overwolf_windows": bool // Default value is taken from the Overwolf Settings } ``` -------------------------------- ### AppCenter, ClientInstanceManager, and UserInformationLog Details Source: https://dev.overwolf.com/ow-native/guides/test-your-app/ow-logs/trace This log snippet shows the initialization process of the AppCenter, ClientInstanceManager, and UserInformationLog components. It includes details about the Overwolf executable, its version, and user-specific information like UID, MUID, and channel. ```log 2021-07-20 10:21:00,606 (INFO) [UI][12564] AppCenter - command line: C:\Program Files (x86)\Overwolf\Overwolf.exe -from-startmenu -launchapp ojgnfnbjckbpfaciphphehonokbggjhpnnoafack 2021-07-20 10:21:00,607 (INFO) [UI][12564] AppCenter - Running dll folder: C:\Program Files (x86)\Overwolf\0.174.87.15 2021-07-20 10:21:00,657 (INFO) [UI][12564] AppCenter - Registering for restart with commandline: -from-startmenu -launchapp ojgnfnbjckbpfaciphphehonokbggjhpnnoafack -ARR 1 2021-07-20 10:21:00,704 (INFO) [UI][12564] AppCenter - Process tree: OverwolfLauncher - C:\Program Files (x86)\Overwolf\OverwolfLauncher.exe (35256) explorer - C:\Windows\explorer.exe (9916) 2021-07-20 10:21:00,714 (INFO) [UI][12564] AppCenter - Found 1 processes named 'Overwolf' 2021-07-20 10:21:00,719 (INFO) [UI][12564] AppCenter - is unique process: True 2021-07-20 10:21:00,721 (INFO) [UI][12564] ClientInstanceManager - Testing overwolf instances 2021-07-20 10:21:00,721 (INFO) [UI][12564] ClientInstanceManager - First unique Overwolf instance 2021-07-20 10:21:00,760 (INFO) [UI][12564] CefGlobalFlags - Global CEF flags init 2021-07-20 10:21:00,937 (INFO) [UI][12564] LoginSession - Initializing Login Session (Windows 10 64-bit, .NET 4.5, 10.0.19041.1023) 2021-07-20 10:21:00,940 (INFO) [ 8][8868] UserInformationLog - UID: OW_c58ed287-9974-4f2f-829f-6826d8bc6143 2021-07-20 10:21:00,940 (INFO) [ 8][8868] UserInformationLog - MUID: c17f3db1-9075-4045-9507-197c7eac9126 2021-07-20 10:21:00,941 (INFO) [ 8][8868] UserInformationLog - Username: 2021-07-20 10:21:00,941 (INFO) [ 8][8868] UserInformationLog - Channel: website (ML:website) 2021-07-20 10:21:00,942 (INFO) [ 8][8868] UserInformationLog - CurrentVersion: 0.174.87.15 2021-07-20 10:21:00,942 (INFO) [ 8][8868] UserInformationLog - LastVersion: 0.174.0.10 2021-07-20 10:21:00,943 (INFO) [ 8][8868] UserInformationLog - UpdateRequireUAC: false ``` -------------------------------- ### Game Phase Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/counter-strike-2 This JSON example demonstrates how the current game phase (e.g., live, warmup) is reported. ```json {"info":{"live_data":{"game_phase":"live"}},"feature":"match_info"} ``` -------------------------------- ### Round Start Event Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/rainbow-six-siege Example of the 'roundStart' event, fired when a new round begins. It has no associated data. ```json {"events":[{"name":"roundStart","data":""}]} ``` -------------------------------- ### Overwolf Packages API Example Source: https://dev.overwolf.com/ow-electron/reference/Overwolf-electron-APIs/packages/Overview Demonstrates how to use the Overwolf Packages API to track game events, start recording, and register for game launch notifications. Ensure the Overwolf API is initialized before use. ```javascript const app = overwolf.packages as OWPackages; // Start tracking game launch/exit events app.utility.trackGames({ includeUnsupported: true }); // Register for game launch app.utility.on("game-launched", (gameInfo) => { console.log("Game launched:", gameInfo.name); }); // Start recording await app.recorder.startRecording({ filePath: "C:/Videos/gameplay", audioTrack: 1, }); ``` -------------------------------- ### Draft Start Event Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/magic-the-gathering-arena Example of the event data when a draft begins. The data field is empty for this event. ```json {"events":[{"name":"draft_start","data":""}]} ``` -------------------------------- ### Day Event Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/elden-ring-nightreign Example data structure for the 'day' event, which fires at the start of a new day in the game. ```json {"events":[{"name":"day","data":"day"}]} ``` -------------------------------- ### Rainbow Six Siege Round Start Log Data Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/rainbow-six-siege?game-tab=events-status Provides an example of the data structure for a round start event in Rainbow Six Siege. This includes map, team, operator class, weapon, gadgets, and health information. ```json {"gameId":10826,"feature":"match_info","category":"match_info","key":"round_start_log","value":"{\"MAP\":\"0000005D7B68A718\",\"TEAM\":\"0\",\"CLASS\":\"00000037802D16C5\",\"CTU\":\"00000040705E6C91\",\"ROLE\":\"Attacker\",\"WEAPON1\":\"00000037802CC899\",\"W1SIGHT\":\"0000003EA76C2169\",\"W1MUZZLE\":\"0000003CFD8FC8E9\",\"W1LASER\":\"0000003CFD8FE45C\",\"W1GRIP\":\"0000003CFD8FDCEA\",\"W1SKIN\":\"00000037802CE443\",\"WEAPON2\":\"00000037802CC866\",\"W2SIGHT\":\"00000037802CC808\",\"W2MUZZLE\":\"0000003CFD8EC413\",\"W2LASER\":\"00000037802CC857\",\"W2GRIP\":\"00000037802CC847\",\"W2SKIN\":\"00000037802CE443\",\"GADGET1\":\"00000037802D1224\",\"GADGET2\":\"00000037802D1249\",\"OPHEADGEAR\":\"0000005EB74DA690\",\"OPUNIFORM\":\"0000005EB74DA906\",\"CHARM\":\"0000003692C57FAC\",\"DRONESKIN\":\"0000005B154D405A\",\"CHECKPOINTID\":\"\",\"HEALTH\":110,\"speed\":0}"} ``` -------------------------------- ### Round Start Event Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/league-of-legends-arena?game-tab=events-status Example of a round_start event notification. The data field contains the current round number as a string. ```json {"events":[{"name":"round_start","data":"3"}]} ``` -------------------------------- ### Manifest Hotkey Configuration Example Source: https://dev.overwolf.com/ow-native/guides/general-tech/hotkeys-best-practices Define hotkeys in your application's manifest file. This example shows configurations for a 'show_YourAppName' hotkey and a 'save_YourAppName' hotkey, including action types, default key combinations, and passthrough settings. ```json "hotkeys": { "show_YourAppName": { "title": "Show Player", "action-type": "custom", "default": "Shift+F9", "passthrough": true, "hold": true }, "save_YourAppName": { "title": "Save Replay for later", "action-type": "custom", "default": "Ctrl+Shift+F9" } } ``` -------------------------------- ### Match Started Status Update Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/league-of-legends-arena?game-tab=events-status Example of a matchStarted status update, indicating whether a match has begun. This is a boolean string value. ```json {"info":{"game_info":{"matchStarted":"true"}},"feature":"matchState"} ``` -------------------------------- ### Dota 2 New Game Event Example Source: https://dev.overwolf.com/ow-electron/live-game-data-gep/supported-games/dota-2 This data example represents the event fired when a new Dota 2 match starts. ```json {"events":[{"name":"new_game","data":""}]} ``` -------------------------------- ### GameLaunchEventOptions Example Source: https://dev.overwolf.com/ow-electron/reference/Overwolf-electron-APIs/overlay/interfaces/GameLaunchEventOptions Demonstrates how to configure GameLaunchEventOptions to force OOPO mode and mixed-mode mouse control. ```typescript const options: GameLaunchEventOptions = { forceOOPO: true, forceOOPOMixedMode: true, }; ``` -------------------------------- ### Object Data Example: General Extension Settings Source: https://dev.overwolf.com/ow-native/reference/settings/ow-settings This example shows the structure for GeneralExtensionSettings, used to configure app behavior like auto-launch and exit with Overwolf client. ```json { "settings": { "auto_launch_with_overwolf": true, "exit_overwolf_on_exit": false, "channel": "channel_name" } } ``` -------------------------------- ### Summoner ID Update Example Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/league-of-legends-arena?game-tab=events-status Example of a summoner ID update, providing the user's unique Summoner ID. This is fired immediately with game start. ```json {"info":{"summoner_info":{"id":"21549264"}},"feature":summoner_info} ``` -------------------------------- ### Get Overwolf Install Time and Uptime Source: https://dev.overwolf.com/ow-native/reference/utils/ow-utils Retrieves the installation time of Overwolf and the client's current uptime in seconds. This is useful for analytics or user-facing information. ```javascript overwolf.utils.getInstallTime(function(result) { console.log("Overwolf install time: " + result.installTime); console.log("Overwolf uptime: " + result.uptimeSeconds + " seconds"); }); ``` -------------------------------- ### User Retention Weekly API Request Example Source: https://dev.overwolf.com/ow-native/developers-console/dev-console-apis/performance-apis/user-retention-weekly Example of a GET request to the User Retention Weekly API. Ensure to replace {{app_id}} with your actual app ID. ```bash {{base_url}}/performance/user-retention-weekly?app_id=%7B%7Bapp_id%7D%7D&country_name=All%20Countries&attribution=All%20Attributions ``` -------------------------------- ### Example Release Notes API URL Source: https://dev.overwolf.com/ow-electron/developers-console/releases-management/release-management An example of a fully constructed API URL with sample app ID and version. ```http https://console-api.overwolf.com/v1/apps/npijmgiaiiemcnijaljcfddgeihcbifdbhpffihe/versions/6.0.71/release-notes/${page} ``` -------------------------------- ### Get Hotkey Callback Example Source: https://dev.overwolf.com/ow-native/reference/settings/ow-settings This example demonstrates the structure of the callback argument when successfully retrieving a hotkey assigned to a feature ID using `getHotKey`. Note that this function is deprecated. ```json { "status": "success", "hotkey ": "Ctrl+F2" } ``` -------------------------------- ### IOverlayHotkey Examples Source: https://dev.overwolf.com/ow-electron/reference/Overwolf-electron-APIs/overlay/interfaces/IOverlayHotkey Demonstrates defining hotkey configurations using the IOverlayHotkey interface. The first example uses a numeric keyCode, while the second uses a W3C KeyboardEvent.code string and includes a custom modifier. ```typescript const screenshotHotkey: IOverlayHotkey = { name: "take-screenshot", keyCode: 80, // p modifiers: { ctrl: true, alt: true }, passthrough: false, }; // Since 1.13.3: use W3C KeyboardEvent.code strings (preferred, layout-independent) const toggleHotkey: IOverlayHotkey = { name: "toggle", keyCode: "KeyF", modifiers: { ctrl: true, custom: "Tab" }, passthrough: true, }; ``` -------------------------------- ### Start Recording with Options Source: https://dev.overwolf.com/ow-electron/reference/Overwolf-electron-APIs/recorder/interfaces/IOverwolfRecordingApi Starts a video recording session with specified options, capture settings, and an optional stop listener. Fires 'recording-started' on success and 'recording-stopped' when the session ends. ```typescript startRecording( options: RecordingOptions, setting?: CaptureSettings, listener?: StopCallback): Promise; ``` -------------------------------- ### User Retention Weekly Request Example Source: https://dev.overwolf.com/ow-electron/developers-console/dev-console-apis/performance-apis/user-retention-weekly Example of a GET request to the user retention weekly endpoint. Ensure to replace placeholders like {{base_url}} and {{app_id}} with actual values. ```http {{base_url}}/performance/user-retention-weekly?app_id=%7B%7Bapp_id%7D%7D&country_name=All%20Countries&attribution=All%20Attributions ``` -------------------------------- ### Retrieve App Install Statistics Source: https://dev.overwolf.com/ow-electron/developers-console/dev-console-apis/performance-apis/app-installs Use this GET request to fetch installation data for a specific application. Ensure the base URL and required query parameters are correctly formatted. ```http {{base_url}}/performance/app-installs?app_id=%7B%7Bapp_id%7D%7D&country_name=All%20Countries&days_back=Last%20180%20Days&installation_source=All%20Sources ``` -------------------------------- ### Sample App Directory Structure Source: https://dev.overwolf.com/ow-native/getting-started/onboarding-resources/sample-app-components This tree outlines the main folders and files present in the Overwolf sample app repository. ```text +---- css +---- img +---- windows +---- icons +---- odk-ts +---- types +---- manifest.json +---- consts.ts +---- package.json +---- tsconfig.json +---- webpack.config.js ``` -------------------------------- ### GET /performance/app-installs Source: https://dev.overwolf.com/ow-electron/developers-console/dev-console-apis/performance-apis/app-installs Retrieves app install statistics for a specified application over a defined period and country. ```APIDOC ## GET /performance/app-installs ### Description Retrieves app install statistics for a specified application over a defined period and country. ### Method GET ### Endpoint {{base_url}}/performance/app-installs ### Parameters #### Query Parameters - **app_id** (string) - Required - The app ID you want to query. - **country_name** (string) - Required - Name of a specific country. Use 'All Countries' for the entire world. - **days_back** (string) - Required - The timeframe for which the statistics are fetched. - **installation_source** (string) - Required - The download source for the app. Use 'All Sources' to retrieve all the sources. #### Headers - **authorization** (string) - Required - API Key for authentication. ### Request Example {{base_url}}/performance/app-installs?app_id={{app_id}}&country_name=All%20Countries&days_back=Last%20180%20Days&installation_source=All%20Sources ### Response #### Success Response (200) - **rows.total_installations** (integer) - Total number of installations. - **rows.installation_source** (string) - The source of the installation. - **rows.install_date** (string) - The date of the installation. - **rows.updated_at** (string) - Last update timestamp. - **rows.app_id** (string) - The application ID. - **rows.unique_installations** (integer) - Count of unique installations. - **rows.country_name** (string) - The country associated with the data. - **columns.friendly_name** (string) - Display name of the column. - **columns.type** (string) - Data type of the column. - **columns.name** (string) - Internal name of the column. #### Response Example { "rows": [ { "total_installations": 100, "installation_source": "string", "install_date": "2023-01-01", "updated_at": "2023-01-02T00:00:00Z", "app_id": "string", "unique_installations": 90, "country_name": "United States" } ], "columns": [ { "friendly_name": "string", "type": "string", "name": "string" } ] } ``` -------------------------------- ### Configure OwAd with Custom Settings Source: https://dev.overwolf.com/ow-native/reference/ads/owad Example of creating an OwAd instance with custom size, tracking, and container ID settings. ```javascript const owAd = new OwAd(document.getElementById("sidebar-ad"), { size: [{ width: 300, height: 250 }, { width: 160, height: 600 }], customTracking: { page: "main_menu", placement: "right_rail" }, containerId: "sidebar-ad", }); ``` -------------------------------- ### Get Game Database Info by Class ID Source: https://dev.overwolf.com/ow-native/reference/games/ow-games Retrieves game information using its Class ID, similar to getGameInfo. It returns either installed game details or indicates if the game is not detected as installed. ```javascript overwolf.games.getGameDBInfo(gameClassId, callback) ``` -------------------------------- ### startReplays Source: https://dev.overwolf.com/ow-electron/reference/Overwolf-electron-APIs/recorder/interfaces/IOverwolfRecordingApi Starts the replay capture service in memory. This method requires replay options and can optionally take capture settings. ```APIDOC ## startReplays() ### Description Starts replay capture service in memory. Fires the `'replays-started'` event on success. ### Method startReplays ### Parameters #### Path Parameters - `options` (ReplayOptions) - Required - Replay configuration such as buffer length and paths. - `setting` (CaptureSettings) - Optional - Optional capture settings for the replay session. ### Returns `Promise` ### Throws RecorderError if replays fail to start. ### See ReplayOptions ``` -------------------------------- ### Game State Info Update Examples Source: https://dev.overwolf.com/ow-native/live-game-data-gep/supported-games/valorant Example data for the 'state' info update within 'game_info', showing different possible game states like 'WaitingToStart' and 'InProgress'. ```json {"info":{"game_info":{"state":"WaitingToStart"}},"feature":"game_info"} ``` ```json {"info":{"game_info":{"state":"InProgress"}},"feature":"game_info"} ``` -------------------------------- ### Start Listening to File Changes Source: https://dev.overwolf.com/ow-native/reference/io/ow-io Starts streaming a text file line-by-line from the local filesystem. Requires FileSystem permission. Use a unique ID for each listener. ```javascript overwolf.io.listenOnFile('test.txt','C:\\test\\test.txt', {},console.log) ```