Home

Still using our legacy V1 API? You should try out the new promise-based V2 API. Please see this guide for the full list of differences and steps to transition from the legacy V1 API to the new V2 API.

Welcome to the JavaScript API. This API allows you to create an HTML/JavaScript application that has access to the native windowing environment, can communicate with other applications and has access to sandboxed system-level features.

The fin namespace

When running within the OpenFin Runtime your web applications have access to the fin namespace and all the modules within the API without the need to include additional source files. You can treat the fin namespace as you would the window, navigator or document objects.

API Ready

When using the OpenFin API, it is important to ensure that it has been fully loaded before making any API calls. To verify that the API is in fact ready, be sure to make any API calls either from within the fin.desktop.main() method or explicitly after it has returned. This avoids the situation of trying to access methods that are not yet fully injected.

API Methods

The full API Method Index can be found below.

  • To find a specific method by name, simply search this page.
  • To browse the API, click one of the classes or namespaces in the sidebar at left.

Configuration

New applications and windows are instantiated with the following options objects:

For a single-page reference to all application settings and configuration options, see also our Application Config page.

Example

<!DOCTYPE html>
    <head>
        <style>
            #status-indicator {
              display: inline-block;
              height: 10px;
              width: 10px;
              background-color: red;
              border-radius: 20px;
            }
            #status-indicator.online {
              background-color: green;
            }
        </style>
        <script type="text/javascript">
        document.addEventListener('DOMContentLoaded', () => {
            //OpenFin is ready
            fin.desktop.main(() => {
                //Update the status Indicator.
                document.querySelector('#status-indicator').classList.toggle("online");

                //get the current version.
                fin.desktop.System.getVersion(version => {
                    document.querySelector('#of-version').innerText = version;
                });
            });
        });
        </script>
    </head>
    <body>
        <p>
            OpenFin adapter <span id="of-version"></span>
            Ready: <span id="status-indicator"></span>
        </p>
    </body>
</html>

Index of API Methods