Skip to end of metadata
Go to start of metadata

Sisense V8.0.1 

  • The data returned by the GET /dashboards/{id} endpoint has been changed. Now when called by non-Admin users, the dashboard owner groups are no longer returned. When called by an Admin user, it behaves as previously.

Updated REST API Sisense V1.0 Endpoints

GET

/dashboards/{id}

The owner key now returns only the Dashboard Owner ID and no other information about dashboard owners when called by non-Admin users.

Sisense V7.4.3 

New REST API Sisense V1.0 Endpoints

GET

/settings/login_lockout

Returns your login lockout threshold settings.

PATCH

/settings/login_lockoutUpdates your login lockout threshold settings.

Sisense V7.4 

Updated REST API Sisense V1.0 Endpoint

POST

/usageanalytics/restore/cube

The following optional properties were added to the /usageanalytics/restore/cube endpoint: 

shouldReplaceExistingCube: A boolean value that when true determines that the Usage Analytics ElastiCube should be restored if it already exists. true by default. 

shouldBuildCube: A boolean value that when true determines that after the Usage Analytics ElastiCube is restored, the ElastiCube is rebuilt. false by default. 

Updated REST API Sisense V0.9 Endpoint

POST

/elasticubes/datasecurity

A new property was added, exclusionary, to the /elasticubes/datasecurity endpoint. This boolean determines if a data security rule is an exclusionary or an inclusionary rule.  By default, this value is false, which means all rules are inclusionary.

When a rule is inclusionary, all defined members can see the relevant rows. When a rule is exclusionary ("exclusionary": true), the relevant rows are hidden from all defined members.

Sisense V7.3 

New REST API Sisense V1.0 Endpoints

GET


/settings/system

A new object was added, "usage", which includes two new keys:

enabled: When this boolean is set to true, Sisense records usage analytics data.

restoredashboards: When this boolean is set to true, Sisense restores the usage analytics dashboards to their default state and republishes them.

POST

/settings/system

POST

admin/usageanalytics/restore/cubeRestores the Usage Analytics ElastiCube to its original state.

POST

admin/usageanalytics/restore/dashboardsRestores the Usage Analytics dashboards to its original state.

POST

admin/usageanalytics/{id}/usageMetadataReturns metadata for a dashboard. You can specify the dashboardType as a string (owner or user).

Updated REST API Sisense V1.0 Endpoint

POST

/dashboards/{id}/metadata

Returns dashboard metadata. You can specify which data should be returned by settings the following booleans as true:

  • owner
  • datasource
  • lastOpened
  • lastModified
  • folder
  • lastPublish
  • viewedBy
  • widgetCount

Updated REST API Sisense V0.9 Endpoint

POST

/branding

The key "PoweredBySisense" was added to the branding endpoint. This endpoint hides the Powered by Sisense string in the User Profile for rebranded servers.

By default, this boolean value is set to true. You can set this to false to remove the string.

Export Usage Analytics Data

You can export your Usage Analytics data with the following API call: 

http://localhost:8081/api/datasources/LocalHost/Usage%20Analytics%20Model/sql?query=select%20*%20from%20usage&format=csv

This assumes you are retrieving the Usage Analytics file from the localhost. If not, you need to update your API call with the Sisense server name or IP address. Click here for more information. 

Sisense V7.2 

Add-ons and Plugins Directory

The location of the Plugins directory has been changed from C:\Program Files\Sisense\PrismWeb\plugins to C:\Program Files\Sisense\app\plugins. Plugins located in the old folder are automatically migrated to the new location when you install Sisense V7.2.  For newer dashboard plugins, the files should be stored in the new location.

JAQL Runner

The location of the JAQL Runner has been moved to http://localhost:8081/app/jaqleditor. If you access the JAQL Runner, update your code to point to the new endpoint.

SQL Runner

The location of the SQL Runner has been moved to http://localhost:8081/app/sqleditor#/datasource=:ElastiCubeName . If you access the SQL Runner, update your code to point to the new endpoint.

Updated REST API Sisense V1.0 Endpoints

GET

/settings/system

The "fiscal" object was added. This object contains two keys for setting your fiscal year, month and format.

month: Sets the first month of your fiscal year.

format: Determines how fiscal years are displayed in Sisense.

For more information, see Fiscal Years.

POST

/settings/system

Updated REST Error Responses

Previously, the following endpoints returned error responses in XML. From Sisense V7.2, these endpoints return error responses in JSON.

  • /elasticubes/servers/next

  • /elasticubes/servers/next/{address}

  • /elasticubes/servers/next/{address}/build

  • /elasticubes/servers/next/{address}/explain_build/

  • /elasticubes/attachDataset

  • /elasticubes/detachDataset

  • /elasticubes/{address}/{cubeId}/delete

  • /elasticubes/next/getContextFromExpression

  • /datasources/

Removed REST API Sisense V1.0 Endpoints

POST

/api/v1//elasticubes/live/{oid}

PATCH

/api/v1//elasticubes/live/{oid}

DELETED

/api/v1//elasticubes/live/{oid}


Sisense V7.1.2 

Changes to Customizing Viewer User Roles

You can now customize the Viewer user role to allow Viewers to delete widgets on their dashboards. By default, this privilege is not enabled. (Documentation)

Sisense V7.1.1 

Updated REST API Sisense V1.0 Endpoints 

POST

/roles/{idOrName}/manifest/{path}

The copy_to_dashboard key included in this endpoint under the Widget section now allows Viewers to drag and drop widgets to various dashboards in their dashboard list when the value is set to True.

For more information, see Customizing User Roles.

Sisense V7.1 

SSO via JWT

If you have implemented SSO via JWT, you can add multiple domains to the redirect URL by adding each domain to a configuration file.

See SSO via JWT for more information.  

Widget Background

Following Sisense V7.0, the background color of some widgets was not customized as expected. 

To change the background color of widgets, a new property, 'fill', was added the commonCSS variable that allows you to customize the background color of your widget. 

var commonCSS = { 'background-color': selectedColor, 'color': 'white',  'fill': selectedColor };

Updated REST API Sisense V1.0 Endpoints  

GET
/settings/system

The key, isAdminAccessAllDashboards, was added to the settings/system endpoint. This boolean allows you to turn off the Dashboard Administration feature.

For more information, see Managing Your Users Dashboards.

POST

/settings/system

Updated REST API Sisense V0.9 Endpoints

GET

/roles/{idOrName}/manifest/{path}

The Data Designer role can be customized to allow them to add new ElastiCubes and schedule builds.

See Customizing User Roles for more information.

POST

/roles/{idOrName}/manifest/{path}

Deprecated REST API Sisense V0.9 Endpoints

GET

/geo/geojson/{type}

The Geo endpoints from V0.9 have been deprecated and relocated to V1.0. The endpoints now use the MapBox Geo API.

POST

 /geo/locations

Sisense V7.0.1 

New REST API SSO Parameters for SAML 2.0

The following parameters have been added to the SSO body object in the GET and POST /settings/sso endpoints to support SSO via SAML 2.0:

syncGroupsFromSamlToken.

Boolean

This new attribute controls whether to update the user’s groups from the SAML SSO token on subsequent logins, and not created from scratch.

Sisense V7.0 

HighCharts Upgrade

Sisense has upgraded to HighCharts V6.0, which supports the dashboard chart visualizations. This upgrade has no impact on Sisense’s JavaScript APIs, but does allow developers to leverage the Highstock V6.0 library when customizing visualizations.

New REST API Sisense V1.0 Endpoints  

Account

GET

/account/get_license_info

Returns your Sisense licensing information.


ElastiCubes

GET

/elasticubes/servers/{server}/settings/rserver/test

Verify connectivity between your ElastiCube server and an R server.

GET
/elasticubes/servers/{server}/settingsReturns your ElastiCube server’s settings.

POST

/elasticubes/servers/{server}/settingsUpdates your ElastiCube server’s settings.

PUT

/elasticubes/server/{server}/permissionsUpdates your ElastiCube server’s permissions.

Fields Suggestions

GET

/suggestions/statusReturns the status of your suggestions.

POST

/suggestions

Returns suggestions for an entity. This endpoint allows you to leverage Sisense suggestions in your own application.

POST

/suggestions/refreshRefreshes your suggestion's ranking.

Updated REST API Sisense V0.9 Endpoints

GET
/branding

The "homePageConfig" object was added, which defines the URLs for buttons located in the banner of the Data page in the Sisense Web Application. You can redefine these URLs to point to your site.

See Rebranding Sisense for more information.

POST

/branding

Sisense V6.7.1

REST API

A new property, "secureCookie", was added to the POST /settings/security endpoint in Sisense REST V0.9.

This boolean adds a "secureFlag" to cookies of users who connect to the Sisense Web Application. This flag instructs the browser that the cookie should only be returned to the Sisense Web Application over encrypted connections (HTTPS).

JavaScript API

The setOptions method of the JavaScript API has been improved to support more styling options for Indicator widgets.

For more information, see the Indicator Object in the JavaScript API & Plugins.

Sisense V6.7

New Widget Methods for SisenseJS

getDrillItems()

isDrillSupported()
loadDrillItems()
loadDrillSuggestions()
performDrill()
resetDrill()
For more information, see the SisenseJS documentation. 

New REST API Endpoints for Sisense V1.0

Admin


GET

/app_database/encrypt_database_password

Returns an encrypted password from plaintext for your Sisense MongoDB users.

POST

/app_database/change_database_user_passwordChange a MongoDB user's password.

Engine

POST

/engine/excelExportExport Excel files.


Narration

GET

/narration/token

Returns a Sisense Narratives Token.

POST
/narration/widgetDefine narrated text.


Plugins


GET

/plugins

Returns a list of your plugins.

GET
/plugins/get_infoReturns the plugin's build information.

PATCH

/pluginsUpdate your plugin's metadata.


Sisense V6.6.1

JavaScript API

The JavaScript API infrastructure was upgraded to support debugging plugins.

For more information, see JavaScript API & Plugins.

Single Sign On

An SSO user can now log in to multiple devices concurrently, but when logging out of Sisense, the user will be logged out across all devices

Sisense V6.6 

New Endpoints for the Sisense REST API V1.0

Authentication

Define specific Sisense servers as trusted servers through the authentication endpoints. This allows Designers and Administrators to copy dashboards directly to your server from the Sisense Web Application. 

Collections

Save custom objects within the Sisense MongoDB that you can access and leverage from Sisense plugins you develop.

Connections

Create and manage new live connections to MySql and SQL Server data sources through the connections endpoints.

Dashboards

Export and import new multiple dashboards through a single .dash file with the new dashboards endpoints.

Datasets

Create a manage new datasets through the datasets endpoints. 

Datasources

Return a list of dimensions for a live data source through the datasources endpoints.

ElastiCubes

Create and manage custom tables and fields through new ElastiCube endpoints. 

Folders

Delete folders and their dashboards through the folders endpoint. 

Live-Connectors

Manage your live data sources through the live-connectors endpoints. 

Logs

Return a log that describes your dashboard and widget render time through the logs endpoint.

Oauth

Manage tokens for Oauth

Translations

Return a list of your supported Sisense languages and their language files through the translations endpoints. 

New PSM Commands

In addition to new REST endpoints, much of the same functionality described above has been implemented in the PSM command shell. The following is a full list of the new commands added in Sisense V6.6:

psm ecube create
psm ecube edit fields addCustomField
psm ecube edit fields getListOfCustomFields
psm ecube edit fields getListOfFields
psm ecube edit fields getSqlOfField
psm ecube edit fields removeField
psm ecube edit fields updateSqlStatementOfField
psm ecube edit tables addCustomTable
psm ecube edit tables addTable
psm ecube edit tables deleteTable
psm ecube edit tables getConnectionStringOfTable
psm ecube edit tables getListOfCustomTables
psm ecube edit tables getListOfTables
psm ecube edit tables getProviderOfTable
psm ecube edit tables getSqlOfTable
psm ecube edit tables updateSqlStatementOfCustomTable
psm ecube edit relations createRelation
psm ecube edit relations deleteRelation
psm ecube edit relations getRelationsOfTable

For descriptions of each command and the parameters they accept, click here

New JavaScript Events

Sisense has added two new global events you can leverage through the JavaScript API:

1. 'apploaded': This event is triggered when the whole Sisense Web Application is loaded.

2. 'homeloaded': This event is triggered when the home page in the Sisense Web Application is loaded.

For more information, click here.


Sisense V6.5.2

The Sisense Custom REST API now supports:

  • Nested objects in Post requests
  • Several new pagination options
  • CSV, XML, and JSON responses
  • For more information click here.

New Settings Endpoints for Sisense V0.9

Sisense has removed the REST API token from the Admin page supported by the REST API V0.9 authentication methodology.

While this methodology is no longer recommended, you can continue to retrieve and generate V0.9 API tokens through the following endpoints:


GET

/settings/api

Returns your API token

GET

/settings/api/generate

Generates a new API token

DELETE/settings/api
Delete API token


Sisense V6.5

Announcing SisenseJS Breaking Changes

SisenseJS supports support Angular 2.x starting from Sisense V6.4. Sisense V6.5 adds support for Angular 1.x

To ensure that SisenseJS continues to work after installing Sisense V6.5, your Sisense HTML content must be encapsulated within a div element with the ID "sisenseApp".

This is required for all Sisense.js scripts whether or not your website uses the Angular framework.

In addition, if you have implemented the Angular 2.x framework, your site must load the sisenseApp element and other container elements before invoking the sisense.connect() function.

For more information, click here.

