Skip to main content

Configuration reference

This page is a reference of the recommended Finsemble's options (settings). It is generated from the JSON schema file node_modules/@finsemble/finsemble-core/configs/schemas/finsemble.schema.json. Hover over any field to get the complete "dot notation" config path. For the list of deprecated options and settings, see Config reference of deprecated items.

Config files are located in /public/configs. You may use "$importConfig" as a way to reference JSON files from one another.

Finsemble's "manifest" is the top level config and is used to bootstrap your SmartDesktop. Within the manifest, finsemble contains all config that is not directly related to bootstrapping. By convention we consider "finsemble" to be the root of config. So for instance, the full path to a config item would be written as finsemble.foo.bar.

    manifest

  •  
    manifestmanifest
    (object)The highest level manifest object, which includes "finsemble" configuration.
    •  
      affinitySurrogateUrlmanifest.affinitySurrogateUrl
      (string)
    •  
      allowEvalInPreloadmanifest.allowEvalInPreload
      (booleanfalse)Set to true to delete unsafe-eval and script-src directives from the content security policy.
    •   appAssets

    •  
      appAssetsmanifest.appAssets
      (array)Manifest array of external assets to be automatically downloaded by FEA (as Zip files) and unpacked for use as native applications.
      •  
        appAssets[]manifest.appAssets[]
        (object)
        •  
          aliasmanifest.appAssets[].alias
          (string)The downloaded asset is referred to in application configurations by alias. Replace the window.path field of a native application with window.alias to use the appAsset
        •  
          srcmanifest.appAssets[].src
          (string)URI from which to download a Zip file containing the asset.
        •  
          targetmanifest.appAssets[].target
          (string)The path within the appAsset Zip file that Finsemble uses to launch the application. This is usually a path to a .exe, .jar, or .bat file.
    •  
      commentmanifest.comment
      (string)
    •  
      Content-Security-Policymanifest.Content-Security-Policy
      (array,string)Overwrite the default content security policy for all components. This setting can be superseded by the application level "Content-Security-Policy" config. See MDN documentation on CSPs.
      [
      "script-src *"
      ]
      •  
        Content-Security-Policy[]manifest.Content-Security-Policy[]
        (string)
    •  
      custommanifest.custom
    •   finsemble

    •  
      finsemblefinsemble
      (object)(required)Finsemble's root runtime config. This can be found in "manifest-local.html".
      •  
        //systemTrayIconfinsemble.//systemTrayIcon
        (string)
      •  
        appDirectoryEndpointfinsemble.appDirectoryEndpoint
        (string)
      •  
        applicationRootfinsemble.applicationRoot
        (stringhttps://localhost:3375)Point this property to the root of your application. Finsemble uses it to build URLs internally.
      •     apps

      •  
        appsfinsemble.apps
        (array)Contains Finsemble's app configurations that are derived from the FDC3 2.0 App Directory Standard. App config is the primary way that Finsemble learns about apps. Finsemble uses this to create its launcher menus and for driving data integration (interop).
        •  
          apps[]finsemble.apps[]
          (object)An array of AppD entries where each describes an app or app service, using the FDC3 2.0 AppD record format).
          •  
            appIdfinsemble.apps[].appId
            (string)(required)A unique identifier for the app that is used programmatically. It must follow the AppD specification for fully qualified naming.
          •  
            categoriesfinsemble.apps[].categories
            (array)An array of string categories that describe the application. These are hints to catalogs or stores listing FDC3-enabled apps. The app creator should find appropriate categories (or category) under which to list the app. AppD record authors should use lower-case and, where possible, to select categories from the list defined in the AppD Standard.
            •  
              categories[]finsemble.apps[].categories[]
              (string)
          •  
            contactEmailfinsemble.apps[].contactEmail
            (string)Email address to contact for information about the app. (Used when apps are picked out of a third party app catalog.)
          •  
            descriptionfinsemble.apps[].description
            (string)Textual description of the app.
          •  
            detailsfinsemble.apps[].details
            (object)(required)The type specific launch details of the application.
            •  
              aliasfinsemble.apps[].details.alias
              (string)The name of the virtual app. Required for type: "citrix".
            •  
              argumentsfinsemble.apps[].details.arguments
              (string)Arguments that you must pass on the command line to launch the app in the expected configuration. Optional for type: "native", type: "onlineNative" or type: "citrix".
            •  
              pathfinsemble.apps[].details.path
              (string)The path on disk from which the application is launched. Required for type: "native".
            •  
              urlfinsemble.apps[].details.url
              (string)Application start URL. Required for type: "web" or type: "onlineNative".
          •  
            hostManifestsfinsemble.apps[].hostManifests
            (object)A mapping from host name to a manifest Object containing proprietary settings for running the application in that host. Use "Finsemble" for properties relating to Finsemble. All other host name keys are ignored.

                        Finsemble

            •  
              Finsemblefinsemble.apps[].hostManifests.Finsemble
              (object)The name of the component you are configuring.
              •  
                //finsemble.apps[].hostManifests.Finsemble.//
                (string)Optional comment describing the component.
              •  
                appServicefinsemble.apps[].hostManifests.Finsemble.appService
                (booleanfalse)When true, the app is treated as an app service.
              •  
                bootParamsfinsemble.apps[].hostManifests.Finsemble.bootParams
                (object)Boot parameter properties
                •  
                  autoStartfinsemble.apps[].hostManifests.Finsemble.bootParams.autoStart
                  (booleantrue)Specifies whether to automatically start during the system manager's startup phase.
                •  
                  checkpointsfinsemble.apps[].hostManifests.Finsemble.bootParams.checkpoints
                  (object)
                •  
                  customFailureMessagefinsemble.apps[].hostManifests.Finsemble.bootParams.customFailureMessage
                  (string)The custom message to output to the system log if the app fails to start.
                •  
                  dependenciesfinsemble.apps[].hostManifests.Finsemble.bootParams.dependencies
                  (array)Specifies other services this service relies on.
                  •  
                    dependencies[]finsemble.apps[].hostManifests.Finsemble.bootParams.dependencies[]
                    (string)
                •  
                  stagefinsemble.apps[].hostManifests.Finsemble.bootParams.stage
                  (string)Specifies at which stage the app is launched.
                     "microkernel"
                  "kernel"
                  "pre-authentication"
                  "authentication"
                  "appd-retrieval"
                  "system-preuser"
                  "preuser"
                  "preuser2"
                  "preuser3"
                  "preuser4"
                  "system-earlyuser"
                  "earlyuser"
                  "user"
                •  
                  stopOnFailurefinsemble.apps[].hostManifests.Finsemble.bootParams.stopOnFailure
                  (booleantrue)Specifies whether the app should stop if one or more of its dependencies fail to start. Only relevant to apps with dependencies. Set to false if you want the app to continue startup even if its dependencies fail.
                •  
                  timeoutfinsemble.apps[].hostManifests.Finsemble.bootParams.timeout
                  (number)The maximum time, in milliseconds, that the app can take to start up. If the startup doesn't complete in this time, it's marked as a failure. If you don't specify this property, Finsemble uses the default timeout value under the manifest's 'bootConfig.startComponentTimeout' property.
              •  
                childWindowOptionsfinsemble.apps[].hostManifests.Finsemble.childWindowOptions
                (object)Configuration for all child windows created via window.open for this app. Child windows can't join workspaces, group, tab, or tile. childWindowOptions supports the same properties as component...
              •             component

              •  
                componentfinsemble.apps[].hostManifests.Finsemble.component
                (object)Properties associated with how Finsemble manages this application.
                •  
                  advertiseReceiversfinsemble.apps[].hostManifests.Finsemble.component.advertiseReceivers
                  (array,string)
                  •  
                    advertiseReceivers[]finsemble.apps[].hostManifests.Finsemble.component.advertiseReceivers[]
                    (string)
                •  
                  allowQuickComponentfinsemble.apps[].hostManifests.Finsemble.component.allowQuickComponent
                  (string)
                •  
                  categoryfinsemble.apps[].hostManifests.Finsemble.component.category
                  (string)During dynamic configuration, Finsemble can overwrite components already in the configuration. To prevent this from happening, set this value to "system". This setting is used, for example, to prevent system UI components from being dropped out of the config.
                •  
                  centralLoggerNamePrefixfinsemble.apps[].hostManifests.Finsemble.component.centralLoggerNamePrefix
                  (string)Prefixes the windowDisplayName for the entry in the Central logger.
                •  
                  customfinsemble.apps[].hostManifests.Finsemble.component.custom
                •  
                  displayNamefinsemble.apps[].hostManifests.Finsemble.component.displayName
                  (string)Changes the applications's name in the launcher and its label in the pinned item section.
                •  
                  maxReloadAttemptsfinsemble.apps[].hostManifests.Finsemble.component.maxReloadAttempts
                  (number0)Number of maximum reload attempts that should be executed if the component's WebContents fails to load.
                  • minimum: 0
                  • maximum: 60
                •  
                  modefinsemble.apps[].hostManifests.Finsemble.component.mode
                  (string)
                •  
                  preloadfinsemble.apps[].hostManifests.Finsemble.component.preload
                  (boolean,string,array)A preload is a JavaScript file that is inserted into browser page and runs before any other content. Specify a full path for your preloads. You can specify a list of files to be included. Learn more about preloads in Integrating HTML Applications.
                  •  
                    preload[]finsemble.apps[].hostManifests.Finsemble.component.preload[]
                    (string)
                •  
                  reloadTimeoutfinsemble.apps[].hostManifests.Finsemble.component.reloadTimeout
                  (number60000)Reload timeout for the component's WebContents.
                  • minimum: 0
                  • maximum: 999999
                •  
                  showDevConsoleOnVisiblefinsemble.apps[].hostManifests.Finsemble.component.showDevConsoleOnVisible
                  (booleanfalse)If set to true, a Chrome developer console spawns along with the application to assist with debugging.
                •  
                  singletonfinsemble.apps[].hostManifests.Finsemble.component.singleton
                  (booleanfalse)If set to true, the application behaves as a singleton; only a single instance can be launched. If the application has already been launched, if a user tries to launch it again, Finsemble brings it to front instead.
                •  
                  spawnOnAllMonitorsfinsemble.apps[].hostManifests.Finsemble.component.spawnOnAllMonitors
                  (boolean)
                •  
                  spawnOnHotkeyfinsemble.apps[].hostManifests.Finsemble.component.spawnOnHotkey
                  (array)The application is launched when the user activates this global hotkey combination. Example: ["ctrl","alt","a"]
                  •  
                    spawnOnHotkey[]finsemble.apps[].hostManifests.Finsemble.component.spawnOnHotkey[]
                    (string)
                •  
                  spawnOnStartupfinsemble.apps[].hostManifests.Finsemble.component.spawnOnStartup
                  (booleanfalse)When true, Finsemble automatically launches this application when the application starts.
                •  
                  useAppCatalogfinsemble.apps[].hostManifests.Finsemble.component.useAppCatalog
                  (boolean)
              •  
                customfinsemble.apps[].hostManifests.Finsemble.custom
                (object)This area is free-form and can support any custom elements associated with the app.
                •             foreign

                •  
                  foreignfinsemble.apps[].hostManifests.Finsemble.foreign
                  (object)This section contains configurations that other applications and services read when they interact with this component.
                  •  
                    agentLabelfinsemble.apps[].hostManifests.Finsemble.foreign.agentLabel
                    (string)
                  •  
                    componentsfinsemble.apps[].hostManifests.Finsemble.foreign.components
                    (object)Configurations specific to other applications that wish to interact with this app.
                    •  
                      App Launcherfinsemble.apps[].hostManifests.Finsemble.foreign.components.App Launcher
                      (object)App launcher is a drop down menu that launches other application.
                      •  
                        launchableByUserfinsemble.apps[].hostManifests.Finsemble.foreign.components.App Launcher.launchableByUser
                        (booleanfalse)If true, an App Launcher menu can include this application.
                    •  
                      Toolbarfinsemble.apps[].hostManifests.Finsemble.foreign.components.Toolbar
                      (object)Configurations related to the global toolbar (at the top of the monitor).
                      •  
                        iconClassfinsemble.apps[].hostManifests.Finsemble.foreign.components.Toolbar.iconClass
                        (string)A CSS class character to display when this application is pinned in the toolbar. See "fin-font" or use font-awesome or similar. This setting will override AppD icons.
                        {
                        "iconClass": "ff-ungrid"
                        }
                    •  
                      Window Managerfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager
                      (object)Configurations specific to an app's window title bar.
                      •  
                        alwaysOnTopIconfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.alwaysOnTopIcon
                        (booleanfalse)When set to true, all windows can be pinned so that they are always on top (like a sticky note). You can override this setting for specific components in their configs.
                      •  
                        cloneIconfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.cloneIcon
                        (booleanfalse)When set to true, a clone icon will be added to the window titlebar that can be used to clone the window.
                      •  
                        componentCloseTimeoutfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.componentCloseTimeout
                        (number5000)Time, in milliseconds, to wait for the component to close. If the component hasn't closed within this limit, it will be force closed.
                      •  
                        deliveryMechanismfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.deliveryMechanism
                        (stringinjection)Specify the delivery method to use for scripts (e.g., FSBL, title bar, etc.) - Valid values are: "injection" - Injects the code into the window.
                           "injection"
                        "preload"
                      •  
                        floatingTitlebarComponentfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.floatingTitlebarComponent
                        (string)This config sets which component Finsemble will use as a title bar for native application components. By default, the only value is "FloatingTitlebar." This config allows you to customize this behavior with a customized title bar component and created a configuration for it in appd.json
                      •  
                        FSBLHeaderfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader
                        (boolean,objecttrue)This config controls the Finsemble window title bar UI component. FSBLHeader can be true, false or an object. If true then the window title bar will be injected into the component and the maximize, minimize, and close buttons will be displayed. If false, the title bar will not be displayed. If an object, you can tweak several details as to whether buttons are shown or how content is loaded under the title bar.
                        •  
                          adjustContentHeightsfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.adjustContentHeights
                          (booleantrue)When set to true, the height of content sized to fit the window is adjusted to fit within the adjusted bounds of the window when the Finsemble window title bar is injected into the DOM.
                        •  
                          bumpElementsfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.bumpElements
                          (object)Optional settings that adjust the height and position of absolute/fixed positioned elements when the window title bar is injected. Use it to mitigate rare display issues that can occur due to the injected title bar. Set this field to false to bypass all bumping logic.
                          •  
                            absolutefinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.bumpElements.absolute
                            Either none, "all" or "0Positioned". If all, all fixed elements are moved. 0Positioned only moves elements that have top 0. Only applies to children of the document.body.
                               "none"
                            "all"
                            "0Positioned"
                          •  
                            bumpByfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.bumpElements.bumpBy
                            (string)Sets the amount to bump elements by (e.g. "25px").
                          •  
                            fixedfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.bumpElements.fixed
                            Either none, "all" or "0Positioned". If all, all fixed elements are moved. 0Positioned only moves elements that have top 0.
                               "none"
                            "all"
                            "0Positioned"
                          •  
                            monitorFixedAdditionsfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.bumpElements.monitorFixedAdditions
                            (boolean)When set to true, mutations to the DOM are observed and fixed positioned elements with a top style of '0px' are bumped by the title bar height. Setting this to false disables the MutationObserver that is otherwise turned on for pages with injected title bars.
                        •  
                          hackScrollbarfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.hackScrollbar
                          (booleanfalse)When set to true, a window's vertical scrollbar is positioned underneath the Finsemble window title bar using html{ overflow-y: none} and body{ overflow-y: auto}
                        •  
                          hideClosefinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.hideClose
                          (booleanfalse)Value indicating whether the Close button is hidden in the component title bar.
                        •  
                          hideMaximizefinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.hideMaximize
                          (booleanfalse)When set to true, the Maximize icon is hidden from the component's title bar.
                        •  
                          hideMinimizefinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.hideMinimize
                          (booleanfalse)When set to true, the Minimize icon will be hidden from the component's title bar.
                        •  
                          zoomDefaultfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.FSBLHeader.zoomDefault
                          (number)Default zoom level to set for the component when using the zoom.js sample preload.
                      •  
                        titlefinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.title
                        (string)Sets the title in the window title bar.
                      •  
                        titlebarTypefinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.titlebarType
                        (stringbrowserview)Determines how the window title bar is added to web windows. The default 'browserview' separates the title bar and content pane into separate browserviews and can resolve rare display issues with the injected title bar, at the cost of disabling process grouping via affinity for the content pane. Setting 'injected' causes the title bar and its styles to be inserted directly into your web page's DOM and its layout to be lightly adjusted to accommodate.
                           "browserview"
                        "injected"
                      •  
                        zoomfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.zoom
                        (object)Configuration for the zoom.js preload.
                        •  
                          ignoreSelectorfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.zoom.ignoreSelector
                          (string)A css selector instructing the zoom.js preload which elements should not be zoomed
                          "#element-id"
                        •  
                          maxfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.zoom.max
                          (number5)The maximum allowed zoom level.
                        •  
                          minfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.zoom.min
                          (number0.2)The minimum allowed zoom level.
                        •  
                          stepfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.zoom.step
                          (number0.1)How much the zoom increases or decreases when zooming in or out.
                        •  
                          timeoutfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.zoom.timeout
                          (number3000)Time, in milliseconds, to display the zoom pop up before hiding it.
                        •  
                          zoomSelectorfinsemble.apps[].hostManifests.Finsemble.foreign.components.Window Manager.zoom.zoomSelector
                          (string)A css selector instructing the zoom.js preload which additional elements should get zoomed. The zoom preload will automatically attempt to detect which elements should get zoom.
                          "#my-element, .my-class"
                  •  
                    customfinsemble.apps[].hostManifests.Finsemble.foreign.custom
                  •  
                    servicesfinsemble.apps[].hostManifests.Finsemble.foreign.services
                    (object)Configurations for services that will interact with this application.
                    •  
                      windowServicefinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService
                      (object)Configurations that the window service will apply to this app.
                      •  
                        allowAutoArrangefinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.allowAutoArrange
                        (booleantrue)If true, the window can be auto arranged. If false, will disable the window's ability to be auto arranged by the Window Service.
                      •  
                        allowGroupingfinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.allowGrouping
                        (booleantrue)If true, the window can form groups with other windows. If false, this window cannot be placed into a group. Note: Grouping windows by manually dragging can be difficult or impossible if allowSnapping is disabled.
                      •  
                        allowMaximizefinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.allowMaximize
                        (booleantrue)If true, the window can be maximized. If false, the window cannot be maximized.
                      •  
                        allowMinimizefinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.allowMinimize
                        (booleantrue)If true, the window can be minimized to the taskbar. If false, the window cannot be minimized.
                      •  
                        allowSnappingfinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.allowSnapping
                        (booleantrue)If true, this window can be snapped. If false, this window cannot benefit from snapping.
                      •  
                        allowTabbingfinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.allowTabbing
                        (booleanfalse)If true, the window's titlebar will include a tab header that can be dragged or have other tabs dropped onto it. If false, tabbing will be disabled for this window.
                      •  
                        allowTilingfinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.allowTiling
                        (booleanfalse)If true, the window can be tiled on by other windows by dragging tab headers onto its body (below the titlebar). If false, tiling is disabled for this window. Tiling is not possible if a window is not resizable or if tabbing is disabled.
                      •  
                        globalfinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.global
                        (boolean)
                      •  
                        manageWindowMovementfinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.manageWindowMovement
                        (booleantrue)If true, the Window Service manages the window's movement. Unless otherwise specified by the following params, this means the Window Service can perform actions on this window: move, group, snap, minimize, maximize, etc. When this parameter is false it could be overwritten by allowSnapping, allowGrouping, allowAutoArrange, allowTabbing, allowTiling, allowMinimize, allowMaximize, window.dockable, FSBLHeader if any from them is true
                      •  
                        shouldRegisterfinsemble.apps[].hostManifests.Finsemble.foreign.services.windowService.shouldRegister
                        (boolean)
                    •  
                      workspaceServicefinsemble.apps[].hostManifests.Finsemble.foreign.services.workspaceService
                      (object)Configurations related to the workspace service.
                      •  
                        persistArgumentsfinsemble.apps[].hostManifests.Finsemble.foreign.services.workspaceService.persistArguments
                        (booleantrue)When false, the application does not automatically persist its arguments through restarts and workspace reloads, even when the arguments change in the config. Arguments are used for "native" (aka "assimilation") windows.
                      •  
                        persistPathfinsemble.apps[].hostManifests.Finsemble.foreign.services.workspaceService.persistPath
                        (booleanfalse)When true, the application automatically persists its path through restarts and workspace reloads, even when the path changes in the config. Path is used for "native" (aka "assimilation") windows.
                      •  
                        persistURLfinsemble.apps[].hostManifests.Finsemble.foreign.services.workspaceService.persistURL
                        (booleanfalse)A config that specifies whether Finsemble should persist the application URL. When true, the app or component automatically saves its last URL instead of using the one in the config. The application config overrides the global config.
                •             interop

                •  
                  interopfinsemble.apps[].hostManifests.Finsemble.interop
                  (object)Interop (data integration) related config for this app
                  •  
                    autoConnectfinsemble.apps[].hostManifests.Finsemble.interop.autoConnect
                    (booleanfalse)If set to true, the app automatically connects to the Interop service. In most cases, this causes the linker to display. If set to false (the default), the app connects on the first call to any fdc function.
                  •  
                    fdc3_1_2_compatibilityfinsemble.apps[].hostManifests.Finsemble.interop.fdc3_1_2_compatibility
                    (boolean)If true, Finsemble desktop agent conforms to FDC3 1.2 (as opposed to 2.0).
                  •  
                    joinMultipleChannelsfinsemble.apps[].hostManifests.Finsemble.interop.joinMultipleChannels
                    (boolean)If explicitly set to false, an app cannot join multiple user channels. So when an app that is already on a channel joins another channel, it automatically leaves the channel it was on.
                  •  
                    launchablefinsemble.apps[].hostManifests.Finsemble.interop.launchable
                    (boolean)If explicitly set to false, an app is not launchable from the FDC3 UI resolver for handling an intent. This property is independent from the launchableByUser property affecting the App Launcher menu.
                  •  
                    selectConnectfinsemble.apps[].hostManifests.Finsemble.interop.selectConnect
                    (array)Interop messaging rules to support no-code integration of modules. It allows you to specify precisely which modules can communicate and in what way.
                    •  
                      selectConnect[]finsemble.apps[].hostManifests.Finsemble.interop.selectConnect[]
                      (object)A specific selectConnect rule that consists of one or more properties.
                      •  
                        authorizefinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].authorize
                        (array)
                        •  
                          authorize[]finsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].authorize[]
                          (object)When set, messages are restricted to apps that meet the authorization criteria. Note: Using 'authorize' is the same as using both 'to' and 'from'.
                          •  
                            namefinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].authorize[].name
                            (string)When set, messages are delivered to or received from apps with this name only. Finsemble verifies the app name.
                      •  
                        autoAssociatefinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].autoAssociate
                        (object)Define app’s autoAssociate property
                        •  
                          allChildrenfinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].autoAssociate.allChildren
                          (boolean)if true, all apps spawned or opened by this app are automatically associated (i.e. auto-joined to common channel).
                        •  
                          selectChildrenfinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].autoAssociate.selectChildren
                          (array)Any app in this list when spawned or opened by this app is automatically associated.
                          •  
                            selectChildren[]finsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].autoAssociate.selectChildren[]
                            (string)appId of child app.
                        •  
                          usingConnectIdfinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].autoAssociate.usingConnectId
                          (string)Specifies a fixed association (as opposed to dynamic) using the specified connectId -- all apps with this connectId are automatically associated.
                      •  
                        ccfinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].cc
                        (string)The name of a valid selectConnect module. When cc is set, that module receives a copy of the message. cc works on both outgoing and incoming traffic.
                      •  
                        contextTypefinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].contextType
                        (string)Apply this rule only to this specific context type. (Optional).
                      •  
                        fromfinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].from
                        (array)
                        •  
                          from[]finsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].from[]
                          (object)When set, messages can be received only from apps that meet the authorization criteria.
                          •  
                            namefinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].from[].name
                            (string)When set, messages can be received only from apps with this name. Finsemble verifies the app name.
                      •  
                        fwdfinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].fwd
                        (string)The name of a valid selectConnect module. When you set fwd, that module receives the message *instead* of the original description. fwd is intended primarily for outgoing traffic but also works on incoming traffic.
                      •  
                        tofinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].to
                        (array)
                        •  
                          to[]finsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].to[]
                          (object)When set, messages re sent only to apps that meet the authorization criteria.
                          •  
                            namefinsemble.apps[].hostManifests.Finsemble.interop.selectConnect[].to[].name
                            (string)When set, messages are sent only to apps with this name. Finsemble verifies the app name.
                  •  
                    showWhenIntentReceivedfinsemble.apps[].hostManifests.Finsemble.interop.showWhenIntentReceived
                    (boolean)If explicitly set to false, do not automatically show (i.e. bring to front or restore) an app instance receiving an FDC3 intent. If explicitly set to true, then always try to show it. Otherwise, the default is to show the application when an intent is received if the app window is normally shown (i.e. its autoShow property is true).
                  •  
                    useLinkerfinsemble.apps[].hostManifests.Finsemble.interop.useLinker
                    (boolean)The linker is turned on by default for any app that uses FDC3. Set this flag to false if you want to turn off the linker for this app, for example, if your app only uses App Channels (i.e. 'well known' named channels).
                •  
                  signatureKeyfinsemble.apps[].hostManifests.Finsemble.signatureKey
                  (object)Public authentication key to decrypt static AuthenticationTokens within interopService. Necessary config for Freestanding applications connecting to Finsemble from outside.
                  •  
                    algfinsemble.apps[].hostManifests.Finsemble.signatureKey.alg
                    (string)The algorithm used to generate the keys, for example, "RS256".
                •  
                  signatureKeyURLfinsemble.apps[].hostManifests.Finsemble.signatureKeyURL
                  (stringfalse)URL specifying the location of the signature key - an alternative to providing the signatureKey with the Finsemble configuration.
                •  
                  uiComponentfinsemble.apps[].hostManifests.Finsemble.uiComponent
                  (booleanfalse)
                •  
                  waitForInitializationfinsemble.apps[].hostManifests.Finsemble.waitForInitialization
                  (booleanfalse)When true, startup waits for the app to explicitly signal it is ready.
                •             window

                •  
                  windowfinsemble.apps[].hostManifests.Finsemble.window
                  (object)Configurations that manage placement of the application's window on the screen. Configuration settings in this section can also be passed as parameters to LauncherClient.spawn().
                  •  
                    addToWorkspacefinsemble.apps[].hostManifests.Finsemble.window.addToWorkspace
                    (booleanfalse)Specifies whether to add the new component to the workspace. The value set in the component manifest takes priority over any value passed as a parameter to LauncherClient.spawn or related functions. Set it to false to prevent tabbing and grouping for the component.
                  •  
                    affinityfinsemble.apps[].hostManifests.Finsemble.window.affinity
                    (string,boolean)Process affinity allows you to control how render processes for web windows, served from the same 'site' (registered domain and protocol) are grouped together, reducing their memory footprint, at the cost of increasing CPU resource contention (because a render thread can only process one window at a time). As most user interface components are only active while the user is interacting with them, process grouping via affinity is an effective way to reduce memory footprint. Conversely, you might want to disable or customize the affinity setting for CPU intensive applications that are driven by outside events (for example a ticking blotter or chart driven by an external data source). In this way, you can strike a balance between performance and memory footprint. Group applications together thoughtfully by setting them to the same string value or disable render process group by setting affinity to false. See the Process Management tutorial for more information.
                  •  
                    aliasfinsemble.apps[].hostManifests.Finsemble.window.alias
                    (string)Used with native applications (that is, when windowType is "native" or "assimilation") instead of path. Specifies the alias of a bundled asset to launch.
                  •  
                    argumentsfinsemble.apps[].hostManifests.Finsemble.window.arguments
                    (string)Specifies the arguments to be sent to a native application (that is, when windowType is "native" or "assimilation") on launch. Separate the arguments by spaces: --arg1 foo --arg2 bar except when params.argumentsAsQueryString is true, in which case set this parameter to be single string in URI format: arg=1&arg=2.
                  •  
                    argumentsAsQueryStringfinsemble.apps[].hostManifests.Finsemble.window.argumentsAsQueryString
                    (boolean)For native applications (i.e. when windowType is "native" or "assimilation"), causes the generated arguments (the automatically generated arguments and any supplied as the "arguments" parameter) to be encoded as a query string and appended to the URI. Useful for applications launched via a protocol handler or online ClickOnce deployment, where the path parameter is a URI.
                  •  
                    bottomfinsemble.apps[].hostManifests.Finsemble.window.bottom
                    (string,number,null)A pixel value that represents the distance from the bottom edge of the viewport as defined by "position". For non-absolute positions, you can also use the percentage value, which represents the percentage distance from the bottom edge of the viewport relative to the viewport's height.
                  •  
                    claimMonitorSpacefinsemble.apps[].hostManifests.Finsemble.window.claimMonitorSpace
                    (boolean)For use with permanent toolbars. The available space for other components is reduced by the amount of space covered by the newly spawned component. Users can't move windows to a position that covers the claimed space.
                  •  
                    closeComponentsTogetherfinsemble.apps[].hostManifests.Finsemble.window.closeComponentsTogether
                    (booleanfalse)Whether to close all components within a launchGroup at the same time.
                  •  
                    componentfinsemble.apps[].hostManifests.Finsemble.window.component
                    Type of component to spawn.
                  •  
                    datafinsemble.apps[].hostManifests.Finsemble.window.data
                    (array,boolean,integer,null,number,object,string)Optional data to pass to the opening window. If set, then the spawned window can use WindowClient.getSpawnData to retrieve the data.
                  •  
                    defaultHeightfinsemble.apps[].hostManifests.Finsemble.window.defaultHeight
                    (number)
                  •  
                    dockablefinsemble.apps[].hostManifests.Finsemble.window.dockable
                    (array,boolean)Parts of the monitor that the component can dock to. Valid values are top and bottom. The [] value is equal false. The true value is equal ['top', 'bottom'].
                       true
                    false
                    []
                    ["top"]
                    ["bottom"]
                    ["top","bottom"]
                    •  
                      dockable[]finsemble.apps[].hostManifests.Finsemble.window.dockable[]
                      (string)
                  •  
                    dockedfinsemble.apps[].hostManifests.Finsemble.window.docked
                    (string)Specifies the part of the monitor that the component docks to on spawn. Only valid if combined with the dockable property.
                       "top"
                    "bottom"
                  •  
                    dockedHeightfinsemble.apps[].hostManifests.Finsemble.window.dockedHeight
                    (number)
                  •  
                    envfinsemble.apps[].hostManifests.Finsemble.window.env
                    Sets environment variables for a spawned native application. Create a map (JSON) object of names to values. This is only available when running Assimilation.
                  •  
                    ephemeralfinsemble.apps[].hostManifests.Finsemble.window.ephemeral
                    (boolean)Indicates that this window is ephemeral. An ephemeral window is a dialog, menu, or other window that is temporarily displayed but usually hidden. Ephemeral windows automatically have these settings assigned: resizable: false, showTaskbarIcon: false, alwaysOnTop: true. Use options:{autoShow: false} to prevent an ephemeral window from showing automatically.
                  •  
                    forceOntoMonitorfinsemble.apps[].hostManifests.Finsemble.window.forceOntoMonitor
                    (boolean,string)If true, tries to make the window have no edges outside the monitor boundary.
                       true
                    false
                    "availableRect"
                    "monitorRect"
                  •  
                    framefinsemble.apps[].hostManifests.Finsemble.window.frame
                    (boolean)
                  •  
                    groupOnSpawnfinsemble.apps[].hostManifests.Finsemble.window.groupOnSpawn
                    (boolean)Groups the window to the relativeWindow based on their adjacent position.
                  •  
                    heightfinsemble.apps[].hostManifests.Finsemble.window.height
                    (number,string)A pixel or percentage value.
                  •  
                    idfinsemble.apps[].hostManifests.Finsemble.window.id
                    (string)
                  •  
                    leftfinsemble.apps[].hostManifests.Finsemble.window.left
                    (string,number,null)A pixel value representing the distance from the left edge of the viewport as defined by "position". For non-absolute positions, you can also use the percentage value, which represents the percentage distance from the left edge of the viewport relative to the viewport's width.
                    "adjacent" will snap to the right edge of the spawning or relative window.
                    "center" will center the window. If neither left nor right are provided, then the default will be to stagger the window based on the last spawned window.
                  •  
                    maxHeightfinsemble.apps[].hostManifests.Finsemble.window.maxHeight
                    (number,boolean,null)Maximum height window can be resized to.
                  •  
                    maxWidthfinsemble.apps[].hostManifests.Finsemble.window.maxWidth
                    (number,boolean,null)Maximum width window can be resized to.
                  •  
                    minHeightfinsemble.apps[].hostManifests.Finsemble.window.minHeight
                    (number,boolean,null)Minimum height window can be resized to.
                  •  
                    minWidthfinsemble.apps[].hostManifests.Finsemble.window.minWidth
                    (number,boolean,null)Minimum width window can be resized to.
                  •  
                    monitorfinsemble.apps[].hostManifests.Finsemble.window.monitor
                    (number,string)Specifies on which monitor to place the new window.
                    "mine" - Place the window on the same monitor as the calling window.
                    Integer value from 0-n (0 being the primary monitor).
                    "primary" indicates the user's primary monitor.
                    "all" - Put a copy of the component on all monitors.
                  •  
                    namefinsemble.apps[].hostManifests.Finsemble.window.name
                    (string)Window name to apply to the application. The name is not normally specified, allowing Finsemble to generate a random one from the component type. If specified in the configuration, only a single copy of the component can exist at a time.
                  •  
                    optionsfinsemble.apps[].hostManifests.Finsemble.window.options
                    (object)Low level window behavior options. Note that you can't pass options as arguments to LauncherClient.spawn and related API calls
                    •  
                      allowedNavigationUrlsfinsemble.apps[].hostManifests.Finsemble.window.options.allowedNavigationUrls
                      (array)Controls whether the app can navigate to other urls. If unspecified, the default is to allow all urls. This will change in a future version to allowing only same-origin urls, those with the same domain, protocol, and port as the window itself. An empty array indicates no navigation is allowed, even to the origin domain. To allow specific domains, add those domains to the array. The origin domain must also be added.
                      •  
                        allowedNavigationUrls[]finsemble.apps[].hostManifests.Finsemble.window.options.allowedNavigationUrls[]
                        (string)A list of domains to which this app is allowed to navigate or open pop-up windows. If a domain is not fully qualified, it is treated as a wildcard, '*.domain.com'
                    •  
                      allowedWindowOpenUrlsfinsemble.apps[].hostManifests.Finsemble.window.options.allowedWindowOpenUrls
                      (array)Controls whether the app can programmatically open a window with window.open() based on the url. If unspecified, the default is to allow all urls. This will change in a future version to allowing only same-origin urls, those with the same domain, protocol, and port as the window itself. An empty array indicates no navigation is allowed, even to the origin domain. To allow specific domains, add those domains to the array. The origin domain must also be added.
                      •  
                        allowedWindowOpenUrls[]finsemble.apps[].hostManifests.Finsemble.window.options.allowedWindowOpenUrls[]
                        (string)A list of domains to which this app is allowed to navigate or open pop-up windows. If a domain is not fully qualified, it is treated as a wildcard, '*.domain.com'
                    •  
                      alwaysOnTopfinsemble.apps[].hostManifests.Finsemble.window.options.alwaysOnTop
                      (booleanfalse)When set to true, the window is always on top (like a sticky note) of any window with alwaysOnTop set to false.
                    •  
                      autoShowfinsemble.apps[].hostManifests.Finsemble.window.options.autoShow
                      (booleantrue)When set to true, the window is visible when it is spawned. When set to false, the window is spawned to be invisible.
                    •  
                      backgroundThrottlingfinsemble.apps[].hostManifests.Finsemble.window.options.backgroundThrottling
                      (boolean)Specifies whether to throttle animations and timers when the page becomes backgrounded. This also affects the Page Visibility API. Defaults to true
                    •  
                      Content-Security-Policyfinsemble.apps[].hostManifests.Finsemble.window.options.Content-Security-Policy
                      (array,string)Custom content security policy (CSP) that overrides the manifest CSP and the CSP received from this app's HTTP server. This can be a string or an array of strings. See MDN docs on CSP
                      [
                      "script-src *;"
                      ]
                      •  
                        Content-Security-Policy[]finsemble.apps[].hostManifests.Finsemble.window.options.Content-Security-Policy[]
                        (string)
                    •  
                      contextMenufinsemble.apps[].hostManifests.Finsemble.window.options.contextMenu
                      (booleantrue)A flag to show the context menu when right-clicking on a window. Gives access to the Developer Console for the Window.
                    •  
                      cornerRoundingfinsemble.apps[].hostManifests.Finsemble.window.options.cornerRounding
                      (boolean,objecttrue)Specifies corner rounding for a window.
                      •  
                        heightfinsemble.apps[].hostManifests.Finsemble.window.options.cornerRounding.height
                        (number0)
                      •  
                        widthfinsemble.apps[].hostManifests.Finsemble.window.options.cornerRounding.width
                        (number0)
                    •  
                      isEvergreenfinsemble.apps[].hostManifests.Finsemble.window.options.isEvergreen
                      (booleanfalse)When set to true, the window hides and shows when switching between workspaces rather than opening and closing. The same singleton instance of the window is used across multiple workspaces. Note: Tabbing and tiling is set to false for Evergreen components. If you're using set/getComponentState, the state is different per workspace. Listen for the 'component-state-changed' event on the window to update your application accordingly. Or fetch the new state in the Workspace 'load-complete' event in the case of a native application.
                    •  
                      opacityfinsemble.apps[].hostManifests.Finsemble.window.options.opacity
                      (number1)Sets the opacity of the window.
                    •  
                      openLinksInExternalBrowserfinsemble.apps[].hostManifests.Finsemble.window.options.openLinksInExternalBrowser
                      (booleanfalse)When set to true, links (anchor tags) will be open in the OS default browser. See 'navigation' property for restricting navigation.
                    •  
                      permissionsfinsemble.apps[].hostManifests.Finsemble.window.options.permissions
                      (object)Change an application's individual permissions to be different than from those in its security policy by adding configs under this config. See the Security Policies tutorial for more information.
                      •  
                        resizablefinsemble.apps[].hostManifests.Finsemble.window.options.resizable
                        (booleantrue)When set to false, the user can't resize the window's edges and won't the window participate in Windows Aero Snap.
                      •  
                        securityPolicyfinsemble.apps[].hostManifests.Finsemble.window.options.securityPolicy
                        (string)Set an application's security policy by name, for example to the default "trusted" or "untrusted" policies or to a custom policy. See the Security Policies tutorial for more information.
                      •  
                        showTaskbarIconfinsemble.apps[].hostManifests.Finsemble.window.options.showTaskbarIcon
                        (boolean)Specifies whether the application should be displayed in the Windows taskbar.
                      •  
                        transparentfinsemble.apps[].hostManifests.Finsemble.window.options.transparent
                        (boolean)When set to true, the window is transparent. This works only if you haven't set any background color on the window, including through css tags. Dynamically removing background color styles does _not_ work on Mac (there must be no initial css styles for background or background-color).
                      •  
                        userAgentStringfinsemble.apps[].hostManifests.Finsemble.window.options.userAgentString
                        (string)Sets the userAgent for a web window, allowing for spoofing the of the userAgent.
                      •  
                        windowSpawnTimeoutfinsemble.apps[].hostManifests.Finsemble.window.options.windowSpawnTimeout
                        (number30)Number of seconds before a native application component spawn times out.
                      •  
                        windowTitleBarUrlfinsemble.apps[].hostManifests.Finsemble.window.options.windowTitleBarUrl
                        (string)When specified, overrides the default Finsemble window titlebar. See finsemble.windowTitleBarUrl for more info.
                    •  
                      pathfinsemble.apps[].hostManifests.Finsemble.window.path
                      (string)Specifies the path to a native application (i.e. when windowType is "native" or "assimilation"). The path can be:
                      • The name of an exe that is on the system path (e.g., notepad.exe).
                      • The full path to an executable on the user's machine (e.g., C:\Program Files\app.exe).
                      • A system installed URI (e.g., myuri://advancedapplauncher).
                      When windowType is "native", additional arguments are automatically appended to the path or the URI. The native app can capture these arguments to tie it to Finsemble's window tracking. When building an application with finsemble.dll, this is handled automatically. Those arguments are:
                      • uuid - A generated UUID that uniquely identifies this window.
                      • left - The x coordinate of the new window
                      • top - The y coordinate of the new window
                      • width - The width of the new window
                      • height - The height of the new window
                      • finsembleWindowName - The name of the window in the Finsemble config
                      • componentType - The component type in the Finsemble config
                      • appName - The name of the application in the Finsemble appd.
                      A common problem occurs when a native application needs to be launched from an intermediary application (such as a launcher or batch script) or a window needs to be created by a multi-process. multi-window application. The intermediary application or process can pass these parameters along to the final application or thread, which uses them to connect back to Finsemble.
                    •  
                      positionfinsemble.apps[].hostManifests.Finsemble.window.position
                      (string)Defines a "viewport" for the spawn, with one of the Position Types:
                      • available - Positioned according to the coordinates available on the monitor itself, less space claimed by the operating system (such as the windows toolbar). For example, bottom:0 places the new component with its bottom flush against the windows toolbar.
                      • monitor - Positioned according to the absolute size of the monitor. For example, top:0 places the component overlapping the toolbar.
                      • relative - Positioned relative to the relativeWindow. For example, left:0;top:0 joins the top left corner of the new component with the top left corner of the relative window.
                      • virtual - Deprecated. Positioned against coordinates on the virtual screen. The virtual screen is the full viewing area of all monitors combined into a single theoretical monitor.
                      • absolute - Positioned using native operating system coordinates. Absolute positions require numeric top/right/left/bottom arguments.
                      .
                         "available"
                      "monitor"
                      "relative"
                      "virtual"
                      "absolute"
                    •  
                      relativeWindowfinsemble.apps[].hostManifests.Finsemble.window.relativeWindow
                      The window to use when calculating any relative launches. If not set, the window from which spawn() was called. Primarily used as an argument to LauncherClient.spawn() and related functions.
                    •  
                      rightfinsemble.apps[].hostManifests.Finsemble.window.right
                      (string,number,null)A pixel value representing the distance from the right edge of the viewport as defined by "position". For non-absolute positions, you can also use the percentage value, which represents the percentage distance from the right edge of the viewport relative to the viewport's width.
                    •  
                      setBoundsOnlyfinsemble.apps[].hostManifests.Finsemble.window.setBoundsOnly
                      (boolean)If true, visibility of window is not changed. In other words, a hidden window won't be made visible. Primarily used as an argument to LauncherClient.showWindow() and related functions.
                    •  
                      showfinsemble.apps[].hostManifests.Finsemble.window.show
                      (boolean)
                    •  
                      slavefinsemble.apps[].hostManifests.Finsemble.window.slave
                      (boolean)If true, the new window acts as a slave to the relativeWindow (or the launching window if relativeWindow is not specified). Slave windows automatically close when their parent windows close.
                    •  
                      staggerPixelsfinsemble.apps[].hostManifests.Finsemble.window.staggerPixels
                      (number)Number of pixels to stagger (default when neither left, right, top or bottom are set).
                    •  
                      topfinsemble.apps[].hostManifests.Finsemble.window.top
                      (string,number,null)A pixel value that represents the distance from the bottom edge of the viewport as defined by "position". For non-absolute positions, you can also use the percentage value, which represents the percentage distance from the top edge of the viewport relative to the viewport's height.
                    •  
                      toSpawnfinsemble.apps[].hostManifests.Finsemble.window.toSpawn
                      (array)An array of objects defining the components to spawn. Each entry can either represent a single component in the form {componentType, spawnOptions} or a tabbed window of components in the form {components, spawnOptions}, where components is an array of single component definitions (again in the form {componentType, spawnOptions}). Most arguments that are normally passed to LauncherClient.spawn are supported, although positioning is interpreted as relative to the group's coordinates and dimensions for single components and ignored for tabbed components (as these use the position specified in the group's spawnOptions). Note - This param is taken into account only if the "windowType" param is "launchGroup".
                      [
                      {
                      "componentType": "Welcome Component",
                      "spawnOptions": {
                      "top": 0,
                      "left": 0,
                      "height": 250,
                      "width": 600,
                      "data": {}
                      }
                      },
                      {
                      "components": [
                      {
                      "componentType": "Welcome Component",
                      "spawnOptions": {
                      "data": {}
                      }
                      },
                      {
                      "componentType": "ProcessMonitor",
                      "spawnOptions": {
                      "data": {}
                      }
                      }
                      ],
                      "spawnOptions": {
                      "top": 250,
                      "left": 0,
                      "height": 250,
                      "width": 600
                      }
                      },
                      {
                      "componentType": "Welcome Component",
                      "spawnOptions": {
                      "top": 500,
                      "left": 0,
                      "height": 200,
                      "width": 600,
                      "data": {}
                      }
                      },
                      {
                      "componentType": "ProcessMonitor",
                      "spawnOptions": {
                      "top": 0,
                      "left": 600,
                      "height": 700,
                      "width": 300,
                      "data": {}
                      }
                      }
                      ]
                      •  
                        toSpawn[]finsemble.apps[].hostManifests.Finsemble.window.toSpawn[]
                        (object)
                        •  
                          componentsfinsemble.apps[].hostManifests.Finsemble.window.toSpawn[].components
                          (array)An array of components to spawn as a tabbed group within the launchGroup.
                          •  
                            components[]finsemble.apps[].hostManifests.Finsemble.window.toSpawn[].components[]
                        •  
                          componentTypefinsemble.apps[].hostManifests.Finsemble.window.toSpawn[].componentType
                          (string)The name of a component to spawn
                        •  
                          spawnOptionsfinsemble.apps[].hostManifests.Finsemble.window.toSpawn[].spawnOptions
                          (object)Minimal definition for component spawn options
                          •  
                            datafinsemble.apps[].hostManifests.Finsemble.window.toSpawn[].spawnOptions.data
                            (object)
                          •  
                            heightfinsemble.apps[].hostManifests.Finsemble.window.toSpawn[].spawnOptions.height
                            (number,string)
                          •  
                            leftfinsemble.apps[].hostManifests.Finsemble.window.toSpawn[].spawnOptions.left
                            (number,string)
                          •  
                            topfinsemble.apps[].hostManifests.Finsemble.window.toSpawn[].spawnOptions.top
                            (number,string)
                          •  
                            widthfinsemble.apps[].hostManifests.Finsemble.window.toSpawn[].spawnOptions.width
                            (number,string)
                    •  
                      urlfinsemble.apps[].hostManifests.Finsemble.window.url
                      (string)The URL to load for a web application (i.e. when windowType is undefined, 'WebWindow' or 'application').
                    •  
                      widthfinsemble.apps[].hostManifests.Finsemble.window.width
                      (number,string)A pixel or percentage value.
                    •  
                      windowTitleBlackListfinsemble.apps[].hostManifests.Finsemble.window.windowTitleBlackList
                      (string,null)A regular expression-based string specifying window title to exclude from integration, such as splash screens or transient dialogs. Is used only for assimilation window type.
                      "Opening.*"
                    •  
                      windowTitleWhiteListfinsemble.apps[].hostManifests.Finsemble.window.windowTitleWhiteList
                      (string,null)A regular expression-based string specifying window title to include (finsemblize) in the integration. Is used only for assimilation window type.
                      ".*(Outlook|Today).*"
                    •  
                      windowTypefinsemble.apps[].hostManifests.Finsemble.window.windowType
                      (string)Describes which type of component to spawn.
                      • WebWindow - A normal HTML window. Requires "url" to be specified.
                      • assimilation - A window that is managed by the Finsemble assimilation process (usually a native window without source code access). Requires "path" or "alias" to be specified.
                      • native - A native window that has implemented finsemble.dll. Requires "path" or "alias" to be specified.
                      • WebApplication - (DEPRECATED) Use WebWindow instead. Requires "url" to be specified.
                      • launchGroup - A component made of other components, usually grouped together. See toSpawn property.
                      • Citrix - (EXPERIMENTAL) A virtual app available in your Citrix Workspace app launcher. Requires "alias" to be specified.
                         "WebWindow"
                      "assimilation"
                      "native"
                      "WebApplication"
                      "launchGroup"
                      "Citrix"
                      "external"
              •  
                iconsfinsemble.apps[].icons
                (array)Set of icons for the app. Finsemble tries to pick the best matching icon but we recommend a single png size 64x64 with a transparent background.
                •  
                  icons[]finsemble.apps[].icons[]
                  (object)
                  •  
                    labelfinsemble.apps[].icons[].label
                    (string)Optional caption for the image.
                  •  
                    sizefinsemble.apps[].icons[].size
                    (string)Image dimension formatted as <height>x<width>
                  •  
                    srcfinsemble.apps[].icons[].src
                    (string)App Image URL.
                  •  
                    typefinsemble.apps[].icons[].type
                    (string)Image media type. If not present, Finsemble can use the src file extension.
              •  
                interopfinsemble.apps[].interop
                (object)Metadata that describes how the application uses FDC3 APIs. This metadata serves multiple purposes:
                • It supports intent resolution by a desktop agent, by declaring what intents an app listens for.
                • It can be used, for example in an app catalog UI, to find apps that 'interoperate with' other apps.
                • It provides a standard location to document how the app interacts with user channels, app channels, and intents, for use by other app developers and desktop assemblers.
                •  
                  appChannelsfinsemble.apps[].interop.appChannels
                  (array)Describes the application's use of App Channels.
                  This metadata is not currently used by the desktop agent, but is provided to help find apps that will interoperate with this app and to document API interactions for use by other app developers.
                  •  
                    appChannels[]finsemble.apps[].interop.appChannels[]
                    (object)
                    •  
                      broadcastsfinsemble.apps[].interop.appChannels[].broadcasts
                      (array)An array that contains the names of context types that the app broadcasts on the channel.
                      •  
                        broadcasts[]finsemble.apps[].interop.appChannels[].broadcasts[]
                        (string)
                    •  
                      descriptionfinsemble.apps[].interop.appChannels[].description
                      (string)A description of how the channel is used.
                    •  
                      idfinsemble.apps[].interop.appChannels[].id
                      (string)The ID of the App Channel.
                    •  
                      listensForfinsemble.apps[].interop.appChannels[].listensFor
                      (array)An array that contains the names of context types that the application listens for on the channel.
                      •  
                        listensFor[]finsemble.apps[].interop.appChannels[].listensFor[]
                        (string)
                •  
                  intentsfinsemble.apps[].interop.intents
                  (object)Describes the app's interactions with intents.
                  •  
                    listensForfinsemble.apps[].interop.intents.listensFor
                    (object)A mapping of Intents names that an app listens for via fdc3.addIntentListener() to their configuration.
                    Used to support intent resolution by desktop agents. Replaces the intents element used in appD records prior to FDC3 2.0.
                    •  
                      listensFor[]finsemble.apps[].interop.intents.listensFor[]
                      (object)
                      •  
                        contextsfinsemble.apps[].interop.intents.listensFor[].contexts
                        (array)A filter stating that this app handles only intents for *these* context types. Note that intents can have one or more context types.
                        •  
                          contexts[]finsemble.apps[].interop.intents.listensFor[].contexts[]
                          (string)
                      •  
                        resultTypefinsemble.apps[].interop.intents.listensFor[].resultType
                        (string)An optional type for output returned by the application, if any, when resolving this intent. Might indicate a context type by type name (e.g. "fdc3.instrument"), a channel (e.g. "channel") or a combination that indicates a channel that returns a particular context type (e.g. "channel<fdc3.instrument>").
                  •  
                    raisesfinsemble.apps[].interop.intents.raises
                    (object)A mapping of Intent names that an app raises (via fdc3.raiseIntent) to an array of context type names that it can be raised with.
                    Use the intent name "any" to represent use of the fdc3.raiseIntentForContext and fdc3.findIntentForContext functions, which allow the user to select from intents available for a specified context type.
                    This metadata is not currently used by the desktop agent, but is provided to help find apps that will interoperate with this app and to document API interactions for use by other app developers.
                    •  
                      raises[]finsemble.apps[].interop.intents.raises[]
                      (array)Context type names that the intent may be raised with.
                      •  
                        raises[][]finsemble.apps[].interop.intents.raises[][]
                        (string)
                •  
                  userChannelsfinsemble.apps[].interop.userChannels
                  Describes the application's use of context types on User Channels.
                  This metadata is not currently used by the desktop agent, but is provided to help find apps that will interoperate with this app and to document API interactions for use by other app developers.
                  •  
                    broadcastsfinsemble.apps[].interop.userChannels.broadcasts
                    (array)Context type names that are broadcast by the application.
                    •  
                      broadcasts[]finsemble.apps[].interop.userChannels.broadcasts[]
                      (string)
                  •  
                    listensForfinsemble.apps[].interop.userChannels.listensFor
                    (array)Context type names that the application listens for.
                    •  
                      listensFor[]finsemble.apps[].interop.userChannels.listensFor[]
                      (string)
              •  
                langfinsemble.apps[].lang
                (string)A language tag that specifies the primary language of both the application and its AppD entry, as defined by IETF RFC 5646. For example, "fr" for French or "en-CA" for Canadian English.
              •  
                localizedVersionsfinsemble.apps[].localizedVersions
                (object)Provides localized alternatives to any field of the AppD record, which may also refer to an alternative version of the application that is also localized (e.g. by providing customConfig or an alternative URL). The keys to this object should be language tags as defined by IETF RFC 5646, e.g. en, en-GB or fr-FR. Not currently used in Finsemble.
                •  
                  metadatafinsemble.apps[].metadata
                  (object)Optional metadata that you can use to manage updates of this appD record.
                  •  
                    appDUrlfinsemble.apps[].metadata.appDUrl
                    (string)The appDUrl must be a valid URL to retrieve an updated copy of this appD record.
                  •  
                    autoUpdatefinsemble.apps[].metadata.autoUpdate
                    (boolean)If explicitly true and an appDUrl is set, Finsemble automatically updates the appD record during startup.
                  •  
                    retrievedAtfinsemble.apps[].metadata.retrievedAt
                    (string)The ISO formatted date and time string at which the appD record was last retrieved from the appDUrl. Finsemble sets this automatically.
                •  
                  moreInfofinsemble.apps[].moreInfo
                  (string)Optional URL that provides more information about the application. For use in an app directory catalog UI.
                •  
                  namefinsemble.apps[].name
                  (string)The legacy name property, which was used in earlier versions of FDC3 to refer to applications through the API. As name is non-unique within or across app directories its use in the FDC3 Desktop Agent API is deprecated in favour of using an AppIdentifier with an appId property.
                •  
                  publisherfinsemble.apps[].publisher
                  (string)The name of the organization that publishes the app. Ued when picking apps out of third party catalogs.
                •  
                  screenshotsfinsemble.apps[].screenshots
                  (array)Array of images to show the user when they are looking at app description. Each image can have an optional label.
                  •  
                    screenshots[]finsemble.apps[].screenshots[]
                    (object)
                    •  
                      labelfinsemble.apps[].screenshots[].label
                      (string)Optional caption for the image.
                    •  
                      sizefinsemble.apps[].screenshots[].size
                      (string)Image dimension formatted as <height>x<width>
                    •  
                      srcfinsemble.apps[].screenshots[].src
                      (string)App Image URL.
                    •  
                      typefinsemble.apps[].screenshots[].type
                      (string)Image media type. If not present, Finsemble can use the src file extension.
                •  
                  supportEmailfinsemble.apps[].supportEmail
                  (string)An email address to contact for support with this app.
                •  
                  titlefinsemble.apps[].title
                  (string)A human-readable name that describes the app. The app appears in the launcher menu under this title.
                •  
                  typefinsemble.apps[].type
                  (string)(required)The technology type that is used to launch and run the application. Each application type implies a particular set of launch details. The supported types include:
                  • web: Web applications launched via a URL
                  • native: Native applications pre-installed on a device and launch via a filesystem path
                  • citrix: Apps virtualized via Citrix
                  • onlineNative: Native apps that have an online launcher, e.g. online ClickOnce app deployments.
                  • other: Used to represent apps that don't conform to or cannot be launched via the other types, and are likely to be defined solely by a hostManifest.
                     "web"
                  "native"
                  "citrix"
                  "onlineNative"
                  "other"
                •  
                  versionfinsemble.apps[].version
                  (string)The version of the app. This should follow semantic versioning rules.
            •  
              authenticationfinsemble.authentication
              (object)Contains authentication profiles. Finsemble runs the special "startup" profile when your smart desktop launches.

                      startup

              •  
                startupfinsemble.authentication.startup
                (object)Declare an authentication profile that uses simple password collection or any other type of custom authentication process.
                •  
                  adapterfinsemble.authentication.startup.adapter
                  (string)(required)The authentication "adapter" (module) for this authentication profile. See Authenticating apps.
                     "PASSWORD"
                  "OAUTH2"
                •  
                  authorization_endpointfinsemble.authentication.startup.authorization_endpoint
                  (string)When used with OAUTH2 adapter, the authorization endpoint for your Identity Provider (IP).
                •  
                  backchannel_endpointfinsemble.authentication.startup.backchannel_endpoint
                  (string)When used with OAUTH2 adapter, your backchannel endpoint URL.
                •  
                  client_idfinsemble.authentication.startup.client_id
                  (string)When used with OAUTH2 adapter, the "client ID" provided by your Identity Provider (IP).
                •  
                  componentfinsemble.authentication.startup.component
                  (string)The UI component to use for this authentication profile. Typically this is "authentication.html" used by the "PASSWORD" adapter to display a user/login form.
                •  
                  redirect_urlfinsemble.authentication.startup.redirect_url
                  (string)The component to handle the response from your Identity Provider. If you don't provide this, Finsemble uses $moduleRoot/ui-components/oauthResponse/index.html.
                •  
                  scopefinsemble.authentication.startup.scope
                  (string,null)When used with OAUTH2 adapter, the "scope" as specified by your Identity Provider (IP).
              •       authentication[]

              •  
                authentication[]finsemble.authentication[]
                (object)Declare an authentication profile that uses simple password collection or any other type of custom authentication process.
                •  
                  adapterfinsemble.authentication[].adapter
                  (string)(required)The authentication "adapter" (module) for this authentication profile. See Authenticating apps.
                     "PASSWORD"
                  "OAUTH2"
                •  
                  authorization_endpointfinsemble.authentication[].authorization_endpoint
                  (string)When used with OAUTH2 adapter, the authorization endpoint for your Identity Provider (IP).
                •  
                  backchannel_endpointfinsemble.authentication[].backchannel_endpoint
                  (string)When used with OAUTH2 adapter, your backchannel endpoint URL.
                •  
                  client_idfinsemble.authentication[].client_id
                  (string)When used with OAUTH2 adapter, the "client ID" provided by your Identity Provider (IP).
                •  
                  componentfinsemble.authentication[].component
                  (string)The UI component to use for this authentication profile. Typically this is "authentication.html" used by the "PASSWORD" adapter to display a user/login form.
                •  
                  redirect_urlfinsemble.authentication[].redirect_url
                  (string)The component to handle the response from your Identity Provider. If you don't provide this, Finsemble uses $moduleRoot/ui-components/oauthResponse/index.html.
                •  
                  scopefinsemble.authentication[].scope
                  (string,null)When used with OAUTH2 adapter, the "scope" as specified by your Identity Provider (IP).
            •  
              availableDashbarItemsfinsemble.availableDashbarItems
              (object)Available dashbar items to list in dashbar user preferences.
              •  
                availableDashbarItems[]finsemble.availableDashbarItems[]
                (object)Dashbar item properties
                •  
                  disablePointerEventsfinsemble.availableDashbarItems[].disablePointerEvents
                  (boolean)Set to true to disable the user's ability to interact with the dashbar item.
                •  
                  titlefinsemble.availableDashbarItems[].title
                  (string)(required)The text to display in the title bar of the dashbar item.
                •  
                  urlfinsemble.availableDashbarItems[].url
                  (string)(required)The URL path of the content of the dashbar item.
                •  
                  widthfinsemble.availableDashbarItems[].width
                  (integer)(optional) width of the dashbar item
            •     bootConfig

            •  
              bootConfigfinsemble.bootConfig
              (object)Boot/startup configuration parameters for the System Manager.
              {
              "bootConfig": {
              "defaults": {
              "startServiceTimeout": 10000,
              "startComponentTimeout": 15000
              }
              }
              }
              •  
                defaultsfinsemble.bootConfig.defaults
                (object)Default startup-up properties for System Manager
                •  
                  startComponentTimeoutfinsemble.bootConfig.defaults.startComponentTimeout
                  (number15000)Default timeout value, in milliseconds, for components.
                  • minimum: 0
                •  
                  startServiceTimeoutfinsemble.bootConfig.defaults.startServiceTimeout
                  (number30000)Default timeout value, in milliseconds, for services.
                  • minimum: 0
                  • maximum: 999999
                •  
                  startTaskTimeoutfinsemble.bootConfig.defaults.startTaskTimeout
                  (number15000)
                  • minimum: 0
                  • maximum: 999999
              •  
                onErrorMakeSystemManagerVisiblefinsemble.bootConfig.onErrorMakeSystemManagerVisible
                (booleantrue)
            •  
              componentsfinsemble.components
              (object)Set of component configurations. Used internally by Finsemble to register "UI Components".

                      components[]

              •  
                components[]finsemble.components[]
                (object)The name of the component you are configuring.
                •  
                  //finsemble.components[].//
                  (string)Optional comment describing the component.
                •  
                  appServicefinsemble.components[].appService
                  (booleanfalse)When true, the app is treated as an app service.
                •  
                  bootParamsfinsemble.components[].bootParams
                  (object)Boot parameter properties
                  •  
                    autoStartfinsemble.components[].bootParams.autoStart
                    (booleantrue)Specifies whether to automatically start during the system manager's startup phase.
                  •  
                    checkpointsfinsemble.components[].bootParams.checkpoints
                    (object)
                  •  
                    customFailureMessagefinsemble.components[].bootParams.customFailureMessage
                    (string)The custom message to output to the system log if the app fails to start.
                  •  
                    dependenciesfinsemble.components[].bootParams.dependencies
                    (array)Specifies other services this service relies on.
                    •  
                      dependencies[]finsemble.components[].bootParams.dependencies[]
                      (string)
                  •  
                    stagefinsemble.components[].bootParams.stage
                    (string)Specifies at which stage the app is launched.
                       "microkernel"
                    "kernel"
                    "pre-authentication"
                    "authentication"
                    "appd-retrieval"
                    "system-preuser"
                    "preuser"
                    "preuser2"
                    "preuser3"
                    "preuser4"
                    "system-earlyuser"
                    "earlyuser"
                    "user"
                  •  
                    stopOnFailurefinsemble.components[].bootParams.stopOnFailure
                    (booleantrue)Specifies whether the app should stop if one or more of its dependencies fail to start. Only relevant to apps with dependencies. Set to false if you want the app to continue startup even if its dependencies fail.
                  •  
                    timeoutfinsemble.components[].bootParams.timeout
                    (number)The maximum time, in milliseconds, that the app can take to start up. If the startup doesn't complete in this time, it's marked as a failure. If you don't specify this property, Finsemble uses the default timeout value under the manifest's 'bootConfig.startComponentTimeout' property.
                •  
                  childWindowOptionsfinsemble.components[].childWindowOptions
                  (object)Configuration for all child windows created via window.open for this app. Child windows can't join workspaces, group, tab, or tile. childWindowOptions supports the same properties as component...
                •         component

                •  
                  componentfinsemble.components[].component
                  (object)Properties associated with how Finsemble manages this application.
                  •  
                    advertiseReceiversfinsemble.components[].component.advertiseReceivers
                    (array,string)
                    •  
                      advertiseReceivers[]finsemble.components[].component.advertiseReceivers[]
                      (string)
                  •  
                    allowQuickComponentfinsemble.components[].component.allowQuickComponent
                    (string)
                  •  
                    categoryfinsemble.components[].component.category
                    (string)During dynamic configuration, Finsemble can overwrite components already in the configuration. To prevent this from happening, set this value to "system". This setting is used, for example, to prevent system UI components from being dropped out of the config.
                  •  
                    centralLoggerNamePrefixfinsemble.components[].component.centralLoggerNamePrefix
                    (string)Prefixes the windowDisplayName for the entry in the Central logger.
                  •  
                    customfinsemble.components[].component.custom
                  •  
                    displayNamefinsemble.components[].component.displayName
                    (string)Changes the applications's name in the launcher and its label in the pinned item section.
                  •  
                    maxReloadAttemptsfinsemble.components[].component.maxReloadAttempts
                    (number0)Number of maximum reload attempts that should be executed if the component's WebContents fails to load.
                    • minimum: 0
                    • maximum: 60
                  •  
                    modefinsemble.components[].component.mode
                    (string)
                  •  
                    preloadfinsemble.components[].component.preload
                    (boolean,string,array)A preload is a JavaScript file that is inserted into browser page and runs before any other content. Specify a full path for your preloads. You can specify a list of files to be included. Learn more about preloads in Integrating HTML Applications.
                    •  
                      preload[]finsemble.components[].component.preload[]
                      (string)
                  •  
                    reloadTimeoutfinsemble.components[].component.reloadTimeout
                    (number60000)Reload timeout for the component's WebContents.
                    • minimum: 0
                    • maximum: 999999
                  •  
                    showDevConsoleOnVisiblefinsemble.components[].component.showDevConsoleOnVisible
                    (booleanfalse)If set to true, a Chrome developer console spawns along with the application to assist with debugging.
                  •  
                    singletonfinsemble.components[].component.singleton
                    (booleanfalse)If set to true, the application behaves as a singleton; only a single instance can be launched. If the application has already been launched, if a user tries to launch it again, Finsemble brings it to front instead.
                  •  
                    spawnOnAllMonitorsfinsemble.components[].component.spawnOnAllMonitors
                    (boolean)
                  •  
                    spawnOnHotkeyfinsemble.components[].component.spawnOnHotkey
                    (array)The application is launched when the user activates this global hotkey combination. Example: ["ctrl","alt","a"]
                    •  
                      spawnOnHotkey[]finsemble.components[].component.spawnOnHotkey[]
                      (string)
                  •  
                    spawnOnStartupfinsemble.components[].component.spawnOnStartup
                    (booleanfalse)When true, Finsemble automatically launches this application when the application starts.
                  •  
                    useAppCatalogfinsemble.components[].component.useAppCatalog
                    (boolean)
                •  
                  customfinsemble.components[].custom
                  (object)This area is free-form and can support any custom elements associated with the app.
                  •         foreign

                  •  
                    foreignfinsemble.components[].foreign
                    (object)This section contains configurations that other applications and services read when they interact with this component.
                    •  
                      agentLabelfinsemble.components[].foreign.agentLabel
                      (string)
                    •  
                      componentsfinsemble.components[].foreign.components
                      (object)Configurations specific to other applications that wish to interact with this app.
                      •  
                        App Launcherfinsemble.components[].foreign.components.App Launcher
                        (object)App launcher is a drop down menu that launches other application.
                        •  
                          launchableByUserfinsemble.components[].foreign.components.App Launcher.launchableByUser
                          (booleanfalse)If true, an App Launcher menu can include this application.
                      •  
                        Toolbarfinsemble.components[].foreign.components.Toolbar
                        (object)Configurations related to the global toolbar (at the top of the monitor).
                        •  
                          iconClassfinsemble.components[].foreign.components.Toolbar.iconClass
                          (string)A CSS class character to display when this application is pinned in the toolbar. See "fin-font" or use font-awesome or similar. This setting will override AppD icons.
                          {
                          "iconClass": "ff-ungrid"
                          }
                      •  
                        Window Managerfinsemble.components[].foreign.components.Window Manager
                        (object)Configurations specific to an app's window title bar.
                        •  
                          alwaysOnTopIconfinsemble.components[].foreign.components.Window Manager.alwaysOnTopIcon
                          (booleanfalse)When set to true, all windows can be pinned so that they are always on top (like a sticky note). You can override this setting for specific components in their configs.
                        •  
                          cloneIconfinsemble.components[].foreign.components.Window Manager.cloneIcon
                          (booleanfalse)When set to true, a clone icon will be added to the window titlebar that can be used to clone the window.
                        •  
                          componentCloseTimeoutfinsemble.components[].foreign.components.Window Manager.componentCloseTimeout
                          (number5000)Time, in milliseconds, to wait for the component to close. If the component hasn't closed within this limit, it will be force closed.
                        •  
                          deliveryMechanismfinsemble.components[].foreign.components.Window Manager.deliveryMechanism
                          (stringinjection)Specify the delivery method to use for scripts (e.g., FSBL, title bar, etc.) - Valid values are: "injection" - Injects the code into the window.
                             "injection"
                          "preload"
                        •  
                          floatingTitlebarComponentfinsemble.components[].foreign.components.Window Manager.floatingTitlebarComponent
                          (string)This config sets which component Finsemble will use as a title bar for native application components. By default, the only value is "FloatingTitlebar." This config allows you to customize this behavior with a customized title bar component and created a configuration for it in appd.json
                        •  
                          FSBLHeaderfinsemble.components[].foreign.components.Window Manager.FSBLHeader
                          (boolean,objecttrue)This config controls the Finsemble window title bar UI component. FSBLHeader can be true, false or an object. If true then the window title bar will be injected into the component and the maximize, minimize, and close buttons will be displayed. If false, the title bar will not be displayed. If an object, you can tweak several details as to whether buttons are shown or how content is loaded under the title bar.
                          •  
                            adjustContentHeightsfinsemble.components[].foreign.components.Window Manager.FSBLHeader.adjustContentHeights
                            (booleantrue)When set to true, the height of content sized to fit the window is adjusted to fit within the adjusted bounds of the window when the Finsemble window title bar is injected into the DOM.
                          •  
                            bumpElementsfinsemble.components[].foreign.components.Window Manager.FSBLHeader.bumpElements
                            (object)Optional settings that adjust the height and position of absolute/fixed positioned elements when the window title bar is injected. Use it to mitigate rare display issues that can occur due to the injected title bar. Set this field to false to bypass all bumping logic.
                            •  
                              absolutefinsemble.components[].foreign.components.Window Manager.FSBLHeader.bumpElements.absolute
                              Either none, "all" or "0Positioned". If all, all fixed elements are moved. 0Positioned only moves elements that have top 0. Only applies to children of the document.body.
                                 "none"
                              "all"
                              "0Positioned"
                            •  
                              bumpByfinsemble.components[].foreign.components.Window Manager.FSBLHeader.bumpElements.bumpBy
                              (string)Sets the amount to bump elements by (e.g. "25px").
                            •  
                              fixedfinsemble.components[].foreign.components.Window Manager.FSBLHeader.bumpElements.fixed
                              Either none, "all" or "0Positioned". If all, all fixed elements are moved. 0Positioned only moves elements that have top 0.
                                 "none"
                              "all"
                              "0Positioned"
                            •  
                              monitorFixedAdditionsfinsemble.components[].foreign.components.Window Manager.FSBLHeader.bumpElements.monitorFixedAdditions
                              (boolean)When set to true, mutations to the DOM are observed and fixed positioned elements with a top style of '0px' are bumped by the title bar height. Setting this to false disables the MutationObserver that is otherwise turned on for pages with injected title bars.
                          •  
                            hackScrollbarfinsemble.components[].foreign.components.Window Manager.FSBLHeader.hackScrollbar
                            (booleanfalse)When set to true, a window's vertical scrollbar is positioned underneath the Finsemble window title bar using html{ overflow-y: none} and body{ overflow-y: auto}
                          •  
                            hideClosefinsemble.components[].foreign.components.Window Manager.FSBLHeader.hideClose
                            (booleanfalse)Value indicating whether the Close button is hidden in the component title bar.
                          •  
                            hideMaximizefinsemble.components[].foreign.components.Window Manager.FSBLHeader.hideMaximize
                            (booleanfalse)When set to true, the Maximize icon is hidden from the component's title bar.
                          •  
                            hideMinimizefinsemble.components[].foreign.components.Window Manager.FSBLHeader.hideMinimize
                            (booleanfalse)When set to true, the Minimize icon will be hidden from the component's title bar.
                          •  
                            zoomDefaultfinsemble.components[].foreign.components.Window Manager.FSBLHeader.zoomDefault
                            (number)Default zoom level to set for the component when using the zoom.js sample preload.
                        •  
                          titlefinsemble.components[].foreign.components.Window Manager.title
                          (string)Sets the title in the window title bar.
                        •  
                          titlebarTypefinsemble.components[].foreign.components.Window Manager.titlebarType
                          (stringbrowserview)Determines how the window title bar is added to web windows. The default 'browserview' separates the title bar and content pane into separate browserviews and can resolve rare display issues with the injected title bar, at the cost of disabling process grouping via affinity for the content pane. Setting 'injected' causes the title bar and its styles to be inserted directly into your web page's DOM and its layout to be lightly adjusted to accommodate.
                             "browserview"
                          "injected"
                        •  
                          zoomfinsemble.components[].foreign.components.Window Manager.zoom
                          (object)Configuration for the zoom.js preload.
                          •  
                            ignoreSelectorfinsemble.components[].foreign.components.Window Manager.zoom.ignoreSelector
                            (string)A css selector instructing the zoom.js preload which elements should not be zoomed
                            "#element-id"
                          •  
                            maxfinsemble.components[].foreign.components.Window Manager.zoom.max
                            (number5)The maximum allowed zoom level.
                          •  
                            minfinsemble.components[].foreign.components.Window Manager.zoom.min
                            (number0.2)The minimum allowed zoom level.
                          •  
                            stepfinsemble.components[].foreign.components.Window Manager.zoom.step
                            (number0.1)How much the zoom increases or decreases when zooming in or out.
                          •  
                            timeoutfinsemble.components[].foreign.components.Window Manager.zoom.timeout
                            (number3000)Time, in milliseconds, to display the zoom pop up before hiding it.
                          •  
                            zoomSelectorfinsemble.components[].foreign.components.Window Manager.zoom.zoomSelector
                            (string)A css selector instructing the zoom.js preload which additional elements should get zoomed. The zoom preload will automatically attempt to detect which elements should get zoom.
                            "#my-element, .my-class"
                    •  
                      customfinsemble.components[].foreign.custom
                    •  
                      servicesfinsemble.components[].foreign.services
                      (object)Configurations for services that will interact with this application.
                      •  
                        windowServicefinsemble.components[].foreign.services.windowService
                        (object)Configurations that the window service will apply to this app.
                        •  
                          allowAutoArrangefinsemble.components[].foreign.services.windowService.allowAutoArrange
                          (booleantrue)If true, the window can be auto arranged. If false, will disable the window's ability to be auto arranged by the Window Service.
                        •  
                          allowGroupingfinsemble.components[].foreign.services.windowService.allowGrouping
                          (booleantrue)If true, the window can form groups with other windows. If false, this window cannot be placed into a group. Note: Grouping windows by manually dragging can be difficult or impossible if allowSnapping is disabled.
                        •  
                          allowMaximizefinsemble.components[].foreign.services.windowService.allowMaximize
                          (booleantrue)If true, the window can be maximized. If false, the window cannot be maximized.
                        •  
                          allowMinimizefinsemble.components[].foreign.services.windowService.allowMinimize
                          (booleantrue)If true, the window can be minimized to the taskbar. If false, the window cannot be minimized.
                        •  
                          allowSnappingfinsemble.components[].foreign.services.windowService.allowSnapping
                          (booleantrue)If true, this window can be snapped. If false, this window cannot benefit from snapping.
                        •  
                          allowTabbingfinsemble.components[].foreign.services.windowService.allowTabbing
                          (booleanfalse)If true, the window's titlebar will include a tab header that can be dragged or have other tabs dropped onto it. If false, tabbing will be disabled for this window.
                        •  
                          allowTilingfinsemble.components[].foreign.services.windowService.allowTiling
                          (booleanfalse)If true, the window can be tiled on by other windows by dragging tab headers onto its body (below the titlebar). If false, tiling is disabled for this window. Tiling is not possible if a window is not resizable or if tabbing is disabled.
                        •  
                          globalfinsemble.components[].foreign.services.windowService.global
                          (boolean)
                        •  
                          manageWindowMovementfinsemble.components[].foreign.services.windowService.manageWindowMovement
                          (booleantrue)If true, the Window Service manages the window's movement. Unless otherwise specified by the following params, this means the Window Service can perform actions on this window: move, group, snap, minimize, maximize, etc. When this parameter is false it could be overwritten by allowSnapping, allowGrouping, allowAutoArrange, allowTabbing, allowTiling, allowMinimize, allowMaximize, window.dockable, FSBLHeader if any from them is true
                        •  
                          shouldRegisterfinsemble.components[].foreign.services.windowService.shouldRegister
                          (boolean)
                      •  
                        workspaceServicefinsemble.components[].foreign.services.workspaceService
                        (object)Configurations related to the workspace service.
                        •  
                          persistArgumentsfinsemble.components[].foreign.services.workspaceService.persistArguments
                          (booleantrue)When false, the application does not automatically persist its arguments through restarts and workspace reloads, even when the arguments change in the config. Arguments are used for "native" (aka "assimilation") windows.
                        •  
                          persistPathfinsemble.components[].foreign.services.workspaceService.persistPath
                          (booleanfalse)When true, the application automatically persists its path through restarts and workspace reloads, even when the path changes in the config. Path is used for "native" (aka "assimilation") windows.
                        •  
                          persistURLfinsemble.components[].foreign.services.workspaceService.persistURL
                          (booleanfalse)A config that specifies whether Finsemble should persist the application URL. When true, the app or component automatically saves its last URL instead of using the one in the config. The application config overrides the global config.
                  •         interop

                  •  
                    interopfinsemble.components[].interop
                    (object)Interop (data integration) related config for this app
                    •  
                      autoConnectfinsemble.components[].interop.autoConnect
                      (booleanfalse)If set to true, the app automatically connects to the Interop service. In most cases, this causes the linker to display. If set to false (the default), the app connects on the first call to any fdc function.
                    •  
                      fdc3_1_2_compatibilityfinsemble.components[].interop.fdc3_1_2_compatibility
                      (boolean)If true, Finsemble desktop agent conforms to FDC3 1.2 (as opposed to 2.0).
                    •  
                      joinMultipleChannelsfinsemble.components[].interop.joinMultipleChannels
                      (boolean)If explicitly set to false, an app cannot join multiple user channels. So when an app that is already on a channel joins another channel, it automatically leaves the channel it was on.
                    •  
                      launchablefinsemble.components[].interop.launchable
                      (boolean)If explicitly set to false, an app is not launchable from the FDC3 UI resolver for handling an intent. This property is independent from the launchableByUser property affecting the App Launcher menu.
                    •  
                      selectConnectfinsemble.components[].interop.selectConnect
                      (array)Interop messaging rules to support no-code integration of modules. It allows you to specify precisely which modules can communicate and in what way.
                      •  
                        selectConnect[]finsemble.components[].interop.selectConnect[]
                        (object)A specific selectConnect rule that consists of one or more properties.
                        •  
                          authorizefinsemble.components[].interop.selectConnect[].authorize
                          (array)
                          •  
                            authorize[]finsemble.components[].interop.selectConnect[].authorize[]
                            (object)When set, messages are restricted to apps that meet the authorization criteria. Note: Using 'authorize' is the same as using both 'to' and 'from'.
                            •  
                              namefinsemble.components[].interop.selectConnect[].authorize[].name
                              (string)When set, messages are delivered to or received from apps with this name only. Finsemble verifies the app name.
                        •  
                          autoAssociatefinsemble.components[].interop.selectConnect[].autoAssociate
                          (object)Define app’s autoAssociate property
                          •  
                            allChildrenfinsemble.components[].interop.selectConnect[].autoAssociate.allChildren
                            (boolean)if true, all apps spawned or opened by this app are automatically associated (i.e. auto-joined to common channel).
                          •  
                            selectChildrenfinsemble.components[].interop.selectConnect[].autoAssociate.selectChildren
                            (array)Any app in this list when spawned or opened by this app is automatically associated.
                            •  
                              selectChildren[]finsemble.components[].interop.selectConnect[].autoAssociate.selectChildren[]
                              (string)appId of child app.
                          •  
                            usingConnectIdfinsemble.components[].interop.selectConnect[].autoAssociate.usingConnectId
                            (string)Specifies a fixed association (as opposed to dynamic) using the specified connectId -- all apps with this connectId are automatically associated.
                        •  
                          ccfinsemble.components[].interop.selectConnect[].cc
                          (string)The name of a valid selectConnect module. When cc is set, that module receives a copy of the message. cc works on both outgoing and incoming traffic.
                        •  
                          contextTypefinsemble.components[].interop.selectConnect[].contextType
                          (string)Apply this rule only to this specific context type. (Optional).
                        •  
                          fromfinsemble.components[].interop.selectConnect[].from
                          (array)
                          •  
                            from[]finsemble.components[].interop.selectConnect[].from[]
                            (object)When set, messages can be received only from apps that meet the authorization criteria.
                            •  
                              namefinsemble.components[].interop.selectConnect[].from[].name
                              (string)When set, messages can be received only from apps with this name. Finsemble verifies the app name.
                        •  
                          fwdfinsemble.components[].interop.selectConnect[].fwd
                          (string)The name of a valid selectConnect module. When you set fwd, that module receives the message *instead* of the original description. fwd is intended primarily for outgoing traffic but also works on incoming traffic.
                        •  
                          tofinsemble.components[].interop.selectConnect[].to
                          (array)
                          •  
                            to[]finsemble.components[].interop.selectConnect[].to[]
                            (object)When set, messages re sent only to apps that meet the authorization criteria.
                            •  
                              namefinsemble.components[].interop.selectConnect[].to[].name
                              (string)When set, messages are sent only to apps with this name. Finsemble verifies the app name.
                    •  
                      showWhenIntentReceivedfinsemble.components[].interop.showWhenIntentReceived
                      (boolean)If explicitly set to false, do not automatically show (i.e. bring to front or restore) an app instance receiving an FDC3 intent. If explicitly set to true, then always try to show it. Otherwise, the default is to show the application when an intent is received if the app window is normally shown (i.e. its autoShow property is true).
                    •  
                      useLinkerfinsemble.components[].interop.useLinker
                      (boolean)The linker is turned on by default for any app that uses FDC3. Set this flag to false if you want to turn off the linker for this app, for example, if your app only uses App Channels (i.e. 'well known' named channels).
                  •  
                    signatureKeyfinsemble.components[].signatureKey
                    (object)Public authentication key to decrypt static AuthenticationTokens within interopService. Necessary config for Freestanding applications connecting to Finsemble from outside.
                    •  
                      algfinsemble.components[].signatureKey.alg
                      (string)The algorithm used to generate the keys, for example, "RS256".
                  •  
                    signatureKeyURLfinsemble.components[].signatureKeyURL
                    (stringfalse)URL specifying the location of the signature key - an alternative to providing the signatureKey with the Finsemble configuration.
                  •  
                    uiComponentfinsemble.components[].uiComponent
                    (booleanfalse)
                  •  
                    waitForInitializationfinsemble.components[].waitForInitialization
                    (booleanfalse)When true, startup waits for the app to explicitly signal it is ready.
                  •         window

                  •  
                    windowfinsemble.components[].window
                    (object)Configurations that manage placement of the application's window on the screen. Configuration settings in this section can also be passed as parameters to LauncherClient.spawn().
                    •  
                      addToWorkspacefinsemble.components[].window.addToWorkspace
                      (booleanfalse)Specifies whether to add the new component to the workspace. The value set in the component manifest takes priority over any value passed as a parameter to LauncherClient.spawn or related functions. Set it to false to prevent tabbing and grouping for the component.
                    •  
                      affinityfinsemble.components[].window.affinity
                      (string,boolean)Process affinity allows you to control how render processes for web windows, served from the same 'site' (registered domain and protocol) are grouped together, reducing their memory footprint, at the cost of increasing CPU resource contention (because a render thread can only process one window at a time). As most user interface components are only active while the user is interacting with them, process grouping via affinity is an effective way to reduce memory footprint. Conversely, you might want to disable or customize the affinity setting for CPU intensive applications that are driven by outside events (for example a ticking blotter or chart driven by an external data source). In this way, you can strike a balance between performance and memory footprint. Group applications together thoughtfully by setting them to the same string value or disable render process group by setting affinity to false. See the Process Management tutorial for more information.
                    •  
                      aliasfinsemble.components[].window.alias
                      (string)Used with native applications (that is, when windowType is "native" or "assimilation") instead of path. Specifies the alias of a bundled asset to launch.
                    •  
                      argumentsfinsemble.components[].window.arguments
                      (string)Specifies the arguments to be sent to a native application (that is, when windowType is "native" or "assimilation") on launch. Separate the arguments by spaces: --arg1 foo --arg2 bar except when params.argumentsAsQueryString is true, in which case set this parameter to be single string in URI format: arg=1&arg=2.
                    •  
                      argumentsAsQueryStringfinsemble.components[].window.argumentsAsQueryString
                      (boolean)For native applications (i.e. when windowType is "native" or "assimilation"), causes the generated arguments (the automatically generated arguments and any supplied as the "arguments" parameter) to be encoded as a query string and appended to the URI. Useful for applications launched via a protocol handler or online ClickOnce deployment, where the path parameter is a URI.
                    •  
                      bottomfinsemble.components[].window.bottom
                      (string,number,null)A pixel value that represents the distance from the bottom edge of the viewport as defined by "position". For non-absolute positions, you can also use the percentage value, which represents the percentage distance from the bottom edge of the viewport relative to the viewport's height.
                    •  
                      claimMonitorSpacefinsemble.components[].window.claimMonitorSpace
                      (boolean)For use with permanent toolbars. The available space for other components is reduced by the amount of space covered by the newly spawned component. Users can't move windows to a position that covers the claimed space.
                    •  
                      closeComponentsTogetherfinsemble.components[].window.closeComponentsTogether
                      (booleanfalse)Whether to close all components within a launchGroup at the same time.
                    •  
                      componentfinsemble.components[].window.component
                      Type of component to spawn.
                    •  
                      datafinsemble.components[].window.data
                      (array,boolean,integer,null,number,object,string)Optional data to pass to the opening window. If set, then the spawned window can use WindowClient.getSpawnData to retrieve the data.
                    •  
                      defaultHeightfinsemble.components[].window.defaultHeight
                      (number)
                    •  
                      dockablefinsemble.components[].window.dockable
                      (array,boolean)Parts of the monitor that the component can dock to. Valid values are top and bottom. The [] value is equal false. The true value is equal ['top', 'bottom'].
                         true
                      false
                      []
                      ["top"]
                      ["bottom"]
                      ["top","bottom"]
                      •  
                        dockable[]finsemble.components[].window.dockable[]
                        (string)
                    •  
                      dockedfinsemble.components[].window.docked
                      (string)Specifies the part of the monitor that the component docks to on spawn. Only valid if combined with the dockable property.
                         "top"
                      "bottom"
                    •  
                      dockedHeightfinsemble.components[].window.dockedHeight
                      (number)
                    •  
                      envfinsemble.components[].window.env
                      Sets environment variables for a spawned native application. Create a map (JSON) object of names to values. This is only available when running Assimilation.
                    •  
                      ephemeralfinsemble.components[].window.ephemeral
                      (boolean)Indicates that this window is ephemeral. An ephemeral window is a dialog, menu, or other window that is temporarily displayed but usually hidden. Ephemeral windows automatically have these settings assigned: resizable: false, showTaskbarIcon: false, alwaysOnTop: true. Use options:{autoShow: false} to prevent an ephemeral window from showing automatically.
                    •  
                      forceOntoMonitorfinsemble.components[].window.forceOntoMonitor
                      (boolean,string)If true, tries to make the window have no edges outside the monitor boundary.
                         true
                      false
                      "availableRect"
                      "monitorRect"
                    •  
                      framefinsemble.components[].window.frame
                      (boolean)
                    •  
                      groupOnSpawnfinsemble.components[].window.groupOnSpawn
                      (boolean)Groups the window to the relativeWindow based on their adjacent position.
                    •  
                      heightfinsemble.components[].window.height
                      (number,string)A pixel or percentage value.
                    •  
                      idfinsemble.components[].window.id
                      (string)
                    •  
                      leftfinsemble.components[].window.left
                      (string,number,null)A pixel value representing the distance from the left edge of the viewport as defined by "position". For non-absolute positions, you can also use the percentage value, which represents the percentage distance from the left edge of the viewport relative to the viewport's width.
                      "adjacent" will snap to the right edge of the spawning or relative window.
                      "center" will center the window. If neither left nor right are provided, then the default will be to stagger the window based on the last spawned window.
                    •  
                      maxHeightfinsemble.components[].window.maxHeight
                      (number,boolean,null)Maximum height window can be resized to.
                    •  
                      maxWidthfinsemble.components[].window.maxWidth
                      (number,boolean,null)Maximum width window can be resized to.
                    •  
                      minHeightfinsemble.components[].window.minHeight
                      (number,boolean,null)Minimum height window can be resized to.
                    •  
                      minWidthfinsemble.components[].window.minWidth
                      (number,boolean,null)Minimum width window can be resized to.
                    •  
                      monitorfinsemble.components[].window.monitor
                      (number,string)Specifies on which monitor to place the new window.
                      "mine" - Place the window on the same monitor as the calling window.
                      Integer value from 0-n (0 being the primary monitor).
                      "primary" indicates the user's primary monitor.
                      "all" - Put a copy of the component on all monitors.
                    •  
                      namefinsemble.components[].window.name
                      (string)Window name to apply to the application. The name is not normally specified, allowing Finsemble to generate a random one from the component type. If specified in the configuration, only a single copy of the component can exist at a time.
                    •  
                      optionsfinsemble.components[].window.options
                      (object)Low level window behavior options. Note that you can't pass options as arguments to LauncherClient.spawn and related API calls
                      •  
                        allowedNavigationUrlsfinsemble.components[].window.options.allowedNavigationUrls
                        (array)Controls whether the app can navigate to other urls. If unspecified, the default is to allow all urls. This will change in a future version to allowing only same-origin urls, those with the same domain, protocol, and port as the window itself. An empty array indicates no navigation is allowed, even to the origin domain. To allow specific domains, add those domains to the array. The origin domain must also be added.
                        •  
                          allowedNavigationUrls[]finsemble.components[].window.options.allowedNavigationUrls[]
                          (string)A list of domains to which this app is allowed to navigate or open pop-up windows. If a domain is not fully qualified, it is treated as a wildcard, '*.domain.com'
                      •  
                        allowedWindowOpenUrlsfinsemble.components[].window.options.allowedWindowOpenUrls
                        (array)Controls whether the app can programmatically open a window with window.open() based on the url. If unspecified, the default is to allow all urls. This will change in a future version to allowing only same-origin urls, those with the same domain, protocol, and port as the window itself. An empty array indicates no navigation is allowed, even to the origin domain. To allow specific domains, add those domains to the array. The origin domain must also be added.
                        •  
                          allowedWindowOpenUrls[]finsemble.components[].window.options.allowedWindowOpenUrls[]
                          (string)A list of domains to which this app is allowed to navigate or open pop-up windows. If a domain is not fully qualified, it is treated as a wildcard, '*.domain.com'
                      •  
                        alwaysOnTopfinsemble.components[].window.options.alwaysOnTop
                        (booleanfalse)When set to true, the window is always on top (like a sticky note) of any window with alwaysOnTop set to false.
                      •  
                        autoShowfinsemble.components[].window.options.autoShow
                        (booleantrue)When set to true, the window is visible when it is spawned. When set to false, the window is spawned to be invisible.
                      •  
                        backgroundThrottlingfinsemble.components[].window.options.backgroundThrottling
                        (boolean)Specifies whether to throttle animations and timers when the page becomes backgrounded. This also affects the Page Visibility API. Defaults to true
                      •  
                        Content-Security-Policyfinsemble.components[].window.options.Content-Security-Policy
                        (array,string)Custom content security policy (CSP) that overrides the manifest CSP and the CSP received from this app's HTTP server. This can be a string or an array of strings. See MDN docs on CSP
                        [
                        "script-src *;"
                        ]
                        •  
                          Content-Security-Policy[]finsemble.components[].window.options.Content-Security-Policy[]
                          (string)
                      •  
                        contextMenufinsemble.components[].window.options.contextMenu
                        (booleantrue)A flag to show the context menu when right-clicking on a window. Gives access to the Developer Console for the Window.
                      •  
                        cornerRoundingfinsemble.components[].window.options.cornerRounding
                        (boolean,objecttrue)Specifies corner rounding for a window.
                        •  
                          heightfinsemble.components[].window.options.cornerRounding.height
                          (number0)
                        •  
                          widthfinsemble.components[].window.options.cornerRounding.width
                          (number0)
                      •  
                        isEvergreenfinsemble.components[].window.options.isEvergreen
                        (booleanfalse)When set to true, the window hides and shows when switching between workspaces rather than opening and closing. The same singleton instance of the window is used across multiple workspaces. Note: Tabbing and tiling is set to false for Evergreen components. If you're using set/getComponentState, the state is different per workspace. Listen for the 'component-state-changed' event on the window to update your application accordingly. Or fetch the new state in the Workspace 'load-complete' event in the case of a native application.
                      •  
                        opacityfinsemble.components[].window.options.opacity
                        (number1)Sets the opacity of the window.
                      •  
                        openLinksInExternalBrowserfinsemble.components[].window.options.openLinksInExternalBrowser
                        (booleanfalse)When set to true, links (anchor tags) will be open in the OS default browser. See 'navigation' property for restricting navigation.
                      •  
                        permissionsfinsemble.components[].window.options.permissions
                        (object)Change an application's individual permissions to be different than from those in its security policy by adding configs under this config. See the Security Policies tutorial for more information.
                        •  
                          resizablefinsemble.components[].window.options.resizable
                          (booleantrue)When set to false, the user can't resize the window's edges and won't the window participate in Windows Aero Snap.
                        •  
                          securityPolicyfinsemble.components[].window.options.securityPolicy
                          (string)Set an application's security policy by name, for example to the default "trusted" or "untrusted" policies or to a custom policy. See the Security Policies tutorial for more information.
                        •  
                          showTaskbarIconfinsemble.components[].window.options.showTaskbarIcon
                          (boolean)Specifies whether the application should be displayed in the Windows taskbar.
                        •  
                          transparentfinsemble.components[].window.options.transparent
                          (boolean)When set to true, the window is transparent. This works only if you haven't set any background color on the window, including through css tags. Dynamically removing background color styles does _not_ work on Mac (there must be no initial css styles for background or background-color).
                        •  
                          userAgentStringfinsemble.components[].window.options.userAgentString
                          (string)Sets the userAgent for a web window, allowing for spoofing the of the userAgent.
                        •  
                          windowSpawnTimeoutfinsemble.components[].window.options.windowSpawnTimeout
                          (number30)Number of seconds before a native application component spawn times out.
                        •  
                          windowTitleBarUrlfinsemble.components[].window.options.windowTitleBarUrl
                          (string)When specified, overrides the default Finsemble window titlebar. See finsemble.windowTitleBarUrl for more info.
                      •  
                        pathfinsemble.components[].window.path
                        (string)Specifies the path to a native application (i.e. when windowType is "native" or "assimilation"). The path can be:
                        • The name of an exe that is on the system path (e.g., notepad.exe).
                        • The full path to an executable on the user's machine (e.g., C:\Program Files\app.exe).
                        • A system installed URI (e.g., myuri://advancedapplauncher).
                        When windowType is "native", additional arguments are automatically appended to the path or the URI. The native app can capture these arguments to tie it to Finsemble's window tracking. When building an application with finsemble.dll, this is handled automatically. Those arguments are:
                        • uuid - A generated UUID that uniquely identifies this window.
                        • left - The x coordinate of the new window
                        • top - The y coordinate of the new window
                        • width - The width of the new window
                        • height - The height of the new window
                        • finsembleWindowName - The name of the window in the Finsemble config
                        • componentType - The component type in the Finsemble config
                        • appName - The name of the application in the Finsemble appd.
                        A common problem occurs when a native application needs to be launched from an intermediary application (such as a launcher or batch script) or a window needs to be created by a multi-process. multi-window application. The intermediary application or process can pass these parameters along to the final application or thread, which uses them to connect back to Finsemble.
                      •  
                        positionfinsemble.components[].window.position
                        (string)Defines a "viewport" for the spawn, with one of the Position Types:
                        • available - Positioned according to the coordinates available on the monitor itself, less space claimed by the operating system (such as the windows toolbar). For example, bottom:0 places the new component with its bottom flush against the windows toolbar.
                        • monitor - Positioned according to the absolute size of the monitor. For example, top:0 places the component overlapping the toolbar.
                        • relative - Positioned relative to the relativeWindow. For example, left:0;top:0 joins the top left corner of the new component with the top left corner of the relative window.
                        • virtual - Deprecated. Positioned against coordinates on the virtual screen. The virtual screen is the full viewing area of all monitors combined into a single theoretical monitor.
                        • absolute - Positioned using native operating system coordinates. Absolute positions require numeric top/right/left/bottom arguments.
                        .
                           "available"
                        "monitor"
                        "relative"
                        "virtual"
                        "absolute"
                      •  
                        relativeWindowfinsemble.components[].window.relativeWindow
                        The window to use when calculating any relative launches. If not set, the window from which spawn() was called. Primarily used as an argument to LauncherClient.spawn() and related functions.
                      •  
                        rightfinsemble.components[].window.right
                        (string,number,null)A pixel value representing the distance from the right edge of the viewport as defined by "position". For non-absolute positions, you can also use the percentage value, which represents the percentage distance from the right edge of the viewport relative to the viewport's width.
                      •  
                        setBoundsOnlyfinsemble.components[].window.setBoundsOnly
                        (boolean)If true, visibility of window is not changed. In other words, a hidden window won't be made visible. Primarily used as an argument to LauncherClient.showWindow() and related functions.
                      •  
                        showfinsemble.components[].window.show
                        (boolean)
                      •  
                        slavefinsemble.components[].window.slave
                        (boolean)If true, the new window acts as a slave to the relativeWindow (or the launching window if relativeWindow is not specified). Slave windows automatically close when their parent windows close.
                      •  
                        staggerPixelsfinsemble.components[].window.staggerPixels
                        (number)Number of pixels to stagger (default when neither left, right, top or bottom are set).
                      •  
                        topfinsemble.components[].window.top
                        (string,number,null)A pixel value that represents the distance from the bottom edge of the viewport as defined by "position". For non-absolute positions, you can also use the percentage value, which represents the percentage distance from the top edge of the viewport relative to the viewport's height.
                      •  
                        toSpawnfinsemble.components[].window.toSpawn
                        (array)An array of objects defining the components to spawn. Each entry can either represent a single component in the form {componentType, spawnOptions} or a tabbed window of components in the form {components, spawnOptions}, where components is an array of single component definitions (again in the form {componentType, spawnOptions}). Most arguments that are normally passed to LauncherClient.spawn are supported, although positioning is interpreted as relative to the group's coordinates and dimensions for single components and ignored for tabbed components (as these use the position specified in the group's spawnOptions). Note - This param is taken into account only if the "windowType" param is "launchGroup".
                        [
                        {
                        "componentType": "Welcome Component",
                        "spawnOptions": {
                        "top": 0,
                        "left": 0,
                        "height": 250,
                        "width": 600,
                        "data": {}
                        }
                        },
                        {
                        "components": [
                        {
                        "componentType": "Welcome Component",
                        "spawnOptions": {
                        "data": {}
                        }
                        },
                        {
                        "componentType": "ProcessMonitor",
                        "spawnOptions": {
                        "data": {}
                        }
                        }
                        ],
                        "spawnOptions": {
                        "top": 250,
                        "left": 0,
                        "height": 250,
                        "width": 600
                        }
                        },
                        {
                        "componentType": "Welcome Component",
                        "spawnOptions": {
                        "top": 500,
                        "left": 0,
                        "height": 200,
                        "width": 600,
                        "data": {}
                        }
                        },
                        {
                        "componentType": "ProcessMonitor",
                        "spawnOptions": {
                        "top": 0,
                        "left": 600,
                        "height": 700,
                        "width": 300,
                        "data": {}
                        }
                        }
                        ]
                        •  
                          toSpawn[]finsemble.components[].window.toSpawn[]
                          (object)
                          •  
                            componentsfinsemble.components[].window.toSpawn[].components
                            (array)An array of components to spawn as a tabbed group within the launchGroup.
                            •  
                              components[]finsemble.components[].window.toSpawn[].components[]
                          •  
                            componentTypefinsemble.components[].window.toSpawn[].componentType
                            (string)The name of a component to spawn
                          •  
                            spawnOptionsfinsemble.components[].window.toSpawn[].spawnOptions
                            (object)Minimal definition for component spawn options
                            •  
                              datafinsemble.components[].window.toSpawn[].spawnOptions.data
                              (object)
                            •  
                              heightfinsemble.components[].window.toSpawn[].spawnOptions.height
                              (number,string)
                            •  
                              leftfinsemble.components[].window.toSpawn[].spawnOptions.left
                              (number,string)
                            •  
                              topfinsemble.components[].window.toSpawn[].spawnOptions.top
                              (number,string)
                            •  
                              widthfinsemble.components[].window.toSpawn[].spawnOptions.width
                              (number,string)
                      •  
                        urlfinsemble.components[].window.url
                        (string)The URL to load for a web application (i.e. when windowType is undefined, 'WebWindow' or 'application').
                      •  
                        widthfinsemble.components[].window.width
                        (number,string)A pixel or percentage value.
                      •  
                        windowTitleBlackListfinsemble.components[].window.windowTitleBlackList
                        (string,null)A regular expression-based string specifying window title to exclude from integration, such as splash screens or transient dialogs. Is used only for assimilation window type.
                        "Opening.*"
                      •  
                        windowTitleWhiteListfinsemble.components[].window.windowTitleWhiteList
                        (string,null)A regular expression-based string specifying window title to include (finsemblize) in the integration. Is used only for assimilation window type.
                        ".*(Outlook|Today).*"
                      •  
                        windowTypefinsemble.components[].window.windowType
                        (string)Describes which type of component to spawn.
                        • WebWindow - A normal HTML window. Requires "url" to be specified.
                        • assimilation - A window that is managed by the Finsemble assimilation process (usually a native window without source code access). Requires "path" or "alias" to be specified.
                        • native - A native window that has implemented finsemble.dll. Requires "path" or "alias" to be specified.
                        • WebApplication - (DEPRECATED) Use WebWindow instead. Requires "url" to be specified.
                        • launchGroup - A component made of other components, usually grouped together. See toSpawn property.
                        • Citrix - (EXPERIMENTAL) A virtual app available in your Citrix Workspace app launcher. Requires "alias" to be specified.
                           "WebWindow"
                        "assimilation"
                        "native"
                        "WebApplication"
                        "launchGroup"
                        "Citrix"
                        "external"
                •  
                  configRootfinsemble.configRoot
                  (string)
                •  
                  configSchemaURLfinsemble.configSchemaURL
                  (string)URL of this schema. Used for run-time verification of configuration.
                •  
                  configSetDonefinsemble.configSetDone
                  (boolean)
                •  
                  configVersionfinsemble.configVersion
                  (string)Version of this schema.
                •  
                  customfinsemble.custom
                •  
                  documentRootfinsemble.documentRoot
                  (string)
                •  
                  downloadsfinsemble.downloads
                  (object)
                  •  
                    downloadLocationfinsemble.downloads.downloadLocation
                    (string)Location from which to download files without prompting. The default is to show a dialog to choose a location.
                •  
                  extensionsfinsemble.extensions
                  (object)Register preload extensions for Finsemble apps.
                  •  
                    preloadsfinsemble.extensions.preloads
                    (object)Registered aliases and details for preloads.
                    {
                    "zoom": {
                    "url": "https://assets.finsemble.com/preloads/zoom.js",
                    "autoload": "launchable"
                    }
                    }
                    •  
                      preloads[]finsemble.extensions.preloads[]
                      (object)Preload alias
                      •  
                        autoloadfinsemble.extensions.preloads[].autoload
                        Specifies whether to automatically apply the preload to all or all launchable apps.
                           "all"
                        "launchable"
                        "none"
                      •  
                        urlfinsemble.extensions.preloads[].url
                        (string)The URL of the hosted preload.
                •  
                  failedComponentCloseNotificationfinsemble.failedComponentCloseNotification
                  (booleanfalse)If true, throw a notification when a component fails to close within the time limit specified in finsemble["Window Manager"].componentCloseTimeout
                •  
                  fdc3AppDServersfinsemble.fdc3AppDServers
                  (array)List of AppD servers to retrieve application definitions from on startup.
                  •  
                    fdc3AppDServers[]finsemble.fdc3AppDServers[]
                    (object)
                    •  
                      descriptionfinsemble.fdc3AppDServers[].description
                      (string)
                    •  
                      urlfinsemble.fdc3AppDServers[].url
                      (string)(required)
                •  
                  feaURLWhitelistfinsemble.feaURLWhitelist
                  (string)A regex pattern that represents a URL whitelist. If set, components can navigate **only** to URLs that match the regex pattern.
                •  
                  globalHotkeysfinsemble.globalHotkeys
                  (object)
                •     importConfig

                •  
                  importConfigfinsemble.importConfig
                  (array)Defines an array of JSON URLs to be imported into the top-level finsemble object. This overwrites any existing config settings, with two exceptions: New services defined under finsemble.services is added to the list of existing services (as opposed to replacing the existing list of services). New components defined under finsemble.components are added to the list of existing components (as opposed to replacing the list of existing components).
                  [
                  "$applicationRoot/configs/application/config.json",
                  "$applicationRoot/configs/application/appd.json"
                  ]
                  •  
                    importConfig[]finsemble.importConfig[]
                    (string)
                •  
                  importThirdPartyConfigfinsemble.importThirdPartyConfig
                  (array)This import is essentially the same as importConfig with one notable difference: the imported configuration settings cannot overwrite any existing settings. In this case, the settings for any potential overwrite are discarded with a warning message written to the Config Service's log.
                  •  
                    importThirdPartyConfig[]finsemble.importThirdPartyConfig[]
                •  
                  initialWorkspacefinsemble.initialWorkspace
                  (string,null)The workspace name specified by this config will be the first one presented to an end user the very first time they start the smart desktop. This overrides the default behavior set by the config: finsemble.workspaces. After the very first instance of the smart desktop, Finsemble loads the last workspace loaded or any workspace specified by user preferences.
                •  
                  loggerfinsemble.logger
                  (object)
                  •  
                    allowNativeErrorNotificationsfinsemble.logger.allowNativeErrorNotifications
                    (booleanfalse)Set to 'true' to allow electron.Notifications for FEA errors.
                  •  
                    defaultClientLogLevelsfinsemble.logger.defaultClientLogLevels
                •  
                  menusfinsemble.menus
                  (array)
                  •  
                    menus[]finsemble.menus[]
                    (object)
                    •  
                      alignfinsemble.menus[].align
                      (string)
                    •  
                      customDatafinsemble.menus[].customData
                      (object)
                      •  
                        listfinsemble.menus[].customData.list
                        (array)
                      •  
                        modefinsemble.menus[].customData.mode
                        (string)
                    •  
                      fontIconfinsemble.menus[].fontIcon
                      (string)
                    •  
                      iconfinsemble.menus[].icon
                      (string)
                    •  
                      labelfinsemble.menus[].label
                      (string)
                    •  
                      menuTypefinsemble.menus[].menuType
                      (string)
                    •  
                      typefinsemble.menus[].type
                      (string)
                •  
                  moduleRootfinsemble.moduleRoot
                  (stringhttps://localhost:3375/finsemble)The location from which you are serving the Finsemble core library. This is important for resolving URLs internally.
                •  
                  preloadsfinsemble.preloads
                  (array)
                  •  
                    preloads[]finsemble.preloads[]
                    (object)
                    •  
                      aliasfinsemble.preloads[].alias
                      (string)
                    •  
                      urlfinsemble.preloads[].url
                      (string)
                •  
                  routerfinsemble.router
                  (object)Configurations for Router's communication mechanism.
                  {
                  "router": {
                  "crossDomainTransport": "IPCBus",
                  "sameDomainTransport": "SharedWorker",
                  "transportSettings": {
                  "FinsembleTransport": {
                  "serverAddress": "ws://127.0.0.1:3376"
                  }
                  }
                  }
                  }
                  •  
                    crossDomainTransportfinsemble.router.crossDomainTransport
                    (stringIPCBus)The interface for communicating between cross-domain components - When set to IPCBus, the default, all cross-domain components use IPC to communicate. When set to FinsembleTransport, cross-domain components use IAC. You might switch the crossDomainTransport if you are having connection issues involving firewalls, your CSP, etc. Available values are 'IPCBus' and 'FinsembleTransport'.
                       "IPCBus"
                    "SharedWorker"
                    "FinsembleTransport"
                  •  
                    sameDomainTransportfinsemble.router.sameDomainTransport
                    (stringSharedWorker)The transport for components and services with Finsemble's domain.
                       "IPCBus"
                    "SharedWorker"
                    "FinsembleTransport"
                  •  
                    trafficSnapMinCountSizefinsemble.router.trafficSnapMinCountSize
                    (number)If you enable the traffic snapshot, Finsemble waits until the message count reaches this minimum before outputting these messages.
                  •  
                    trafficSnapshotMillisecondsfinsemble.router.trafficSnapshotMilliseconds
                    (number)Defines how often to take the traffic snapshot for diagnostics.
                  •  
                    transportSettingsfinsemble.router.transportSettings
                    (object)The specific setting for certain transports.
                    •  
                      FinsembleTransportfinsemble.router.transportSettings.FinsembleTransport
                      (object)(required)Configuration for the FinsembleTransport (IAC) if chosen as the communication mechanism for cross-domain components. IAC uses WebSocket as its communication protocol.
                      •  
                        serverAddressfinsemble.router.transportSettings.FinsembleTransport.serverAddress
                        (stringws://127.0.0.1:3376)(required)URI for the WebSocket server. To use a secure connection, use 'wss://localhost.chartiq.com:3376'.
                •  
                  scheduledCloseDiscardUnsavedChangesfinsemble.scheduledCloseDiscardUnsavedChanges
                  (booleanfalse)If true AND Finsemble has a scheduled restart configured, it discards any unsaved workspace changes when Finsemble closes.
                •  
                  scheduledRestartfinsemble.scheduledRestart
                  (boolean,object)
                  •  
                    dayOfWeekfinsemble.scheduledRestart.dayOfWeek
                    (number,boolean)The day of the week to run the task. Sunday - Saturday: 0 - 6. If set to false, the task runs weekly
                    • minimum: 0
                    • maximum: 6
                  •  
                    hourfinsemble.scheduledRestart.hour
                    (number)0 - 23. the hour when Finsemble runs the task.
                    • minimum: 0
                    • maximum: 23
                  •  
                    minutefinsemble.scheduledRestart.minute
                    (number)0 - 59. the minute when Finsemble runs the task
                    • minimum: 0
                    • maximum: 59
                •  
                  scheduledShutdownfinsemble.scheduledShutdown
                  (boolean,object)
                  •  
                    dayOfWeekfinsemble.scheduledShutdown.dayOfWeek
                    (number,boolean)The day of the week to run the task. Sunday - Saturday: 0 - 6. If set to false, the task runs weekly
                    • minimum: 0
                    • maximum: 6
                  •  
                    hourfinsemble.scheduledShutdown.hour
                    (number)0 - 23. the hour when Finsemble runs the task.
                    • minimum: 0
                    • maximum: 23
                  •  
                    minutefinsemble.scheduledShutdown.minute
                    (number)0 - 59. the minute when Finsemble runs the task
                    • minimum: 0
                    • maximum: 59
                •     servicesConfig

                •  
                  servicesConfigfinsemble.servicesConfig
                  (object)Configurations that override the defaults for Finsemble's built-in services. (Defaults are stored in "finsemble.services" and you cannot directly override them.
                  •  
                    assimilationfinsemble.servicesConfig.assimilation
                    (object)Assimilation of native windows. This only works on Windows operating systems.
                    •  
                      affinityfinsemble.servicesConfig.assimilation.affinity
                      (string,boolean)Only applicable for spawnAs: "window". When set, the service window is given process affinity based on the string passed in. This allows aggregation of services to a specific browser process. Set to false to disable render process grouping via affinity
                    •  
                      blacklistfinsemble.servicesConfig.assimilation.blacklist
                      (array)
                    •  
                      enabledfinsemble.servicesConfig.assimilation.enabled
                      (booleantrue)Set to true to turn on Assimilation.
                    •  
                      eventIgnorefinsemble.servicesConfig.assimilation.eventIgnore
                      (number50)Sets the threshold (in milliseconds) from the previous event before which focus/restore events are dropped. Certain sequences of minimize/restore/focus events can create an unwanted loop of events; therefore, restore and focus events are throttled with this property.
                    •  
                      focusDelayfinsemble.servicesConfig.assimilation.focusDelay
                      (number30)Sets the delay (in milliseconds) between the focus event being received and the actual focusing of the window. This is necessary because the focus event is called simultaneously with minimize/restore events, which causes issues with docking groups.
                    •  
                      hideTitleBarsfinsemble.servicesConfig.assimilation.hideTitleBars
                      (boolean)Set to true to hide all Finsemble title bars for native applications.
                    •  
                      hotkeyTimeoutfinsemble.servicesConfig.assimilation.hotkeyTimeout
                      (number)
                    •  
                      onlySpawnedfinsemble.servicesConfig.assimilation.onlySpawned
                      (booleantrue)This Boolean tells assimilation whether it should restrict its scope to external applications spawned by Finsemble. If true, only applications launched from Finsemble will be controlled. If false, it will try to control the movements of all windows on the desktop.
                    •  
                      portfinsemble.servicesConfig.assimilation.port
                      (number8392)Assimilation communicates with Finsemble's HTML services via a WebSocket. Set the port here.
                    •  
                      spawnAsfinsemble.servicesConfig.assimilation.spawnAs
                      (string)Valid values are:
                      "window" - Spawns the service as a child window of the Service Manager.
                      "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                      "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                         "window"
                      "process"
                      "script"
                    •  
                      throttlefinsemble.servicesConfig.assimilation.throttle
                      (number15)Windows sends dozens of events per second when a window is moved. This value tells the application how often to collect those events. You might see performance degradations if you set the throttle below 5.
                    •  
                      useFeaSpawnfinsemble.servicesConfig.assimilation.useFeaSpawn
                      (boolean)
                    •  
                      visiblefinsemble.servicesConfig.assimilation.visible
                      (booleanfalse)Set this to true to reveal the hidden service window. Useful for debugging services.
                    •  
                      whitelistfinsemble.servicesConfig.assimilation.whitelist
                      (array)
                  •  
                    authenticationfinsemble.servicesConfig.authentication
                    (object)Authentication service config options.
                    •  
                      spawnAsfinsemble.servicesConfig.authentication.spawnAs
                      (string)Valid values are:
                      "window" - Spawns the service as a child window of the Service Manager.
                      "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                      "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                         "window"
                      "process"
                      "script"
                  •  
                    distributedStorefinsemble.servicesConfig.distributedStore
                    (object)Distributed Store configuration
                    •  
                      affinityfinsemble.servicesConfig.distributedStore.affinity
                      (string,boolean)Only applicable for spawnAs: "window". When set, the service window gets process affinity based on the string passed in. This allows aggregation of services to a specific browser process. Set to false to disable render process grouping via affinity.
                    •  
                      initialStoresfinsemble.servicesConfig.distributedStore.initialStores
                      (array)(required)Foundations for any stores that should be seeded on startup.
                      •  
                        initialStores[]finsemble.servicesConfig.distributedStore.initialStores[]
                        (object)Config for each individual store.
                        •  
                          defaultfinsemble.servicesConfig.distributedStore.initialStores[].default
                          (object)
                          •  
                            activeFolderfinsemble.servicesConfig.distributedStore.initialStores[].default.activeFolder
                            (string)
                          •  
                            activeLauncherTagsfinsemble.servicesConfig.distributedStore.initialStores[].default.activeLauncherTags
                            (array)
                          •  
                            activeTagsfinsemble.servicesConfig.distributedStore.initialStores[].default.activeTags
                            (array)
                          •  
                            filteredAppsfinsemble.servicesConfig.distributedStore.initialStores[].default.filteredApps
                            (array)
                          •  
                            filterTagsfinsemble.servicesConfig.distributedStore.initialStores[].default.filterTags
                            (array)
                          •  
                            filterTextfinsemble.servicesConfig.distributedStore.initialStores[].default.filterText
                            (string)
                          •  
                            sortByfinsemble.servicesConfig.distributedStore.initialStores[].default.sortBy
                            (string)
                        •  
                          foundationfinsemble.servicesConfig.distributedStore.initialStores[].foundation
                          (object)The data to seed into the store.
                          •  
                            appDefinitionsfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appDefinitions
                            (object)
                          •  
                            appFoldersfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders
                            (object)Individual folders that appear in the Advanced app launcher.
                            •  
                              foldersfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders
                              (object)
                              •  
                                Advanced App Launcherfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Advanced App Launcher
                                (object)Definition for AdvanceAppLauncher application folder.
                                •  
                                  appsfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Advanced App Launcher.apps
                                  (array)
                                  •  
                                    apps[]finsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Advanced App Launcher.apps[]
                                    (object)
                                    •  
                                      appIDfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Advanced App Launcher.apps[].appID
                                      (string)
                                    •  
                                      namefinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Advanced App Launcher.apps[].name
                                      (string)
                                •  
                                  canDeletefinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Advanced App Launcher.canDelete
                                  (boolean)
                                •  
                                  iconfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Advanced App Launcher.icon
                                  (string)
                                •  
                                  typefinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Advanced App Launcher.type
                                  (string)
                              •  
                                Favoritesfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Favorites
                                (object)Definition for AdvanceAppLauncher application folder.
                                •  
                                  appsfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Favorites.apps
                                  (array)
                                  •  
                                    apps[]finsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Favorites.apps[]
                                    (object)
                                    •  
                                      appIDfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Favorites.apps[].appID
                                      (string)
                                    •  
                                      namefinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Favorites.apps[].name
                                      (string)
                                •  
                                  canDeletefinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Favorites.canDelete
                                  (boolean)
                                •  
                                  iconfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Favorites.icon
                                  (string)
                                •  
                                  typefinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.folders.Favorites.type
                                  (string)
                            •  
                              listfinsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.list
                              (array)
                              •  
                                list[]finsemble.servicesConfig.distributedStore.initialStores[].foundation.appFolders.list[]
                                (string)
                        •  
                          namefinsemble.servicesConfig.distributedStore.initialStores[].name
                          (string)The name of the store to seed.
                    •  
                      visiblefinsemble.servicesConfig.distributedStore.visible
                      (booleanfalse)Set this to true in order to reveal the hidden service window. Useful for debugging services.
                  •  
                    dockingfinsemble.servicesConfig.docking
                    (object)Configs specific to the docking service
                    •  
                      allowAppropriatedWindowsToGroupfinsemble.servicesConfig.docking.allowAppropriatedWindowsToGroup
                      (booleanfalse)Allow Appropriated Windows (freestanding applications and windows opened with window.open) to group.
                    •  
                      ALLOW_GROUPS_TO_SNAPfinsemble.servicesConfig.docking.ALLOW_GROUPS_TO_SNAP
                      (booleantrue)Allows groups to snap to one another.
                    •  
                      alwaysOnTopLevelfinsemble.servicesConfig.docking.alwaysOnTopLevel
                      (string)The always on top level when setting components alwaysOnTop to true. See the Electron alwaysOnTop documentation for valid values.
                    •  
                      BUFFER_SIZEfinsemble.servicesConfig.docking.BUFFER_SIZE
                      (number20)The size of the zone, in pixels, around a window that causes it to snap to other windows.
                    •  
                      claimSpacefinsemble.servicesConfig.docking.claimSpace
                      (object)Settings for claiming space on desktop at the operating system level. Windows only.
                      •  
                        alwaysOnTopfinsemble.servicesConfig.docking.claimSpace.alwaysOnTop
                        (booleanfalse)If true, docked windows that claim space are always on top when docked.
                      •  
                        enabledfinsemble.servicesConfig.docking.claimSpace.enabled
                        (booleantrue)If true, docked windows behave like the Windows Taskbar and claim space on the screen.
                    •  
                      enabledfinsemble.servicesConfig.docking.enabled
                      (boolean)(required)
                    •  
                      enableWindowsAeroSnapfinsemble.servicesConfig.docking.enableWindowsAeroSnap
                      (booleanfalse)If true, windows Aero Snap keyboard shortcuts (WINDOWS KEY + UP, RIGHT, DOWN, or LEFT arrow key) move the current window when pressed. Windows move the window and Finsemble respond by updating bounds within the Window Service. If false (default), Finsemble cancels these actions.
                    •  
                      fillHolesOnUndockfinsemble.servicesConfig.docking.fillHolesOnUndock
                      (booleantrue)(required)If set to true, a rectangular group maintains its shape when windows leave the group.
                    •  
                      fillHolesOnUndock finsemble.servicesConfig.docking.fillHolesOnUndock
                      If set to true, a rectangular group maintains its shape when windows leave the group.
                    •  
                      groupTileBufferfinsemble.servicesConfig.docking.groupTileBuffer
                      (number30)(required)The size of the buffer, in pixels, wherein a dragged window will trigger a tile operation.
                    •  
                      GROUP_MODEfinsemble.servicesConfig.docking.GROUP_MODE
                      (object)
                      •  
                        behavior finsemble.servicesConfig.docking.GROUP_MODE.behavior
                        (stringexplicit)
                           "explicit"
                        "implicit"
                      •  
                        enabledfinsemble.servicesConfig.docking.GROUP_MODE.enabled
                        (booleantrue)Specifies whether to allow windows to group to one another.
                    •  
                      headerHeightfinsemble.servicesConfig.docking.headerHeight
                      (number32)(required)The height of the window title bar.
                    •  
                      headerWidthfinsemble.servicesConfig.docking.headerWidth
                      (number32)The width of the window title bar.
                    •  
                      MINIMUM_HEIGHTfinsemble.servicesConfig.docking.MINIMUM_HEIGHT
                      (number28)The smallest height a window can shrink to on resize.
                    •  
                      MINIMUM_WIDTHfinsemble.servicesConfig.docking.MINIMUM_WIDTH
                      (number98)(required)The smallest width a window can shrink to on resize.
                    •  
                      preventOverlapClaimSpacefinsemble.servicesConfig.docking.preventOverlapClaimSpace
                      (booleantrue)If a user moves a window so that its top edge overlaps the space claimed by the operating system (e.g. the toolbar area on MS Windows), the window is automatically repositioned below or above the claimed space unless this value is set to false.
                    •  
                      requireRectangularityForGroupResizefinsemble.servicesConfig.docking.requireRectangularityForGroupResize
                      (booleantrue)(required)If a group of windows forms a rectangle, it can be resized. By turning this to false, the user can resize any shaped group by grabbing a corner that is not on another window's edge.
                    •  
                      RESIZE_EVENT_THROTTLE_PERIODfinsemble.servicesConfig.docking.RESIZE_EVENT_THROTTLE_PERIOD
                      (number0)Time, in milliseconds, to throttle resize events. If there are too many resize events and they collectively cause poor performance, tweak this value until you are happy with the performance.
                    •  
                      SNAPPING_OPACITYfinsemble.servicesConfig.docking.SNAPPING_OPACITY
                      (number0.8)The opacity windows change to when other windows encroach on their buffer zone.
                    •  
                      tabbingfinsemble.servicesConfig.docking.tabbing
                      (object)Properties relating to window tabbing (combining multiple windows into a tabbed group).
                      •  
                        enabledfinsemble.servicesConfig.docking.tabbing.enabled
                        (booleanfalse)Allows windows to tab onto each other.
                      •  
                        tabMinWidthfinsemble.servicesConfig.docking.tabbing.tabMinWidth
                        (number72)Sets the min width of the individual tabs. (Default 72px)
                    •  
                      tilingfinsemble.servicesConfig.docking.tiling
                      (object)(required)Properties relating to window tiling (combining windows into group of tiles attached to each other that behave as a single window)
                      •  
                        enabledfinsemble.servicesConfig.docking.tiling.enabled
                        (booleanfalse)Allows windows to tile onto each other.
                    •  
                      undockDisbandsEntireGroupfinsemble.servicesConfig.docking.undockDisbandsEntireGroup
                      (booleanfalse)(required)By default, when a user clicks the "Undock" button in the title bar, the window leaves the group without destroying that group. Set this value to true if you want to dismantle the group when the user clicks the "Undock" button.
                    •  
                      visiblefinsemble.servicesConfig.docking.visible
                      (booleanfalse)Set this to true to reveal the hidden service window. Useful for debugging services.
                  •  
                    hotkeysfinsemble.servicesConfig.hotkeys
                    (object)Hotkeys service config options.
                    •  
                      spawnAsfinsemble.servicesConfig.hotkeys.spawnAs
                      (string)Valid values are:
                      "window" - Spawns the service as a child window of the Service Manager.
                      "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                      "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                         "window"
                      "process"
                      "script"
                  •  
                    interopfinsemble.servicesConfig.interop
                    (object)Interop Service config options
                    •  
                      addIntentListenerMaxInitializationTimeoutfinsemble.servicesConfig.interop.addIntentListenerMaxInitializationTimeout
                      (number15000)Sets the maximum time that the interop service waits for an application that was started to resolve an intent to invoke fdc3.addIntentListener().
                    •  
                      affinityfinsemble.servicesConfig.interop.affinity
                      (string,boolean)Only applicable for spawnAs: "window". When set, the service window is given process affinity based on the string passed in. This allows aggregation of services to a specific browser process. Set to false to disable render process grouping via affinity.
                    •  
                      allowResolverToRememberfinsemble.servicesConfig.interop.allowResolverToRemember
                      (booleantrue)Set to false to disable the 'remember your choice' check box on the FDC3 resolver UI. When true, the resolver remembers the particular intent resolutions that the user specified.
                    •  
                      bootParamsfinsemble.servicesConfig.interop.bootParams
                      (object)Boot parameter properties
                      •  
                        autoStartfinsemble.servicesConfig.interop.bootParams.autoStart
                        (booleantrue)Specifies whether to automatically start during the system manager's startup phase.
                      •  
                        checkpointsfinsemble.servicesConfig.interop.bootParams.checkpoints
                        (object)
                      •  
                        customFailureMessagefinsemble.servicesConfig.interop.bootParams.customFailureMessage
                        (string)The custom message to output to the system log if the app fails to start.
                      •  
                        dependenciesfinsemble.servicesConfig.interop.bootParams.dependencies
                        (array)Specifies other services this service relies on.
                        •  
                          dependencies[]finsemble.servicesConfig.interop.bootParams.dependencies[]
                          (string)
                      •  
                        stagefinsemble.servicesConfig.interop.bootParams.stage
                        (string)Specifies at which stage the app is launched.
                           "microkernel"
                        "kernel"
                        "pre-authentication"
                        "authentication"
                        "appd-retrieval"
                        "system-preuser"
                        "preuser"
                        "preuser2"
                        "preuser3"
                        "preuser4"
                        "system-earlyuser"
                        "earlyuser"
                        "user"
                      •  
                        stopOnFailurefinsemble.servicesConfig.interop.bootParams.stopOnFailure
                        (booleantrue)Specifies whether the app should stop if one or more of its dependencies fail to start. Only relevant to apps with dependencies. Set to false if you want the app to continue startup even if its dependencies fail.
                      •  
                        timeoutfinsemble.servicesConfig.interop.bootParams.timeout
                        (number)The maximum time, in milliseconds, that the app can take to start up. If the startup doesn't complete in this time, it's marked as a failure. If you don't specify this property, Finsemble uses the default timeout value under the manifest's 'bootConfig.startComponentTimeout' property.
                    •  
                      fdc3BridgingEnabledfinsemble.servicesConfig.interop.fdc3BridgingEnabled
                      (booleanfalse)(Experimental) if true then the Finsemble FDC3 desktop agent will enable bridging and attempt to connect the bridging server specified at fdc3BridgingServerAddress.
                    •  
                      fdc3BridgingServerAddressfinsemble.servicesConfig.interop.fdc3BridgingServerAddress
                      (stringws://127.0.0.1:3333)(Experimental) The socket address of the FDC3 bridging server. Only used when fdc3BridgingEnabled is true.
                    •  
                      fdc3_1_2_compatibilityfinsemble.servicesConfig.interop.fdc3_1_2_compatibility
                      (boolean)If true then Finsemble desktop agent conforms to FDC3 1.2 (as opposed to 2.0).
                    •  
                      joinMultipleChannelsfinsemble.servicesConfig.interop.joinMultipleChannels
                      (boolean)If explicitly set to false, no FDC3 apps can join multiple user channels. So when an app that is already on a channel joins another channel, it automatically leaves the channel it was on.
                    •  
                      showDevConsoleOnVisiblefinsemble.servicesConfig.interop.showDevConsoleOnVisible
                      (booleantrue)Automatically spawns a dev console when visible is true. Note that if a service is set to type "script", you shouldn't use this but instead debug serviceManager.html.
                    •  
                      spawnAsfinsemble.servicesConfig.interop.spawnAs
                      (string)Valid values are:
                      "window" - Spawns the service as a child window of the Service Manager.
                      "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                      "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                         "window"
                      "process"
                      "script"
                    •  
                      visiblefinsemble.servicesConfig.interop.visible
                      (booleanfalse)Set to true to display the Interop Service's window, which provides a set of Redux devtools that you can use to debug problems with FDC3 interactions.
                  •  
                    launcherfinsemble.servicesConfig.launcher
                    (object)Launcher Service config options.
                    •  
                      affinityfinsemble.servicesConfig.launcher.affinity
                      (string,boolean)Only applicable for spawnAs: "window". When set, the service window is given process affinity based on the string passed in. This allows aggregation of services to a specific browser process. Set it to false to disable render process grouping via affinity.
                    •  
                      concurrentSpawnLimitfinsemble.servicesConfig.launcher.concurrentSpawnLimit
                      (number)Specifies the number of components that can be spawned concurrently during Workspace load. The default is machine's number of logical processor cores divided minus 1 or a minimum of 4.
                      • minimum: 1
                    •  
                      defaultComponentAffinityfinsemble.servicesConfig.launcher.defaultComponentAffinity
                      (string,booleanWorkspaceComponents)Global default render process affinity for all non-service components and applications. Set it to false to disable grouping of render processes via affinity. This setting can be overridden by component level config.
                    •  
                      defaultServiceAffinityfinsemble.servicesConfig.launcher.defaultServiceAffinity
                      (string,booleanFinsemble)Global default render process affinity for all services excluding the four micro-kernel services (System Manager, Router, Logger and Config) which cannot access the config. Set it to false to disable grouping of render processes for services via affinity. This setting can be overridden by service level config.
                    •  
                      searchfinsemble.servicesConfig.launcher.search
                      (object)Allows you to control the component search built into finsemble.
                      •  
                        enabledfinsemble.servicesConfig.launcher.search.enabled
                        (booleantrue)Set to false to disable component search.
                      •  
                        optionsfinsemble.servicesConfig.launcher.search.options
                        (object)An object containing fuse.js configuration options.
                      •  
                        spawnAsfinsemble.servicesConfig.launcher.spawnAs
                        (string)Valid values are:
                        "window" - Spawns the service as a child window of the Service Manager.
                        "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                        "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                           "window"
                        "process"
                        "script"
                      •  
                        staggerPixelsfinsemble.servicesConfig.launcher.staggerPixels
                        (number40)(required)Set the amount of "stagger" pixels when components are launched on top of another. Staggering is like laying out cards on a table.
                      •  
                        unknownComponentfinsemble.servicesConfig.launcher.unknownComponent
                        (stringnonConfiguredComponent)(required)This corresponds to a component's key in one of your component JSON files. Our default is the "nonConfiguredComponent". The unknown component serves as a placeholder for a component that a user loses permissions to. The unknown component shows up as a substitute to an existing component when Finsemble cannot find this component's configuration (e.g., the user no longer has access to this component). This unknown component is saved to the workspace so that the original component returns in the future if Finsemble can find it.
                      •  
                        visiblefinsemble.servicesConfig.launcher.visible
                        (booleanfalse)Set this to true to reveal the hidden service window. Useful for debugging services.
                    •  
                      linkerfinsemble.servicesConfig.linker
                      (object)Linker config options
                      •  
                        enabledfinsemble.servicesConfig.linker.enabled
                        (booleanfalse)Set this to true to use Linker Client on client side. Otherwise Finsemble uses the FDC3 client.
                      •  
                        spawnAsfinsemble.servicesConfig.linker.spawnAs
                        (string)Valid values are:
                        "window" - Spawns the service as a child window of the Service Manager.
                        "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                        "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                           "window"
                        "process"
                        "script"
                    •  
                      loggerfinsemble.servicesConfig.logger
                      (object)Central Logger config options
                      •  
                        affinityfinsemble.servicesConfig.logger.affinity
                        (string,boolean)Only applicable for spawnAs: "window". When set, the service window is given process affinity based on the string passed in. This allows aggregation of services to a specific browser process. Set to false to disable render process grouping via affinity.
                      •  
                        defaultClientLogLevelsfinsemble.servicesConfig.logger.defaultClientLogLevels
                        (object)Sets the default logging state of each client in the Central Logger if no previous state is found.
                        •  
                          Debugfinsemble.servicesConfig.logger.defaultClientLogLevels.Debug
                          (booleanfalse)Set to 'true' to see 'Debug' as a default client logging level.
                        •  
                          Errorfinsemble.servicesConfig.logger.defaultClientLogLevels.Error
                          (booleantrue)Set to 'true' to see 'Error' as a default client logging level.
                        •  
                          Infofinsemble.servicesConfig.logger.defaultClientLogLevels.Info
                          (booleanfalse)Set to 'true' to see 'Info' as a default client logging level.
                        •  
                          LocalOnlyfinsemble.servicesConfig.logger.defaultClientLogLevels.LocalOnly
                          (booleanfalse)Set to 'true' to see 'LocalOnly' as a default client logging level.
                        •  
                          Logfinsemble.servicesConfig.logger.defaultClientLogLevels.Log
                          (booleantrue)Set to 'true' to see 'Log' as a default client logging level.
                        •  
                          Verbosefinsemble.servicesConfig.logger.defaultClientLogLevels.Verbose
                          (booleanfalse)Set to 'true' to see 'Verbose' as a default client logging level
                        •  
                          Warnfinsemble.servicesConfig.logger.defaultClientLogLevels.Warn
                          (booleantrue)Set 'true' to see 'Warn' as a default client logging level.
                      •  
                        hotkeyShowCentralLoggerfinsemble.servicesConfig.logger.hotkeyShowCentralLogger
                        (arrayctrl,shift,L)Sets the hotkey for showing the Central Logger. Leave this config as an empty array in order to disable the hotkey.
                        •  
                          hotkeyShowCentralLogger[]finsemble.servicesConfig.logger.hotkeyShowCentralLogger[]
                          (string)
                      •  
                        spawnAsfinsemble.servicesConfig.logger.spawnAs
                        (string)Valid values are:
                        "window" - Spawns the service as a child window of the Service Manager.
                        "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                        "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                           "window"
                        "process"
                        "script"
                      •  
                        visiblefinsemble.servicesConfig.logger.visible
                        (booleanfalse)Set this to true to reveal the hidden service window. Useful for debugging services.
                    •  
                      notificationsfinsemble.servicesConfig.notifications
                      (object)Configs specific to the notifications service.
                      •  
                        applyNotificationOverridesfinsemble.servicesConfig.notifications.applyNotificationOverrides
                        (booleanfalse)The applyNotificationOverrides enables Finsemble to display notifications triggered by a browser view.
                      •  
                        defaultDismissButtonTextfinsemble.servicesConfig.notifications.defaultDismissButtonText
                        (stringDismiss)If the service needs to add the dismiss actions to the button, the text defaults to the value set here as a last resort. There is a hardcoded value if this not set.
                      •  
                        defaultSnoozePeriodSecondsfinsemble.servicesConfig.notifications.defaultSnoozePeriodSeconds
                        (number300)The default snooze period for notifications.
                      •  
                        demoModefinsemble.servicesConfig.notifications.demoMode
                        (booleanfalse)
                      •  
                        disableDotOnToolbarIconfinsemble.servicesConfig.notifications.disableDotOnToolbarIcon
                        (booleanfalse)Disables the dot on the toolbar notifications icon when there are unread notifications.
                      •  
                        informationalNotificationToastPeriodSecondsfinsemble.servicesConfig.notifications.informationalNotificationToastPeriodSeconds
                        (number45)The number of seconds a toast appears for informational notifications (that is, any notifications without actions).
                      •  
                        maxNotificationRetentionPeriodSecondsfinsemble.servicesConfig.notifications.maxNotificationRetentionPeriodSeconds
                        (number604800)The maximum amount of time, in seconds, to retain notifications.
                      •  
                        maxNotificationsToRetainfinsemble.servicesConfig.notifications.maxNotificationsToRetain
                        (number250)The maximum number of notifications the service stores in memory.
                      •  
                        mutefinsemble.servicesConfig.notifications.mute
                        (array)List of mute filters. All notifications that match the filter will have the mute flag set to true.
                        •  
                          mute[]finsemble.servicesConfig.notifications.mute[]
                          (object)
                          •  
                            sourcefinsemble.servicesConfig.notifications.mute[].source
                            (string)
                          •  
                            typefinsemble.servicesConfig.notifications.mute[].type
                            (string)
                      •  
                        newNotificationHaloPeriodSecondsfinsemble.servicesConfig.notifications.newNotificationHaloPeriodSeconds
                        (number180)The default period for new notifications halo.
                      •  
                        notificationsCenterComponentTypefinsemble.servicesConfig.notifications.notificationsCenterComponentType
                        (stringNotificationsCenter)(Experimental) This value tells the notification service which component to use as the Notification Center. This component should spawn, hide and show when a user clicks the notification bell.
                      •  
                        proxyToWebApiFilterfinsemble.servicesConfig.notifications.proxyToWebApiFilter
                        (object,boolean)Broadcast any notifications that match this filter to the Notification Web API to appear in the OS.
                        •  
                          excludefinsemble.servicesConfig.notifications.proxyToWebApiFilter.exclude
                          (array,boolean)
                          •  
                            exclude[]finsemble.servicesConfig.notifications.proxyToWebApiFilter.exclude[]
                            (object)For any values on a notification not already set, these default values are set on the Notification object. All fields in here must match those in the INotification interface.
                            •  
                              contentLogofinsemble.servicesConfig.notifications.proxyToWebApiFilter.exclude[].contentLogo
                              (string)
                            •  
                              cssClassNamefinsemble.servicesConfig.notifications.proxyToWebApiFilter.exclude[].cssClassName
                              (string)
                            •  
                              headerLogofinsemble.servicesConfig.notifications.proxyToWebApiFilter.exclude[].headerLogo
                              (string)
                            •  
                              metafinsemble.servicesConfig.notifications.proxyToWebApiFilter.exclude[].meta
                              (object)
                              •  
                                sourcefinsemble.servicesConfig.notifications.proxyToWebApiFilter.exclude[].source
                                (string)
                              •  
                                timeoutfinsemble.servicesConfig.notifications.proxyToWebApiFilter.exclude[].timeout
                                (number)
                              •  
                                typefinsemble.servicesConfig.notifications.proxyToWebApiFilter.exclude[].type
                                (string)
                          •  
                            includefinsemble.servicesConfig.notifications.proxyToWebApiFilter.include
                            (array,boolean)
                            •  
                              include[]finsemble.servicesConfig.notifications.proxyToWebApiFilter.include[]
                              (object)For any values on a notification not already set, these default values are set on the Notification object. All fields in here must match those in the INotification interface.
                              •  
                                contentLogofinsemble.servicesConfig.notifications.proxyToWebApiFilter.include[].contentLogo
                                (string)
                              •  
                                cssClassNamefinsemble.servicesConfig.notifications.proxyToWebApiFilter.include[].cssClassName
                                (string)
                              •  
                                headerLogofinsemble.servicesConfig.notifications.proxyToWebApiFilter.include[].headerLogo
                                (string)
                              •  
                                metafinsemble.servicesConfig.notifications.proxyToWebApiFilter.include[].meta
                                (object)
                                •  
                                  sourcefinsemble.servicesConfig.notifications.proxyToWebApiFilter.include[].source
                                  (string)
                                •  
                                  timeoutfinsemble.servicesConfig.notifications.proxyToWebApiFilter.include[].timeout
                                  (number)
                                •  
                                  typefinsemble.servicesConfig.notifications.proxyToWebApiFilter.include[].type
                                  (string)
                          •  
                            showDotOnToolbarIconForMutedNotificationsfinsemble.servicesConfig.notifications.showDotOnToolbarIconForMutedNotifications
                            (booleanfalse)Shows the new notification dot on the toolbar for muted notifications (if disableDotOnToolbarIcon is false).
                          •  
                            spawnAsfinsemble.servicesConfig.notifications.spawnAs
                            (string)Valid values are:
                            "window" - Spawns the service as a child window of the Service Manager.
                            "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                            "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                               "window"
                            "process"
                            "script"
                          •  
                            toastTimeoutOnActionableNotificationsfinsemble.servicesConfig.notifications.toastTimeoutOnActionableNotifications
                            (booleantrue)If set to false, Actionable Notification Toasts stay on screen until a user manually removes them.
                          •  
                            typesfinsemble.servicesConfig.notifications.types
                            (object)'types' provide a way of setting default values on notifications based on the INotification.type
                            •  
                              defaultfinsemble.servicesConfig.notifications.types.default
                              (object)object Type. The values inside this object are applied only to notifications with the property 'type' set to the key value.
                              •  
                                defaultDismissButtonTextfinsemble.servicesConfig.notifications.types.default.defaultDismissButtonText
                                (stringDismiss)Add a dismiss action to the Notification if one is not already set.
                              •  
                                defaultsfinsemble.servicesConfig.notifications.types.default.defaults
                                (object)For any values on a notification not already set, these default values are set on the Notification object. All fields in here must match those in the INotification interface.
                                •  
                                  contentLogofinsemble.servicesConfig.notifications.types.default.defaults.contentLogo
                                  (string)
                                •  
                                  cssClassNamefinsemble.servicesConfig.notifications.types.default.defaults.cssClassName
                                  (string)
                                •  
                                  headerLogofinsemble.servicesConfig.notifications.types.default.defaults.headerLogo
                                  (string)
                                •  
                                  metafinsemble.servicesConfig.notifications.types.default.defaults.meta
                                  (object)
                                  •  
                                    sourcefinsemble.servicesConfig.notifications.types.default.defaults.source
                                    (string)
                                  •  
                                    timeoutfinsemble.servicesConfig.notifications.types.default.defaults.timeout
                                    (number)
                                  •  
                                    typefinsemble.servicesConfig.notifications.types.default.defaults.type
                                    (string)
                                •  
                                  showDismissActionfinsemble.servicesConfig.notifications.types.default.showDismissAction
                                  (booleanfalse)Add a dismiss action to the notification if one does not exists. Default set to false.
                              •  
                                types[]finsemble.servicesConfig.notifications.types[]
                                (object)object Type. The values inside this object are applied only to notifications with the property 'type' set to the key value.
                                •  
                                  defaultDismissButtonTextfinsemble.servicesConfig.notifications.types[].defaultDismissButtonText
                                  (stringDismiss)Add a dismiss action to the Notification if one is not already set.
                                •  
                                  defaultsfinsemble.servicesConfig.notifications.types[].defaults
                                  (object)For any values on a notification not already set, these default values are set on the Notification object. All fields in here must match those in the INotification interface.
                                  •  
                                    contentLogofinsemble.servicesConfig.notifications.types[].defaults.contentLogo
                                    (string)
                                  •  
                                    cssClassNamefinsemble.servicesConfig.notifications.types[].defaults.cssClassName
                                    (string)
                                  •  
                                    headerLogofinsemble.servicesConfig.notifications.types[].defaults.headerLogo
                                    (string)
                                  •  
                                    metafinsemble.servicesConfig.notifications.types[].defaults.meta
                                    (object)
                                    •  
                                      sourcefinsemble.servicesConfig.notifications.types[].defaults.source
                                      (string)
                                    •  
                                      timeoutfinsemble.servicesConfig.notifications.types[].defaults.timeout
                                      (number)
                                    •  
                                      typefinsemble.servicesConfig.notifications.types[].defaults.type
                                      (string)
                                  •  
                                    showDismissActionfinsemble.servicesConfig.notifications.types[].showDismissAction
                                    (booleanfalse)Add a dismiss action to the notification if one does not exists. Default set to false.
                            •  
                              searchfinsemble.servicesConfig.search
                              (object)Search service config options.
                              •  
                                spawnAsfinsemble.servicesConfig.search.spawnAs
                                (string)Valid values are:
                                "window" - Spawns the service as a child window of the Service Manager.
                                "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                                "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                                   "window"
                                "process"
                                "script"
                            •  
                              storagefinsemble.servicesConfig.storage
                              (object)Storage Service config options.
                              •  
                                adapterOperationTimeoutfinsemble.servicesConfig.storage.adapterOperationTimeout
                                (number10000)The timeout, in milliseconds, of each storageAdapter operation.
                              •  
                                affinityfinsemble.servicesConfig.storage.affinity
                                (string,boolean)Only applicable for spawnAs: "window". When set, the service window is given process affinity based on the string passed in. This allows aggregation of services to a specific browser process. Set to false to disable render process grouping via affinity
                              •  
                                dataStoreAdaptersfinsemble.servicesConfig.storage.dataStoreAdapters
                                (object)(required)Storage adapters that the storage service loads and that can be mapped to storage topics. Each entry specifies the path (which can contain manifest macros) to built a storage adapter javascript file. See Storing data for details on how to build a custom adapter.
                                {
                                "LocalStorageAdapter": "$applicationRoot/adapters/localStorageAdapter.js",
                                "IndexedDBAdapter": "$applicationRoot/adapters/indexedDBAdapter.js"
                                }
                                •  
                                  dataStoreAdapters[]finsemble.servicesConfig.storage.dataStoreAdapters[]
                                  (string)
                              •  
                                defaultStoragefinsemble.servicesConfig.storage.defaultStorage
                                (stringIndexedDBAdapter)(required)The default storage model to use when saving and loading data.
                              •  
                                spawnAsfinsemble.servicesConfig.storage.spawnAs
                                (string)Valid values are:
                                "window" - Spawns the service as a child window of the Service Manager.
                                "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                                "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                                   "window"
                                "process"
                                "script"
                              •  
                                topicToDataStoreAdaptersfinsemble.servicesConfig.storage.topicToDataStoreAdapters
                                (object)(required)Mapping of storage topic to the name of storage adapter.
                                •  
                                  finsemblefinsemble.servicesConfig.storage.topicToDataStoreAdapters.finsemble
                                  (stringIndexedDBAdapter)(required)Specifies the storage adapter to use when persisting non-workspace-related information.
                                •  
                                  finsemble.notificationsfinsemble.servicesConfig.storage.topicToDataStoreAdapters.finsemble.notifications
                                  (stringIndexedDBAdapter)Sets the storage adapter for notification persistence.
                                •  
                                  finsemble.workspacefinsemble.servicesConfig.storage.topicToDataStoreAdapters.finsemble.workspace
                                  (stringIndexedDBAdapter)(required)Specifies the storage adapter to use when persisting workspace-related information.
                                •  
                                  finsemble.workspace.cachefinsemble.servicesConfig.storage.topicToDataStoreAdapters.finsemble.workspace.cache
                                  (stringIndexedDBAdapter)(required)Specifies the storage adapter to use when caching workspace-related information.
                              •  
                                visiblefinsemble.servicesConfig.storage.visible
                                (booleanfalse)Set this to true to reveal the hidden service window. This can be useful for debugging services.
                            •  
                              windowfinsemble.servicesConfig.window
                              (object)Window Service config options.
                              •  
                                additionalWorkspaceFieldsfinsemble.servicesConfig.window.additionalWorkspaceFields
                                (array)Additional fields for window data that you can store in the Workspace
                                •  
                                  additionalWorkspaceFields[]finsemble.servicesConfig.window.additionalWorkspaceFields[]
                                  (string)
                              •  
                                allowWindowTitleRenaming finsemble.servicesConfig.window.allowWindowTitleRenaming
                                (booleantrue)Set to false to disable user editable tabs (rename by double-clicking on a window title or tab).
                              •  
                                ignoreFieldsForDirtyingWorkspacefinsemble.servicesConfig.window.ignoreFieldsForDirtyingWorkspace
                                (array)Changes in these fields do not cause workspaces to be dirty.
                                •  
                                  ignoreFieldsForDirtyingWorkspace[]finsemble.servicesConfig.window.ignoreFieldsForDirtyingWorkspace[]
                                  (string)
                              •  
                                spawnAsfinsemble.servicesConfig.window.spawnAs
                                (string)Valid values are:
                                "window" - Spawns the service as a child window of the Service Manager.
                                "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                                "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                                   "window"
                                "process"
                                "script"
                            •  
                              workspacefinsemble.servicesConfig.workspace
                              (object)Configurations related to the workspace service.
                              •  
                                affinityfinsemble.servicesConfig.workspace.affinity
                                (string,boolean)Only applicable for spawnAs: "window". When set, the service window is given process affinity based on the string passed in. This allows aggregation of services to a specific browser process. Set to false to disable render process grouping via affinity.
                              •  
                                closeFailureNotificationMessagefinsemble.servicesConfig.workspace.closeFailureNotificationMessage
                                (string)Override the default notification message that appears to the end user when closeWorkspaceTimeout is triggered. Set to "" to stop a message from being sent.
                              •  
                                closeWorkspaceTimeoutfinsemble.servicesConfig.workspace.closeWorkspaceTimeout
                                (number30000)Number of milliseconds the workspace service should wait for all of the windows to close when switching to another workspace. Workspaces are locked until a close action completes or times out. If this timeout value is exceeded, Finsemble notifies the user and loads an empty workspace. Set to null for no timeout.
                              •  
                                disableDirtyShutdownCheckfinsemble.servicesConfig.workspace.disableDirtyShutdownCheck
                                (boolean)Disable the check for dirty shutdown when Workspace Service starts that causes the last active workspace to be used.
                              •  
                                discardUnsavedChangesfinsemble.servicesConfig.workspace.discardUnsavedChanges
                                (booleanfalse)When set to true, unsaved workspace changes are discarded automatically. This setting is ignored if you set promptUserOnDirtyWorkspace to true.
                              •  
                                emptyWorkspaceNamefinsemble.servicesConfig.workspace.emptyWorkspaceName
                                (stringEmpty Workspace)Allows you to set the name of the empty workspace created when the user has no workspaces and no default workspace is configured, or when a workspace switch fails.
                              •  
                                loadFailureNotificationMessagefinsemble.servicesConfig.workspace.loadFailureNotificationMessage
                                (string)Override the default message that appears to users in a pop-up notification when a workspace fails to load.
                              •  
                                permanentWorkspacesfinsemble.servicesConfig.workspace.permanentWorkspaces
                                (array)Allows you to declare what workspaces a user can't rename or delete.
                                •  
                                  permanentWorkspaces[]finsemble.servicesConfig.workspace.permanentWorkspaces[]
                                  (string)
                              •  
                                persistPathfinsemble.servicesConfig.workspace.persistPath
                                (booleanfalse)A global config for component URL persistence. When true, the application automatically persists its path through restarts and workspace reloads, even when the path changes in the config. Path is used for "native" (aka "assimilation") windows. The component config overwrites the global config.
                              •  
                                persistURLfinsemble.servicesConfig.workspace.persistURL
                                A global config for component URL persistence. When true, components automatically save their last URL instead of using the one in the config. The component config will overwrite the global config.
                              •  
                                promptUserOnDirtyWorkspacefinsemble.servicesConfig.workspace.promptUserOnDirtyWorkspace
                                (booleantrue)When set to false, the user's workspace automatically saves to the last configuration when switching workspaces or closing Finsemble. When set to true, the user is prompted to save the current workspace configuration if there are unsaved changes.
                              •  
                                searchfinsemble.servicesConfig.workspace.search
                                (object)Allows you to control the workspace search built into Finsemble.
                                •  
                                  enabledfinsemble.servicesConfig.workspace.search.enabled
                                  (booleantrue)Set to false to disable workspace search.
                                •  
                                  optionsfinsemble.servicesConfig.workspace.search.options
                                  (object)An object containing fuse.js configuration options.
                                •  
                                  spawnAsfinsemble.servicesConfig.workspace.spawnAs
                                  (string)Valid values are:
                                  "window" - Spawns the service as a child window of the Service Manager.
                                  "process" - Spawns the service in its own browser process (a.k.a. application). This gives the service dedicated CPU to maximize concurrency.
                                  "script" - Spawns the service as a script running in the Service Manager window. This minimizes memory footprint. This setting can only be used with the following services: assimilation, storage, hotkeys, linker, search and workspace.
                                     "window"
                                  "process"
                                  "script"
                                •  
                                  visiblefinsemble.servicesConfig.workspace.visible
                                  (booleanfalse)Set this to true to reveal the hidden service window. Useful for debugging services.
                                •  
                                  workspaceAsPercentfinsemble.servicesConfig.workspace.workspaceAsPercent
                                  (booleanfalse)(experimental) When set to true, window position will be converted to percent when a workspace is saved and used to restore workspaces, allowing them to adapt to different sized monitors.
                            •  
                              shutdownTimeoutfinsemble.shutdownTimeout
                              (number30000)Amount of time (in milliseconds) to give services to shutdown before forcibly quitting the application. Components get 2 seconds less than services.
                              • minimum: 10000
                            •  
                              stackedWindowfinsemble.stackedWindow
                              (object)Configuration for tabbed and tiled windows.
                              •  
                                addReadyTimeoutfinsemble.stackedWindow.addReadyTimeout
                                (number6500)Sets the time, in milliseconds, for a tabbed/tiled windows to become ready.
                            •  
                              systemTrayClickOptionfinsemble.systemTrayClickOption
                              (stringright)Sets the default click option to toggle the system tray menu. The opposite mouse click will bring Finsemble to the front. Default is right mouse click to toggle the menu and left to bring Finsemble to the front.
                                 "right"
                              "left"
                            •  
                              systemTrayComponentfinsemble.systemTrayComponent
                              (string)
                            •  
                              systemTrayIconfinsemble.systemTrayIcon
                              (string)Sets the location of the system tray icon (lower right corner of the terminal).
                            •     toolbarMenus

                            •  
                              toolbarMenusfinsemble.toolbarMenus
                              (object)Optional configuration for custom launcher menus on the Finsemble Toolbar
                              •  
                                toolbarMenus[]finsemble.toolbarMenus[]
                                (object)Toolbar menu entries provide configuration for an individual menu
                                •  
                                  applicationsfinsemble.toolbarMenus[].applications
                                  (array)
                                  •  
                                    applications[]finsemble.toolbarMenus[].applications[]
                                    (string)An array of application names, as defined in the appD configuration, to include in the menu.
                                •  
                                  displayNamefinsemble.toolbarMenus[].displayName
                                  (string)The name of the menu, to be displayed on the toolbar
                                •  
                                  positionfinsemble.toolbarMenus[].position
                                  (number)Used to sort menus into order on the Toolbar (higher position values are displayed further to the right).
                            •  
                              trustedPreloadsfinsemble.trustedPreloads
                              (array)
                              •  
                                trustedPreloads[]finsemble.trustedPreloads[]
                                (string)
                            •  
                              waitForUpdatefinsemble.waitForUpdate
                              (booleanfalse)When set to true, Finsemble waits for updates, if available, to download and install before continuing to start up the application.
                            •  
                              Window Managerfinsemble.Window Manager
                              (object)Global options for the window title bar. See "Window Manager" under app config hostsManifest.Finsemble for options...
                            •  
                              windowTitleBarUrlfinsemble.windowTitleBarUrl
                              (string)Set to the location of the transpiled window title bar code (.js and .html files) based on Finsemble's WindowTitlebar template. That code is injected (js file) or used to create a titlebar window shell (html file) depending on titlebar configurations for each app. Leave this field undefined to use Finsemble's built-in titlebar. When creating a custom titlebar, point this to the directory containing your custom title bar. Your directory should include an 'index.js' and 'index.html' file. This is done automatically in most cases.
                            •     workspaces

                            •  
                              workspacesfinsemble.workspaces
                              (array)An array of workspaces to be presented to the user the first time they start Finsemble. By default, the first workspace listed in the array is the one first presented to an end user the first time they load their smart desktop. See instructions on generating default workspaces.
                              •  
                                workspaces[]finsemble.workspaces[]
                                (object)Template for config specified workspace
                                •  
                                  componentStatesfinsemble.workspaces[].componentStates
                                  (object)Context state for each window, such as from calls to setComponentState()
                                  •  
                                    componentStates[]finsemble.workspaces[].componentStates[]
                                    Stored context for each window in a workspace.
                                    •  
                                      componentStates[][]finsemble.workspaces[].componentStates[][]
                                      (object)A map of contexts associated with this window. The contexts can be of any form.
                                  •  
                                    customfinsemble.workspaces[].custom
                                    (object)Optional field for proprietary data to be associated with this workspace
                                    •  
                                      defaultfinsemble.workspaces[].default
                                      (boolean)If set to true, this workspace is the default that is loaded the first time the app is run
                                    •  
                                      groupsfinsemble.workspaces[].groups
                                      (object)Contains groupings: of snapped windows and also of grouped windows.
                                      •  
                                        groups[]finsemble.workspaces[].groups[]
                                        (object)Can be either a snapped or grouped collection of windows. For a grouped collection, there is always also a snapped collection that is equivalent or a superset of it (as grouped windows are also snapped together). See each field for distinctions.
                                        •  
                                          isAlwaysOnTopfinsemble.workspaces[].groups[].isAlwaysOnTop
                                          (boolean)true if any window in the collection has aot set to true.
                                        •  
                                          isARectanglefinsemble.workspaces[].groups[].isARectangle
                                          (boolean)true if the windows form a perfect rectangle. Used only if docking is restricted to rectangular collections.
                                        •  
                                          isMovablefinsemble.workspaces[].groups[].isMovable
                                          (boolean)true if a grouped collection, false if a snapped collection.
                                        •  
                                          topRightWindowfinsemble.workspaces[].groups[].topRightWindow
                                          (string)The name of the window in the top right corner. This is used to determine whether to display a minimize button.
                                        •  
                                          ungroupedAlwaysOnTopStatefinsemble.workspaces[].groups[].ungroupedAlwaysOnTopState
                                          Specifies whether the aot flag is set for each individual window in the collection
                                          •  
                                            ungroupedAlwaysOnTopState[]finsemble.workspaces[].groups[].ungroupedAlwaysOnTopState[]
                                            (boolean)
                                        •  
                                          windowNamesfinsemble.workspaces[].groups[].windowNames
                                          (array)The names of the windows in this group.
                                          •  
                                            windowNames[]finsemble.workspaces[].groups[].windowNames[]
                                            (string)
                                    •  
                                      namefinsemble.workspaces[].name
                                      (string)(required)Name of workspace. This appears in the workspaces menu.
                                    •  
                                      permanentfinsemble.workspaces[].permanent
                                      (boolean)If set to true, users can't delete or rename this workspace.
                                    •  
                                      windowDatafinsemble.workspaces[].windowData
                                      (array)Launching and positioning data for each window.
                                      •  
                                        windowData[]finsemble.workspaces[].windowData[]
                                        (object)Launch and position data for a window. This is equivalent to the spawn parameters sent to LauncherClient.spawn(). Note that the defaultLeft, defaultTop, defaultHeight and defaultWidth must all be specified otherwise left, top, height and width will be used. Tab collections will show up as a virtual 'StackedWindow'.
                                        •  
                                          affinityfinsemble.workspaces[].windowData[].affinity
                                          (string)The affinity group to which this window belongs.
                                        •  
                                          aliasfinsemble.workspaces[].windowData[].alias
                                          (string)Alias name of native app to spawn, which maps to an entry in the manifest's appAssets array.
                                        •  
                                          allowAutoArrangefinsemble.workspaces[].windowData[].allowAutoArrange
                                          (boolean)True if the window is allowed to be auto-arranged.
                                        •  
                                          alwaysOnTopfinsemble.workspaces[].windowData[].alwaysOnTop
                                          (boolean)True if aot is set.
                                        •  
                                          autoShowfinsemble.workspaces[].windowData[].autoShow
                                          (boolean)True if the window should be shown when launched.
                                        •  
                                          boundsfinsemble.workspaces[].windowData[].bounds
                                          (object)Tab collections only. The bounds of the stack (duplicate of information in windowData).
                                          •  
                                            bottomfinsemble.workspaces[].windowData[].bounds.bottom
                                            (number)
                                          •  
                                            heightfinsemble.workspaces[].windowData[].bounds.height
                                            (number)
                                          •  
                                            leftfinsemble.workspaces[].windowData[].bounds.left
                                            (number)
                                          •  
                                            persistBoundsfinsemble.workspaces[].windowData[].bounds.persistBounds
                                            (boolean)Unused
                                          •  
                                            rightfinsemble.workspaces[].windowData[].bounds.right
                                            (number)
                                          •  
                                            topfinsemble.workspaces[].windowData[].bounds.top
                                            (number)
                                          •  
                                            widthfinsemble.workspaces[].windowData[].bounds.width
                                            (number)
                                        •  
                                          childWindowIdentifiersfinsemble.workspaces[].windowData[].childWindowIdentifiers
                                          (array)Tab collections only. Contains references to all the windows in the stack.
                                          •  
                                            childWindowIdentifiers[]finsemble.workspaces[].windowData[].childWindowIdentifiers[]
                                            (object)An object defining a window inside of a tabbed collection (stack).
                                            •  
                                              alwaysOnTopfinsemble.workspaces[].windowData[].childWindowIdentifiers[].alwaysOnTop
                                              (boolean)
                                            •  
                                              namefinsemble.workspaces[].windowData[].childWindowIdentifiers[].name
                                              (string)The name of the window.
                                            •  
                                              titlefinsemble.workspaces[].windowData[].childWindowIdentifiers[].title
                                              (string)The title to display in the window. This can come from a user edit.
                                            •  
                                              windowNamefinsemble.workspaces[].windowData[].childWindowIdentifiers[].windowName
                                              (string)The name of the window.
                                            •  
                                              windowTypefinsemble.workspaces[].windowData[].childWindowIdentifiers[].windowType
                                              (string)Always WebWindow.
                                        •  
                                          componentTypefinsemble.workspaces[].windowData[].componentType
                                          (string)The AppId of the window's app entry. This will be equal to StackedWindow for tab collections.
                                        •  
                                          defaultHeightfinsemble.workspaces[].windowData[].defaultHeight
                                          (number)Height of window in pixels.
                                        •  
                                          defaultLeftfinsemble.workspaces[].windowData[].defaultLeft
                                          (number)Left position of window in pixels.
                                        •  
                                          defaultTopfinsemble.workspaces[].windowData[].defaultTop
                                          (number)Top position of window in pixels relative to the _physical monitor_ (does not consider space claimed by toolbar).
                                        •  
                                          defaultWidthfinsemble.workspaces[].windowData[].defaultWidth
                                          (number)Width of window in pixels.
                                        •  
                                          isWPFfinsemble.workspaces[].windowData[].isWPF
                                          (boolean)True if a native app and is wpf.
                                        •  
                                          maxHeightfinsemble.workspaces[].windowData[].maxHeight
                                          (number)Maximum height (8000 if none)
                                        •  
                                          maximizablefinsemble.workspaces[].windowData[].maximizable
                                          (boolean)True if the window can be maximized
                                        •  
                                          maxWidthfinsemble.workspaces[].windowData[].maxWidth
                                          (number)Maximum width (8000 if none)
                                        •  
                                          minHeightfinsemble.workspaces[].windowData[].minHeight
                                          (number)Minimum height (zero if none)
                                        •  
                                          minimizablefinsemble.workspaces[].windowData[].minimizable
                                          (boolean)True if the window can be minimized
                                        •  
                                          minWidthfinsemble.workspaces[].windowData[].minWidth
                                          (number)Minimum width (zero if none)
                                        •  
                                          monitorInfofinsemble.workspaces[].windowData[].monitorInfo
                                          (number)The monitor number on which to place the window.
                                        •  
                                          namefinsemble.workspaces[].windowData[].name
                                          (string)The window name
                                        •  
                                          opacityfinsemble.workspaces[].windowData[].opacity
                                          (number)Opacity value (0-1)
                                        •  
                                          pathfinsemble.workspaces[].windowData[].path
                                          (string)Path of native component to spawn. Can be empty string if no path.
                                        •  
                                          resizablefinsemble.workspaces[].windowData[].resizable
                                          (boolean)True if the window can be resized
                                        •  
                                          showTaskbarIconfinsemble.workspaces[].windowData[].showTaskbarIcon
                                          (boolean)True if the windows task bar icon should be displayed. If the window is in a tab collection (stack), only the top window has this set to true.
                                        •  
                                          transparentfinsemble.workspaces[].windowData[].transparent
                                          (boolean)True if the window is transparent
                                        •  
                                          urlfinsemble.workspaces[].windowData[].url
                                          (string)The url of the window. This can change if the user navigates the page. No required if native window or tab collection.
                                        •  
                                          visibleWindowIdentifierfinsemble.workspaces[].windowData[].visibleWindowIdentifier
                                          (object)An object defining a window inside of a tabbed collection (stack).
                                          •  
                                            alwaysOnTopfinsemble.workspaces[].windowData[].visibleWindowIdentifier.alwaysOnTop
                                            (boolean)
                                          •  
                                            namefinsemble.workspaces[].windowData[].visibleWindowIdentifier.name
                                            (string)The name of the window.
                                          •  
                                            titlefinsemble.workspaces[].windowData[].visibleWindowIdentifier.title
                                            (string)The title to display in the window. This can come from a user edit.
                                          •  
                                            windowNamefinsemble.workspaces[].windowData[].visibleWindowIdentifier.windowName
                                            (string)The name of the window.
                                          •  
                                            windowTypefinsemble.workspaces[].windowData[].visibleWindowIdentifier.windowType
                                            (string)Always WebWindow.
                                        •  
                                          windowStatefinsemble.workspaces[].windowData[].windowState
                                          (number)0 - normal, 1 - minimized from normal, 2 - maximized, 3 - minimized from maximized, 4 - transitioning (?). Windows are never saved in maximized state.
                                        •  
                                          windowTypefinsemble.workspaces[].windowData[].windowType
                                          (string)The window type. 'WebWindow', 'NativeWindow', 'NativeFinsembleWindow' or 'StackedWindow' when a tab collection
                                    •  
                                      windowsfinsemble.workspaces[].windows
                                      (array)The names of the windows in this workspace.
                                      •  
                                        windows[]finsemble.workspaces[].windows[]
                                        (string)
                              •   finsemble-electron-adapter

                              •  
                                finsemble-electron-adapterfinsemble-electron-adapter
                                (object)Finsemble's Electron Adapter config, dynamically added to manifest.
                                •  
                                  allowedBrowserProtocolsfinsemble-electron-adapter.allowedBrowserProtocols
                                  (array)(experimental) When calling System.openUrlWithBrowser, only URLs with http: and https: protocols are permitted for system security. Others that are needed can be added here. A file: protocol is a security risk and you should not add it.
                                  [
                                  "http:",
                                  "https:",
                                  "fsbl:",
                                  "mailto:"
                                  ]
                                  •  
                                    allowedBrowserProtocols[]finsemble-electron-adapter.allowedBrowserProtocols[]
                                    (string)
                                •  
                                  allowedManifestDomainsfinsemble-electron-adapter.allowedManifestDomains
                                  (array)Allow the ability to specify manifest urls at run time by setting the allowed domains where the hostname matches one of the entries. Every subdomain needs an entry. Wildcards are not allowed.
                                  {
                                  "allowedManifestDomains": [
                                  "finsemble.com",
                                  "cosaic.io"
                                  ]
                                  }
                                  •  
                                    allowedManifestDomains[]finsemble-electron-adapter.allowedManifestDomains[]
                                    (string)
                                •  
                                  downloadUpdatesViaElectronfinsemble-electron-adapter.downloadUpdatesViaElectron
                                  (booleantrue)Downloads the Electron/Squirrel autoUpdate packages to the local machine before checking for and performing updates. The files are downloaded using the same proxy and headers Electron uses.
                                •  
                                  env-allowlistfinsemble-electron-adapter.env-allowlist
                                  (array)Adds ability to specify Finsemble manifest macros based on environment variables.
                                  {
                                  "env-allowlist": [
                                  "TESTVAR",
                                  "ANOTHERVAR"
                                  ]
                                  }
                                  •  
                                    env-allowlist[]finsemble-electron-adapter.env-allowlist[]
                                    (string)
                                •  
                                  forceCloseGonefinsemble-electron-adapter.forceCloseGone
                                  (booleanfalse)If true, force closes windows when the "render-process-gone" event triggers.
                                •  
                                  forceCloseUnresponsivefinsemble-electron-adapter.forceCloseUnresponsive
                                  (booleanfalse)If true, force closes windows when the "unresponsive" event triggers.
                                •  
                                  ignoreCertificateErrorHostsfinsemble-electron-adapter.ignoreCertificateErrorHosts
                                  (array)Certificate errors (SSL/TLS) are ignored for these hosts or URLs. Useful when using self-signed TLS certificates.
                                  {
                                  "ignoreCertificateErrorHosts": [
                                  "https://github.com:80/ChartIQ",
                                  "self-signed.badssl.com"
                                  ]
                                  }
                                  •  
                                    ignoreCertificateErrorHosts[]finsemble-electron-adapter.ignoreCertificateErrorHosts[]
                                    (string)
                                •  
                                  loggerfinsemble-electron-adapter.logger
                                  (object)Configuration for logging of low-level events, such as window creation or network requests, from the Finsemble Electron Adapter. Log messages can be written to a rotated file at %AppData%/Roaming/Electron/logs, or output to the console. They can also be transmitted to the Finsemble Central Logger allowing them to be reviewed alongside logging from Finsemble and applications running in Finsemble.
                                  •  
                                    logLevelfinsemble-electron-adapter.logger.logLevel
                                    (stringdebug)The lowest level at which the logger pushes messages to a file. Available log levels from highest to lowest are: 'error', 'warn', 'log','info', 'debug', and 'verbose'. Note: This level is set after the manifest is read by the Electron Adapter. As a result, you might see some debug messages before the log level is set.
                                       "error"
                                    "warn"
                                    "log"
                                    "info"
                                    "debug"
                                    "verbose"
                                  •  
                                    logToDiskLevelsfinsemble-electron-adapter.logger.logToDiskLevels
                                  •  
                                    resourceUsageLogIntervalfinsemble-electron-adapter.logger.resourceUsageLogInterval
                                    (number60000)Interval. in milliseconds, to log MainSystem.GetProcessList(). Useful for performance troubleshooting. Set to any negative number to disable logging.
                                  •  
                                    transmitToCentralLoggerfinsemble-electron-adapter.logger.transmitToCentralLogger
                                    (booleantrue)Set to 'false' to disable sending Electron Adapters logs in the Central Logger. The log levels transmitted are managed in the central logger UI and are independent of the log levels configured for logging to file.
                                  •  
                                    transportsfinsemble-electron-adapter.logger.transports
                                    (object)Transport level configuration.
                                    •  
                                      consolefinsemble-electron-adapter.logger.transports.console
                                      (object)The console transport controls where logs are output.
                                      •  
                                        enablefinsemble-electron-adapter.logger.transports.console.enable
                                        (booleanfalse)When set to true, logs are output to a terminal. When set to false, logs are output to file. See logger above.
                                •  
                                  logHTTPErrorsfinsemble-electron-adapter.logHTTPErrors
                                  (booleantrue)Set to false to prevent FEA logging of load failures in the 400-599 range.
                                •  
                                  manifestsfinsemble-electron-adapter.manifests
                                  (object)Allow the ability to specify manifest environments at run time by adding entries for each environment.
                                  {
                                  "manifests": {
                                  "dev": "http://localhost:3375/configs/application/manifest-local-dev.json",
                                  "qa": "http://localhost:3375/configs/application/manifest-local-qa.json"
                                  }
                                  }
                                •  
                                  reloadWindowHotkeyfinsemble-electron-adapter.reloadWindowHotkey
                                  (boolean,string)(experimental) Allow a user to disable or override the hotkey for window reload. Set to false to disable or to an [Electron Accelerator string](https://www.electronjs.org/docs/latest/api/accelerator) to override.
                                •  
                                  reloadWindowIgnoringCacheHotkeyfinsemble-electron-adapter.reloadWindowIgnoringCacheHotkey
                                  (boolean,string)(experimental) Allow a user to disable or override the hotkey for forcing window reload. Set to false to disable or to an [Electron Accelerator string](https://www.electronjs.org/docs/latest/api/accelerator) to override.
                                •  
                                  toggleInspectorHotkeyfinsemble-electron-adapter.toggleInspectorHotkey
                                  (boolean,string)(experimental) Allow a user to disable or override the hotkey to toggle the developer tools window. Set to false to disable or to an [Electron Accelerator string](https://www.electronjs.org/docs/latest/api/accelerator) to override.
                              •  
                                iocdmanifest.iocd
                                (object)Properties that control how Finsemble behaves when running on the io.Connect Desktop platform
                                •  
                                  datamanifest.iocd.data
                                  (object)Determines the iocd migration strategy for various categories of Finsemble end user data
                                  •  
                                    preferencesmanifest.iocd.data.preferences
                                    (object)Migration strategy for a Finsemble end user data category
                                    •  
                                      loadmanifest.iocd.data.preferences.load
                                      (stringiocd)Specifies where to load data at boot. storageAdapter loads from the storage adapter. iocd loads from the relevant iocd store. oneTimeConversion loads from storageAdapter only once, thereafter loads from iocd store.
                                         "storageAdapter"
                                      "oneTimeConversion"
                                      "iocd"
                                    •  
                                      saveToStorageAdaptermanifest.iocd.data.preferences.saveToStorageAdapter
                                      (booleanfalse)Specifies whether to save data back to the storageAdapter. (Data is always saved to the relevant iocd store.)
                                  •  
                                    workspacesmanifest.iocd.data.workspaces
                                    (object)Migration strategy for a Finsemble end user data category
                                    •  
                                      loadmanifest.iocd.data.workspaces.load
                                      (stringiocd)Specifies where to load data at boot. storageAdapter loads from the storage adapter. iocd loads from the relevant iocd store. oneTimeConversion loads from storageAdapter only once, thereafter loads from iocd store.
                                         "storageAdapter"
                                      "oneTimeConversion"
                                      "iocd"
                                    •  
                                      saveToStorageAdaptermanifest.iocd.data.workspaces.saveToStorageAdapter
                                      (booleanfalse)Specifies whether to save data back to the storageAdapter. (Data is always saved to the relevant iocd store.)
                                •  
                                  enableLegacyLoggerRecipemanifest.iocd.enableLegacyLoggerRecipe
                                  (boolean)Set to true to enable the logger recipe that listens on 'logger.service.logMessages'
                                •  
                                  iocdDialogsmanifest.iocd.iocdDialogs
                                  (boolean)When true, io.Connect Desktop's default dialogs will be used instead of Finsemble's
                                •  
                                  timeoutmanifest.iocd.timeout
                                  (number)Set to the number of milliseconds before the fsbl-service pops up with a timeout error. Default is 40000.
                              •  
                                removePathInSpawnExternalAppsmanifest.removePathInSpawnExternalApps
                                (boolean)Set to false to allow spawning by path
                              •  
                                splashScreenImagemanifest.splashScreenImage
                                (stringhttp://localhost:3375/assets/img/FinsembleSplash.svg)URL of the splash screen when starting Finsemble. The URL can point to either an HTML page or to an SVG file. Both HTML and SVG splash screens support transparency. Use an HTML splash screen if you want to use a .PNG image with transparent background or want more flexibility in styling or animating your splash screen. This image will remain on the screen until the user phase, unless an auth component is spawned or unless you call FSBL.System.hideSplashScreen() manually.
                              •  
                                splashScreenOptionsmanifest.splashScreenOptions
                                (object)Splash screen options properties options that can be used to customize its UI. It can take any BrowserWindowConstructorOptions properties.
                              •  
                                startup_appmanifest.startup_app
                                (object)(required)Manifest property for the initial startup app, which reference Finsemble's System Manager.
                                {
                                "startup_app": {
                                "name": "My App",
                                "uuid": "MyAppAndOrEnvironment",
                                "requireHandshake": true,
                                "applicationIcon": "../../assets/img/Finsemble_Taskbar_Icon.png"
                                }
                                }
                                •  
                                  applicationIconmanifest.startup_app.applicationIcon
                                  (string../../assets/img/Finsemble_Taskbar_Icon.png)The default taskbar icon.
                                •  
                                  namemanifest.startup_app.name
                                  (string)Defaults to the name of the application as specified in project.json. This is used for certain dialogs and in the Central Logger. The name must consist of alphanumeric characters and spaces only.
                                •  
                                  requireHandshakemanifest.startup_app.requireHandshake
                                  (booleanfalse)Value indicating whether a notification should be shown if a handshake from the System Manager is not received within 30 seconds.
                                •  
                                  urlmanifest.startup_app.url
                                  (string)
                                •  
                                  uuidmanifest.startup_app.uuid
                                  (stringFinsemble)Uniquely differentiates environmental instances of the same application (see project.json) to avoid storage conflicts. The uuid must consist of alphanumeric characters only. Do not use spaces. The uuid is available for use in storage keys, such as those generated by the IndexedDBStorageAdapter.

                            Further reading

                            For a discussion about dynamic configuration, as opposed to the static configuration described here, check out the Dynamic Configuration tutorial.