Initializing help system before first use

Insight

The Insight JavaScript is the main entry point to all Insight functionality from JavaScript

Method summary

name description
addSetComparator Define a comparator function to be used for sorting a set.
getDistribUrl The URL to the Insight distribution folder.
getSetComparator Get the set comparator function for a given set.
getVersion Get the current Insight version.
getView Get the current Insight View.
isDebugEnabled Indicates whether log messages and HTML debugging is enabled.
isS3Enabled Indicates if S3 has been configured for use.
openScenarioManager Opens the scenario manager
openView Opens the given custom view.
ready Executes defined code once the JS API is loaded and ready.
removeSetComparator Remove a previously added set comparator.
resolveRestEndpoint Get the URL, relative to the server, for a given REST resource or operation.
setDebugEnabled Controls whether log messages are enabled.
setDefaultFormatters Sets default schema defined entity formatters.

Methods

addSetComparator ( setName, comparator, direction )

Define a comparator function to be used for sorting a set. Any previously defined comparator function for the set will be replaced with this one.

Parameters:
Name Type Argument Default Description
setName string The name of the set
comparator Insight~ComparatorFunction | Array.<*> | insight.enums.Comparators The comparator function use to sort the set. Alternatively you can provide an array where the index of a value provides its ordinal number. Also you can provide the name of a built-in comparator from insight.enums.Comparators.
direction insight.enums.SortDirection optional  insight.enums.SortDirection.ASC If the direction is set to insight.enums.SortDirection.DESC then the sort function will be called with the arguments reversed, sorting the values in the opposite direction
Example
insight.addSetComparator('INTEGER_SET', function(a, b) {
    // Simple number sort
    return a - b;
}, insight.enums.SortDirection.DESC);

// Sort days of the week in short form
insight.addSetComparator('STRING_SET', ['Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat', 'Sun']);

// Use built-in STRING comparator. This will sort alpha-numeric strings
insight.addSetComparator('STRING_SET', insight.enums.Comparators.STRING);
Back to Top
getDistribUrl ( ) → {string}

The URL to the Insight distribution folder.

Returns:
Type Description
string The URL to the Insight distribution folder, including the trailing file separator
Example
insight.getDistribUrl();
Back to Top
getSetComparator ( setName ) → {Object.<{comparator: (Insight~ComparatorFunction|Array.<*>), direction: insight.enums.SortDirection}>|undefined}

Get the set comparator function for a given set.

Parameters:
Name Type Description
setName string The name of the set
Returns:
Type Description
Object.<{comparator: (Insight~ComparatorFunction|Array.<*>), direction: insight.enums.SortDirection}> | undefined The comparator function/array and sort direction, if any assigned to the set.
Back to Top
getVersion ( ) → {Version}

Returns the current Insight version as an object or using the built-in toString.

Returns:
Type Description
Version
Example
var version = insight.getVersion();
Back to Top
getView ( ) → {View}

The current Insight View, providing access to the scenarios, app as well as save and reload behaviour.

Returns:
Type Description
View the current View
Example
var view = insight.getView();
Back to Top
isDebugEnabled ( ) → {boolean}

Indicates whether log messages and HTML debugging is enabled.

Returns:
Type Description
boolean True if debug is enabled, otherwise false
Example
isDebugEnabled(); // true or false
Back to Top
isS3Enabled ( ) → {boolean}

Indicates if S3 has been configured for use.

Returns:
Type Description
boolean True if S3 has been configured, otherwise false
Back to Top
openScenarioManager ( ) → {Promise}

Opens the scenario manager

Returns:
Type Description
Promise Resolves when the scenario manager is open. Rejected if it can't be opened.
Example
insight.openScenarioManager();
Back to Top
openView ( viewTitleOrId )

Opens a custom view, replacing the current view. The view specifier follows the rules below:

  • The title of the view, as specified using the title attribute in the companion file. If there are several views with the same title, the first will be chosen.
  • The id of the view, as specified using the optional id attribute in the companion file.
  • The title of the view group and title of the view, separated by two colons, e.g. 'My Group::My View'.

Parameters:
Name Type Description
viewTitleOrId string the title or id of the view, as defined in the companion file
Example
insight.openView('Info Group::Introduction Page');
Back to Top
ready ( callback )

Executes defined code once the JS API is loaded and ready. You should wrap all your view code within a call to this method. See the example below.

This function will execute the callback once the Model Schema and App entities have been cached. If not completed in 30 seconds then the script will terminate.

Parameters:
Name Type Description
callback Insight.readyCallback A function to execute once the Insight API has initialized.
Example
insight.ready(function () {
     // called when the JS API is ready.
     // Add your code here.
});
Back to Top
removeSetComparator ( setName )

Remove a previously added set comparator.

Parameters:
Name Type Description
setName string The name of the set
Back to Top
resolveRestEndpoint ( restResource ) → {string}

Get the path, relative to the server, for a given REST resource or operation.

Pass in the REST resource path starting with '/api'. If Insight is configured with a context path, it will be prepended and form an absolute path in the form '/a-context-path/api/apps'.

Parameters:
Name Type Description
restResource string The REST resource URL. Must contain a leading slash, for example "/api/apps"
Returns:
Type Description
string The resolved REST endpoint URL that can be used to pass into a request
Example
// List apps
const appsUrl = insight.resolveRestEndpoint('/api/apps');

fetch(appsUrl, {
    method: 'GET',
    headers: {
        Accept: 'application/vnd.com.fico.xpress.insight.internal.v2+json'
    }
})
    .then(r => r.json())
    .then(json => console.log(json.items));
Back to Top
setDebugEnabled ( enabled )

Controls whether log messages are enabled.

Parameters:
Name Type Argument Default Description
enabled boolean optional  true set to true to enable debug, false to disable
Example
insight.setDebugEnabled(true); // enable debug logging.
Back to Top
setDefaultFormatters ( )

Sets default schema defined entity formatters.

Back to Top

Type Definitions

readyCallback ( )

Invoked when the JS API is ready to be used. You should wrap your view code in a callback and pass it to insight.ready().

Back to Top
ComparatorFunction ( a, b ) → {number}

A comparator function applied to a set.

Parameters:
Name Type Description
a Value to compare
b Value to compare
Returns:
Type Description
number Return less than 0 if 'a' should come before 'b' in ascending order, 0 if 'a' and 'b' are equal and greater than 0 if 'b' should come before 'a' in ascending order.
Example
function setComparator(a, b) {
    // Simple number sort
    return a - b;
}
Back to Top

© 2001-2025 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.