The following methods have been added to the Sisense JS API:

  • Widget.redraw(): Redraws the widget without querying (unlike .refresh() that does both). This method is used to change the size of the widgets container.

  • Widget.destroy():  Removes the widget from the DOM.

  • Dashboard.destroy():  Removes all dashboard's widgets and the Filter pane from the DOM.

Sisense REST API

New Alert Section

Sisense has exposed several new APIs for managing your Sisense Pulse alerts through the new /alerts endpoint. 


GET

/alerts

Get alerts

GET

/alerts/{id}

Get a specific alert

GET

/alerts/count

Get the amount of alerts for a user

POST

/alerts

Add a new alert

PATCH

/alerts/{id}

Update an alert

PATCH

/alerts/{id}/setReceiveNotification

Update alert's disabled users

New Analytics Section

You can analyze how Sisense is used in your organization by retrieving Sisense collections through the /analytics endpoint added to version 1.0 of the Sisense REST API. Collections are Sisense entities such as ElastiCubes, widgets,users, groups, or dashboards.

For example, you can see what KPIs are being analyzed, which groups are using certain dashboards, and if any ElastiCubes are no longer being used.  

GET

/analytics/token

Returns a token used to authenticate calls to /analytics API endpoints

GET

/analytics/token/revoke

Revoke a token used to authenticate calls to /analytics API endpoints

GET
/analytics/collection/{collection}Get a collection of analytic data for Sisense objects

New LDAP Domain Sections

As part of Sisense's support for multiple Active Directory domains, Sisense has exposed several endpoints for adding and managing domains.

GET/ldap_domains

Get LDAP domains

GET/ldap_domains/{id}
Get a specific LDAP domain
POST/ldap_domains
Add a new LDAP Domain
POST/ldap_domains/test
Test LDAP Domain
POST/ldap_domains/{id}/sync
Sync LDAP Domain 
PATCH/ldap_domains/{id}
Update a LDAP domain 
DELETE/ldap_domains/bulk
Delete LDAP domains


New REST API SSO Parameters for SAML 2.0

The following parameters have been added to the GET and POST /settings/sso endpoints to support SSO via SAML 2.0:


loginUrlSaml

String

The login URL provided by the IdP that Sisense redirects your users to when authenticating through your IdP.

logoutUrlSaml

String

The URL where users are redirected to after logging out of Sisense. Typically, this URL is used to redirect users to a central SAML logout page where the user is signed out of all your SAML-connected applications.

idPCert

String

Certificate provided by your IdP that enables Sisense to decrypt SAML responses from the IdP.

lowSecurityJwtSso

Boolean

Determines the level of security enforced when implementing SSO JWT security.By default, this value is False, which means the JTI parameter is required.

The JTI parameter is a unique string added to the token that is used to prevent replay attacks, by making sure the token is used only once.


Sisense V6.4.1

Sisense REST API

The following v0.9 REST API calls have been deprecated:

/users/activate/{user}

/users/recoverpassword/{user}

The deprecated calls' functionality is supported in the following calls in v1.0 of the REST API: 

/account/activate{token}

/account/reset_password/{token}

Custom REST API

The following functionality was added to the Custom REST API:

  • Accumulative Builds are now supported for data imported through custom connectors
  • Users can provide their Oauth2 credentials in a window displayed in the ElastiCube Manager without hard coding them in the Oauth2config.json file. 

Sisense V6.4

Native REST Connector

Sisense V6.4 introduces our new Native REST Connector that lets you create connectors for open RESTful data sources. Through your custom connectors, you can import data directly into the ElastiCube Manager beyond your default connectors. 

Click here for the latest documentation. 

SisenseJS 

Sisense V6.4 adds the SisenseJS JavaScript library that enables you to embed widgets and dashboards into your site or applications without the use of iFrames. 

For more information, click here

Sisense V6.2.5


Prior to 6.2.5, several JavaScript libraries were consumed by the Sisense web environment and attached to the browser window object, which meant that a 3rd party or Sisense plugins run-time and script manager (extension) could refer to the library by pointing to window.library.

In 6.2.5, these libraries have been encapsulated in a “private” scope, which means they will only be available in the plugins run-time and script manager (extension).

The following libraries are no longer accessible via the global window object, but rather directly through their object:

  • AngularJS (Core application framework)
  • Underscore.JS (Utility library)
  • Moment.js (Utility library for date manipulation and parsing)
  • jQuery (JavaScript DOM manipulation library)


To use these libraries:

  • Before 6.2.5: window.libraryName.helloWorld()
  • 6.2.5 and up: libraryName.helloWorld()

