1. Home
  2. WalkMe Desktop
  3. Desktop SDK
  4. Desktop SDK API with Mac and Windows

Desktop SDK API with Mac and Windows

Updated on May 28, 2019 Download PDFDownload as PDF
Download PDF

Brief Overview

In order to support the WalkMe snippet customer system identification schema, the SDK should expose the following Public APIs:

Load API

  • Walkme.start(<string : full path to setting file> , <WalkmeStartOptions> ) # Mac SDK
  • Walkme.start(<string : full path to setting file> , <string: full path to walkme desktop directiry> , <options> )  # Windows SDK
  • Walkme.restart()
  • Walkme.stop()

Load API Options Object (WalkmeStartOptions)

  • AnalyticsMode <Enum=OFF,ON> #default ON
  • LoggingMode <Enum=<NONE,STDOUT,FILE,WALKME> #default FILE
  • StorageMode <Enum=LOCAL ,REMOTE> #default LOCAL
  • UserId (<string : enduser identifier>) # Expected to be unique to keep data and analytics consistency
  • Language (<string : language “short name”>)

Configuration API (optional to use before start / restart instead of WalkmeStartOptions)

  • Walkme.setAnalyticsMode(<Enum=OFF,ON> ) #default ON
  • Walkme.setLoggingMode(<Enum=<NONE,STDOUT,FILE,WALKME>) #default FILE
  • Walkme.setStorageMode(<Enum=LOCAL ,REMOTE>) #default LOCAL

Proxy API

  • setProxy(<string: url>)
  • setHttpHeader(<string: key>, <string: value>)

Runtime API

  • Walkme.toggleMenu()
  • Walkme.openMenu()
  • Walkme.closeMenu()
  • Walkme.changeLanguage(<string language name >)
  • Walkme.setUserId(string : end user value)
  • Walkme.setWidgetTheme(string : theme JSON)

WalkMe Data API

  • Walkme.setWalkMeData(string WalkMe Data Key, string Value, <int duration> )

Detailed API Description

Load API

  • Walkme.start(<string : full path to setting file>  , <options> )
    • Starts WalkMe’s operation on the application
    • Renders WalkMe’s widget and content
    • Please note ‘before start’ API and options object for start options
  • Walkme.start(<string : full path to setting file> , <string: full path to walkme desktop directiry> , <options> )  # Windows SDK
    • Additional parameter:  <string: full path to walkme desktop directiry>  specifies the local path where Walkme Desktop files have been installed
  • Walkme.restart( <options>)
    • Re-starts WalkMe’s operation with new parameters
    • Polls the server for new content
    • Reloads the content on the application
  • Walkme.stop()
    • Stops WalkMe operation on the application

Load API Options Object (WalkmeStartOptions)

  • AnalyticsMode <Enum=OFF,ON>
    • Default: ON
    • ON – Analytics are reported to the server
    • OFF – Analytics will not be sent to the server
  • LoggingMode <Enum=NONE,STDOUT,FILE,WALKME>
    • Default: FILE
    • NONE – No logs will be saved
    • STDOUT – Logs are streamed to the main app
    • FILE – Logs will be saved in a local file
    • WALKME – Logs will be reported to Walkme server
  • StorageMode <Enum=LOCAL ,REMOTE>
    • Default: LOCAL
    • LOCAL – Environment parameters are saved locally
    • REMOTE – Environment parameters are saved on the Walkme server
  • UserId <string>
    • Identifier of the end user. Will be stored in WalkMe’s server.
    • Expected to be unique to keep data and analytics consistency (For example login name or a hash of the login name)
  • Language <string>
    • “Short name” of the language Walkme should work in (As defined in WalkMe’s language back office)
    • The language should be defined and enabled in WalkMe’s language back office
    • Translations to WalkMe’s content should be defined in WalkMe’s language back office

Configuration API

  • Optional to use before start/restart instead of using WalkmeStartOptions object parameter
  • See values description in WalkmeStartOptions
  • Walkme.setAnalyticsMode(<Enum=OFF,ON> ) #default ON
  • Walkme.setLoggingMode(<Enum=NONE,STDOUT,FILE,WALKME>) #default FILE
  • Walkme.setStorageMode(<Enum=LOCAL ,REMOTE>) #default LOCAL

Proxy API

  • Optional to use before start/restart
  • Use this API when in need to work with a proxy
  • setProxy(<string: url>)
    • Sets all requests in the outer process will be sent via the proxy.
  • setHttpHeader(<string: key>, <string: value>)
    • Sets the outer process to add this header to each HTTP request. When calling this method with a valid key and an empty value, the corresponding header will be deleted.

Runtime API

  • Walkme.toggleMenu()
    • Toggles WalkMe’s widget menu from open to close and vice versa
  • Walkme.openMenu()
    • Sets WalkMe’s widget menu to open
  • Walkme.closeMenu()
    • Sets WalkMe’s widget menu to close
  • Walkme.changeLanguage(<string : language “short name”>)
    • Changes WalkMe’s content language to the target language
    • Example for usage: The user has changed the interface language on the application menu
    • Will get the new language’s content from the server
  • Walkme.setUserId(<string: end-user value>)
    • Set (replace) the user ID
    • Will restart the session and get user variables from the server
  • Walkme.setWidgetTheme(string : theme JSON)
    • Changes the widget’s theme according to the JSON
    • It is not mandatory to provide all the parameters (what was provided will be changed)

WalkMe Data API

  • Walkme.setWalkMeData(<string : WalkMe Data Key>, <string: Value>, <int duration> )
    • Saves a parameter on the user ID (can be used later on to adapt / segment content)wW

Was this article helpful?

Related Articles