Choosing a Sisense Integration Method
Short answer: If you are building a new analytics experience in React, Angular, or Vue, use the Compose SDK — it is the code-first, component-based way to build queries, charts, and dashboards. If you want to drop existing Sisense dashboards into your app with minimal code, use the Embed SDK (or a plain iFrame). To automate or manage Sisense itself (data models, users, security, dashboards) from a server or script, use the REST API. Sisense.JS — the older approach for embedding individual widgets without iFrames — is legacy: for new development use the Compose SDK, which replaces it. These approaches are complementary and are frequently combined.
At a glance
| Method | Best for | Languages / runtime | What you render | Auth model | Avoid when |
|---|---|---|---|---|---|
| Compose SDK | Building new, fully custom analytics in code | React, Angular, Vue, Web Components (TypeScript/JS) | Your own components: charts, tables, filters, queries, and dashboards composed in code | App-level (JWT/SSO, WAT (Web Access Token), API token) via the SDK | You only need to show an existing dashboard as-is |
| Embed SDK | Embedding existing Sisense dashboards programmatically | Any web app (framework-agnostic JavaScript) | A complete Sisense dashboard, controlled via a JS API | Sisense session / SSO | You need per-widget custom layout or code-first charts |
| iFrame embedding | The fastest way to embed a dashboard | Any HTML page | A complete Sisense dashboard in an <iframe> | Sisense session / SSO | iFrames are disallowed, or you need deep DOM/layout control |
| Sisense.JS (legacy) | Embedding individual widgets without iFrames in existing non-React/Angular/Vue apps | Any web app (framework-agnostic JavaScript) | Individual Sisense widgets placed into your own layout | Sisense session / SSO | Building anything new — use Compose SDK instead |
| REST API | Automating and managing Sisense server-side | Any language / HTTP client | Nothing visual — JSON data and management operations | Bearer token (Authorization: Bearer …) | You need to render charts in the browser |
| Customize with JavaScript | Extending the Sisense product UI (add-ons, extensions) | JavaScript (in-product) | Custom widget types, UI changes, runtime behavior | Sisense session | You are building a standalone external app |
How to choose
Use the Compose SDK when…
- You are building a new analytics UI and want full control over layout, styling, and interactivity in code rather than configuring it in the Sisense UI.
- Your app is React, Angular, or Vue (or uses Web Components).
- You want to define queries, filters, and charts programmatically and compose them into your own pages.
- You are modernizing an embedding built on Sisense.JS — the Compose SDK is its recommended replacement.
- See the Compose SDK Quickstart to start.
Use the Embed SDK or an iFrame when…
- You already have dashboards built in Sisense and want to surface them inside your application.
- You want the dashboard to stay in sync with what authors build in Sisense, with little or no code.
- Choose the Embed SDK when you need programmatic control (navigation, filters, events) over the embedded dashboard; choose a plain iFrame when you just need to display it. See Embedding Dashboards.
Use Sisense.JS only for existing integrations…
Sisense.JS is a legacy approach. For new development, use the Compose SDK, which supersedes it with a modern, code-first, component-based API. Reach for Sisense.JS only when:
- You are maintaining an existing Sisense.JS integration that embeds individual widgets (not whole dashboards) into a custom layout, and a rewrite onto the Compose SDK is not yet feasible.
- You cannot use iFrames and your app is not React/Angular/Vue.
- See Embedding Charts & Features.
Use the REST API when…
- You need to manage Sisense programmatically — create or modify data models, dashboards, users, and data-security rules — typically from a backend service or script.
- You need raw query results as JSON for a non-browser consumer.
- Pick the API version for your deployment:
v1(/api/v1/, most application APIs) orv2(/api/v2/, latest, Linux only);v0.9(/api/) is legacy. See Sisense REST API.
Use Customize with JavaScript when…
- You want to extend the Sisense product itself with add-ons and dashboard/widget extensions, rather than build an external application. See Customize Sisense.
Combining methods
These approaches are designed to work together. A common pattern: use the Compose SDK for your custom, code-first analytics screens; use the Embed SDK to reuse a few existing author-built dashboards; and use the REST API from your backend to provision data models, manage users, and apply row-level data security. Authentication is shared across surfaces — see Authentication & Security.