jQuery can now be accessed directly through the $ object, and no longer through window.jQuery. For backwards compatibility you can add window.jQuery = $ to your code.


Sisense V6.2

New ‘Admin’ API section

GET
/dashboards/admin

Get all dashboards - Allows administrators to get the list of all available dashboards in the system.

POST
/dashboards/{id}/admin/change_owner

Change dashboard owner

POST
/dashboards/{server}/{title}/replaceDatasource

Replace the underlying ElastiCube for specific dashboards or across the system

New ‘Folder’ API section

Folder related actions can be automated with these new set of folder related API methods, including the newly introduced sub-folders.

GET
/folders

Get all folders

GET
/folders/{id}Get a specific folder
GET
/folders/{id}/subtreeGet a subtree of a specific folder
GET
/folders/{id}/ancestorsGet the ancestors of a specific folder
POST
/foldersAdd a new folder
PATCH
/folders/{id}Update a folder
DELETE
/folders/{id}Delete a folder

New ‘Authentication’ API section

Allows authenticating users directly through the 'login' API call.

POST
/authentication/loginAuthenticate and receive user token

New ‘Dashboard’ API methods

POST
/dashboards/{id}/publish

Publish dashboard 

POST
/dashboards/{id}/restore

Restore dashboard

POST
/dashboards/{id}/change_owner
  • Change dashboard owner

New ‘ElastiCube Set’ API methods

GET
/elasticubes/setsGet all ElastiCube sets
GET
/elasticubes/sets/{title}Get a filtered list of ElastiCube sets
POST
/elasticubes/setsAdd an ElastiCube set
PATCH
/elasticubes/sets/{title}Update an ElastiCube set
DELETE
/elasticubes/sets/{title}Delete an ElastiCube set

New ‘Reporting’ API section

POST
/reportingSend an email report

New ‘Group’ API methods

POST
/groupsAdd a new group
POST
/groups/adAdd a new Active Directory group
POST
/groups/bulkAdd multiple groups at once
POST
/groups/ad/bulkAdd multiple Active Directory groups at once
DELETE
/groups/{id}Delete a group

New ‘User’ API methods

PATCH
/users/{id}Update a user
DELETE
/users/bulkBulk delete users
DELETE
/users/{id}Delete a user


Sisense V6 & API V1.0

REST API

Sisense V6 introduces our API V1.0, which formalizes the existing API into an improved and easier to consume API. 

The existing REST API is still marked as V0.9 and is fully functional within Sisense V6, thus all REST API functionality is backwards compatible.

In addition, API V1.0 is documented here and is also visible from within the Sisense web application.

Javascript API - Breaking Change Announcement

Sisense V6 is fully backwards compatible with all official objects and methods as documented in the Javascript API page.

However, as is often the case when working with Javascript, outside-of-the-API functions combined with DOM manipulations are commonly used for various plugin functionalities. Thus, we are supplying guidelines for aligning your existing Javascript code with changes that have been made to various internal Javascript components.

Upgrading plugins from the Sisense forums

If you are using plugins that have been posted on our forums, you need to verify that they are V6 compatible. We have added version compatibility details on all plugin details, and wherever necessary uploaded new versions that support V6.

Here is a list of popular plugins that need to be re-downloaded for V6 compatibility:

Upgrading self-developed plugins

Existing plugins need to be tested for V6 compatibility on a staging environment before upgrading.
Make sure to read the details below on changes that might affect your code.

Javascript Changes Details

1. Module manager upgrade

The old moduleManager has been upgraded to SisenseModuleManager that now supports the following methods:

  • createModule for creating a new module
  • getInstanciated to get all modules that were registered in the application
  • getModule to get a specific module by name

2. Accessing the $scope via DOM

Using angular.element(...).scope() to get the $scope is no longer supported and will not work, as this practice misused a debugging-only tool and caused a significant impairment in our performance.


3. Calls with $http that return boolean values

In the past, calls using the $http service to APIs with a boolean return value would return as string values "true" or "false". Now they are returned as actual boolean values true or false.


4. Resources with the same name

In the past, if two resources were registered with the same name, the last one registered would be saved. 
Now, the first one will be saved, and consecutive attempts will result in an error.


5. Upgrades to 3rd party components

Certain 3rd party components used in the application has been upgraded:

Component
From version
To version
Changelog
Benefit
AngularJS1.2.91.4.6changelogImproved rendering performance
Underscore.js1.7.01.8.3changelog
PhantomJS1.92.0.0changelogImproved pdf and email behavior

Also, ngGrid was upgraded to it’s modern counterpart, angular-ui-grid 3.0.1 (changelog)

/settings/system

  • No labels