ThoughtSpot and Salesforce Integration
Integrating ThoughtSpot with Salesforce enables users to access analytics directly within Salesforce. By embedding ThoughtSpot content, organizations can deliver data-driven insights where their end users work, enhancing decision-making and efficiency.
This guide explores the various embedding options, including the ThoughtSpot Lightning Web Component (LWC) plugin for Salesforce, Visual Embed SDK, and non-SDK approaches, and provides key recommendations for authentication, customization/branding, and embedding in mobile apps.
Embeddable objects🔗
ThoughtSpot allows users to create several types of objects. You can easily embed any of the following objects into Salesforce:
-
Search - A self-service interface that allows users to perform searches on data and build visualizations.
-
Answers - Individual visualizations generated and saved from user search queries.
-
Liveboards - Interactive dashboards that contain one or more visualizations (Answers).
-
Spotter - An AI-powered assistant that helps users analyze data using natural language.
-
Full Application - Allows embedding the full ThoughtSpot application or the individual application pages.
Embedding methods🔗
You can embed ThoughtSpot in Salesforce using the following methods:
| Embedding method | Description |
|---|---|
ThoughtSpot supported LWC Plugin | ThoughtSpot-managed Lightning Web Component (LWC) plugin for Salesforce enables seamless embedding of Liveboards and Spotter directly within Salesforce. This is the recommended approach for most Salesforce Lightning environments. |
Custom LWC with Visual Embed SDK | For maximum flexibility and customization, use the Visual Embed SDK within your own custom LWC. This method supports embedding all ThoughtSpot components such as Liveboards, Spotter, Search, Answers and full application experience, and allows for deep integration with Salesforce Cloud products. |
iFrame embedding (without SDK) | For Salesforce Classic or when SDK/LWC plugin use is not possible, embed ThoughtSpot using a simple iFrame. This legacy approach is quick to implement but has limitations in authentication, event handling, and customization. |
Key considerations🔗
| Capability | ThoughtSpot LWC Plugin (managed package) | Custom LWC with SDK | iFrame via Visualforce/Apex |
|---|---|---|---|
Setup effort | Low Install, drag and drop in Lightning App Builder, and configure props | Medium/High Build LWC, handle authentication, events, and testing | Low/Medium Quick to place, but manual parameter and authentication handling is required |
Supported ThoughtSpot experiences | Liveboards and Spotter | All SDK-supported components | Any embeddable ThoughtSpot URL |
Record-aware context | Built-in support Pass recordId/fields via properties | Yes Compose runtime filters from record context | Manual Append query parameters to iFrame URL |
Authentication options | SSO and Cookieless Trusted authentication | All authentication methods supported, including SSO, Cookieless Trusted authentication and more) | Works with SSO only. |
Salesforce Mobile app | Supported when Org authentication is configured | Recommended with Cookieless Trusted authentication | Inframe authentication limitations |
CSP and security | Documented CSP entries; package streamlines most settings | You must manage Trusted Sites and CSP allowlists | Must allow ThoughtSpot as trusted host |
Branding, styles, themes | Configurable via component properties Limited deep styling | Full control via SDK and custom CSS | Minimal Basic styling options for ThoughtSpot application only |
Events and callbacks | Common events exposed via component API | Full event surface; wire to Apex/Flow | None |
Custom Actions | None | Supported | None |
Access to ThoughtSpot REST APIs | Limited | Available SDK and REST APIs supported | None |
Time-to-production | Fastest | Moderate | Fast |
Maintainability and upgrades | Vendor-maintained; update by package version | You own app lifecycle and SDK versioning | You own app lifecycle |
Granular UX control | Medium | High | Low |
High-level implementation steps🔗
To embed ThoughtSpot content, complete the steps described in the following sections: