Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
db8f9bf
docs: add Snowflake Semantic View integration API reference (SCAL-309…
ShashiSubramanya Aug 12, 2026
d188100
test: verify write access
ShashiSubramanya Aug 17, 2026
a2f4016
docs: add 26.9.0.cl REST API changelog entries (SCAL-306069, SCAL-309…
ShashiSubramanya Aug 17, 2026
0a5ae84
docs: add Visual Embed SDK 1.52.x changelog entries (SCAL-317516, SCA…
ShashiSubramanya Aug 17, 2026
3a06bdb
docs: add Spotter conversation sharing APIs section (aug.26.mt, SCAL-…
ShashiSubramanya Aug 17, 2026
40511ea
docs: add Answer Export API GA documentation (SCAL-306069)
ShashiSubramanya Aug 17, 2026
9da4bed
docs: add 26.9.0.cl REST API changelog section (SCAL-306069, SCAL-309…
ShashiSubramanya Aug 17, 2026
836dee5
docs: add Visual Embed SDK 1.52.x changelog (SCAL-317516, SCAL-314461)
ShashiSubramanya Aug 17, 2026
cc284b2
docs: add conversation sharing APIs to spotter-agent-apis.adoc (aug.2…
ShashiSubramanya Aug 17, 2026
235d418
docs: add Answer Report API GA section to data-report-v2-api.adoc (SC…
ShashiSubramanya Aug 17, 2026
668f2b4
docs: add 26.9.0.cl REST API changelog section (SCAL-306069, SCAL-309…
ShashiSubramanya Aug 17, 2026
508ed74
docs: add Visual Embed SDK 1.52.x changelog (SCAL-317516, SCAL-314461)
ShashiSubramanya Aug 17, 2026
e955874
docs: add conversation sharing APIs to spotter-agent-apis.adoc (aug.2…
ShashiSubramanya Aug 17, 2026
f17f395
docs: add Answer Report API GA section to data-report-v2-api.adoc (SC…
ShashiSubramanya Aug 17, 2026
bc6ae4f
docs: add 26.9.0.cl REST API changelog section — Answer Export GA, Se…
ShashiSubramanya Aug 17, 2026
190dd38
docs: add Visual Embed SDK 1.52.x changelog — overrideHistoryState, H…
ShashiSubramanya Aug 17, 2026
6daae0a
docs: add Answer Report API GA section to data-report-v2-api.adoc — p…
ShashiSubramanya Aug 17, 2026
e974859
docs: add conversation sharing APIs to spotter-agent-apis.adoc — shar…
ShashiSubramanya Aug 17, 2026
02a807b
docs: add conversation sharing APIs to spotter-agent-apis.adoc — shar…
ShashiSubramanya Aug 17, 2026
885e457
docs: add 26.9.0.cl REST API changelog section (SCAL-306069, SCAL-309…
ShashiSubramanya Aug 17, 2026
8b5ea25
docs: add Visual Embed SDK 1.52.x changelog (SCAL-317516, SCAL-314461)
ShashiSubramanya Aug 17, 2026
c152a93
docs: add Answer Report API GA section (SCAL-306069)
ShashiSubramanya Aug 17, 2026
3a1db02
docs: add 26.9.0.cl REST API changelog section (SCAL-306069, SCAL-309…
ShashiSubramanya Aug 17, 2026
fbac5b0
docs: add Visual Embed SDK 1.52.x changelog (SCAL-317516, SCAL-314461)
ShashiSubramanya Aug 17, 2026
de4cf40
docs: add Answer Report API GA section (SCAL-306069)
ShashiSubramanya Aug 17, 2026
b8701b0
docs: add What's New blurb for 26.9.0.cl / aug.26.mt / SDK 1.52.0
ShashiSubramanya Aug 17, 2026
fd3a26d
docs: add What's New blurb for 26.9.0.cl / aug.26.mt / SDK 1.52.0
ShashiSubramanya Aug 17, 2026
6db4094
docs: add What's New blurb for 26.9.0.cl / aug.26.mt / SDK 1.52.0
ShashiSubramanya Aug 17, 2026
4ec9f6d
docs: fix indentation in September 2026 What's New section
ShashiSubramanya Aug 17, 2026
18bb058
docs: fix indentation in September 2026 What's New section
ShashiSubramanya Aug 17, 2026
de530e8
formatting fixes
ShashiSubramanya Aug 17, 2026
1091302
API updates
ShashiSubramanya Aug 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions modules/ROOT/pages/.write-test
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
write access test - delete me
45 changes: 44 additions & 1 deletion modules/ROOT/pages/api-changelog.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,49 @@

This page documents the changes introduced in each release of the Visual Embed SDK. For information about the REST API v2.0 changes, see the xref:rest-apiv2-changelog.adoc[REST API v2.0 changelog].

== Version 1.52.x, September 2026

[width="100%" cols="1,4"]
|====
|[tag greenBackground]#NEW FEATURE# a|

[discrete]
===== Browser history management in full application embedding
To override the browser history behavior for embedding application users and prevent users from getting trapped in back-button loops inside the embedded iframe environment, you can now set `overrideHistoryState` in the Visual Embed SDK.


////
[source,JavaScript]
----
import { AppEmbed, init, AuthType } from '@thoughtspot/visual-embed-sdk';

init({
thoughtSpotHost: 'https://<hostname>.thoughtspot.cloud',
authType: AuthType.TrustedAuthToken,
getAuthToken: () => fetch('/ts-token').then(r => r.json()).then(d => d.token),
});

const embed = new AppEmbed('#embed-container', {
frameParams: { width: '100%', height: '100%' },
overrideHistoryState: true, // <1>
});

embed.render();
----
<1> When set to `true`, ThoughtSpot replaces rather than pushes browser history entries during internal navigation.
////

|[tag greenBackground]#NEW FEATURE# a|

[discrete]
===== Collections in left navigation panel
The `HomeLeftNavItem.Collections` enum value is now available in the Visual Embed SDK. Embed developers can include *Collections* as a selectable navigation option in the embedded left navigation panel for full application embeds. When enabled, end users of the embedded application can navigate to *Collections* from the left navigation panel.

For more information, see xref:full-app-customize.adoc[Customize full application embedding].

|====


== Version 1.51.x, August 2026

[width="100%" cols="1,4"]
Expand Down Expand Up @@ -1919,4 +1962,4 @@ Users with edit permissions can view and access the *Edit* action. The *Download

When a user accesses the embedded application from a web browser that has third-party cookies disabled, the Visual Embed SDK emits the `NoCookieAccess` event to notify the developer. Cookies are disabled by default in Safari. Users can enable third-party cookies in Safari’s Preferences setting page or use another web browser.
To know how to enable this setting by default on Safari for a ThoughtSpot embedded instance, contact ThoughtSpot Support.
|====
|====
107 changes: 106 additions & 1 deletion modules/ROOT/pages/data-report-v2-api.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -687,4 +687,109 @@ To sort columns on a Liveboard or Answer, define runtime sort properties in `run

For more information, see xref:runtime-sort.adoc#_rest_api_v2_0[Runtime sorting of columns].


[#answer-report]
=== Answer Report API

// SOURCE: SCAL-306069

The `POST /api/rest/2.0/report/answer` endpoint is generally available from 26.9.0.cl. Use this endpoint to export Answer data in CSV, XLSX, PDF, or PNG format. The endpoint supports saved Answers, pinned Answers (visualizations on a Liveboard), and Spotter-generated (ad hoc) Answers.

==== Prerequisites

To download Answer data, the user must have at least *View* access to the Answer or Liveboard. If RBAC is enabled:

* `DATADOWNLOADING` (Can download Data) — required for all export formats.
* `CAN_DOWNLOAD_DETAILED_DATA` (Can download detailed data) — required for CSV and XLSX.
* `CAN_DOWNLOAD_VISUALS` (Can download visuals) — required for PNG.

==== Request parameters

[width="100%" cols="2,1,4"]
[options="header"]
|=====
| Parameter | Required | Description
| `metadata_identifier` | Conditional | GUID or name of the saved Answer. For pinned Answer exports, use the parent Liveboard GUID or name and pass `viz_guid` separately.
| `file_format` | Yes | Export format. Accepted values: `CSV`, `XLSX`, `PDF`, `PNG`.
| `viz_guid` | No | GUID of a pinned visualization on a Liveboard. When specified, `metadata_identifier` must identify the parent Liveboard.
| `personalised_view_identifier` | No | GUID or name of a Personalized View. When specified, the export uses data from that view.
| `runtime_filter` | No | Runtime filter overrides to apply to the export.
| `runtime_sort` | No | Runtime sort overrides to apply to the export.
| `runtime_param_override` | No | Runtime parameter overrides to apply to the export.
| `x_resolution` | No | Width of the PNG export in pixels. Range: 600–3840. Applies only when `file_format` is `PNG`. Default: 2254.
| `y_resolution` | No | Height of the PNG export in pixels. Range: 600–3840. Applies only when `file_format` is `PNG`. Default: 1588.
| `scaling_factor` | No | Scaling percentage for chart elements in PNG exports. Range: 80–400. Does not crop the image. Applies only when `file_format` is `PNG`.
|=====

==== Export a saved Answer

[source,cURL]
----
curl -X POST \
--url 'https://{ThoughtSpot-Host}/api/rest/2.0/report/answer' \
-H 'Authorization: Bearer {access-token}' \
-H 'Accept: application/octet-stream' \
-H 'Content-Type: application/json' \
--data-raw '{
"metadata_identifier": "my-saved-answer",
"file_format": "CSV"
}' \
--output answer.csv
----

==== Export a pinned Answer

[source,cURL]
----
curl -X POST \
--url 'https://{ThoughtSpot-Host}/api/rest/2.0/report/answer' \
-H 'Authorization: Bearer {access-token}' \
-H 'Accept: application/octet-stream' \
-H 'Content-Type: application/json' \
--data-raw '{
"metadata_identifier": "<liveboard-guid-or-name>",
"viz_guid": "<visualization-guid>",
"file_format": "PDF"
}' \
--output pinned-answer.pdf
----

==== Export a Spotter Answer

[source,cURL]
----
curl -X POST \
--url 'https://{ThoughtSpot-Host}/api/rest/2.0/report/answer' \
-H 'Authorization: Bearer {access-token}' \
-H 'Accept: application/octet-stream' \
-H 'Content-Type: application/json' \
--data-raw '{
"metadata_identifier": "<spotter-answer-id>",
"file_format": "XLSX"
}' \
--output spotter-answer.xlsx
----

[NOTE]
====
Pass the answer ID from the Spotter API response as `metadata_identifier`. XLSX and PDF formats are supported for Spotter Answers from 26.9.0.cl.
====

==== Export a PNG with custom dimensions

[source,cURL]
----
curl -X POST \
--url 'https://{ThoughtSpot-Host}/api/rest/2.0/report/answer' \
-H 'Authorization: Bearer {access-token}' \
-H 'Accept: application/octet-stream' \
-H 'Content-Type: application/json' \
--data-raw '{
"metadata_identifier": "my-saved-answer",
"file_format": "PNG",
"x_resolution": 3840,
"y_resolution": 2160,
"scaling_factor": 150
}' \
--output answer-4k.png
----

121 changes: 121 additions & 0 deletions modules/ROOT/pages/rest-apiv2-changelog.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,127 @@

This changelog lists the features and enhancements introduced in REST API v2.0. For information about new features and enhancements available for embedded analytics, see xref:whats-new.adoc[What's New].

== Version 26.9.0.cl, September 2026

=== Answer Export API enhancements — General Availability

// SOURCE: SCAL-306069

The `POST /api/rest/2.0/report/answer` endpoint is generally available from 26.9.0.cl. The `isAnswerExportV2Enabled` flag is enabled by default on all ThoughtSpot Cloud instances. The following enhancements are included in this release:

Pinned Answer export::
Pass `viz_guid` to export a pinned Answer (a visualization on a Liveboard) directly. Liveboard-level filters and runtime overrides are applied automatically. The `metadata_identifier` must be the parent Liveboard GUID or name.

Personalized View support::
Pass `personalised_view_identifier` to export data from a specific Personalized View of a Liveboard.

Spotter Answer export::
XLSX and PDF export formats are now supported for Spotter-generated (ad hoc) Answers, in addition to CSV and PNG.

Custom PNG dimensions::
Use `x_resolution` and `y_resolution` parameters to specify custom pixel dimensions for PNG exports. Accepted range: 600–3840 px per axis. Default: 2254 × 1588.

Display scaling::
Use `scaling_factor` (range: 80–400) to adjust the relative size of chart elements in a PNG export without cropping the image.

Dynamic file naming::
Exported files are automatically named based on the Answer title with the correct file extension (`.png`, `.pdf`, `.csv`, `.xlsx`) appended.

For more information, see xref:data-report-v2-api.adoc#answer-report[Answer Report API].

=== Snowflake Semantic View integration APIs

// SOURCE: SCAL-309867

ThoughtSpot 26.9.0.cl introduces REST API v2.0 endpoints for managing Snowflake Semantic View integrations programmatically. These APIs allow administrators and data managers to create, search, import, and delete semantic integration configurations without using the ThoughtSpot UI.

[width="100%"]
[options="header"]
|=====
| Method | Endpoint | Description
| `POST` | `/api/rest/2.0/semantic-integrations/create` | Creates a new semantic integration by reading a Snowflake Semantic View and generating a ThoughtSpot data model.
| `POST` | `/api/rest/2.0/semantic-integrations/search` | Returns a list of semantic integrations matching the specified filter criteria.
| `POST` | `/api/rest/2.0/semantic-integrations/{semantic_integration_identifier}/import` | Re-imports semantic updates from Snowflake and refreshes the associated ThoughtSpot data model.
| `POST` | `/api/rest/2.0/semantic-integrations/{semantic_integration_identifier}/delete` | Deletes a semantic integration and its generated ThoughtSpot data model.
|=====

Required privilege: `ADMINISTRATION` or `DATAMANAGEMENT`. If RBAC is enabled, the user also requires the `CAN_CREATE_OR_EDIT_CONNECTIONS` privilege and permission to manage data models.

For more information, see xref:semantic-integrations-api.adoc[Snowflake Semantic View integration APIs].

=== Spotter Memory — General Availability

// SOURCE: SCAL-306173

The Spotter Memory feature is generally available from 26.9.0.cl. The memory APIs introduced in 26.8.0.cl (`POST /api/rest/2.0/ai/memory/import` and `POST /api/rest/2.0/ai/memory/export`) are enabled by default on all ThoughtSpot Cloud instances. Administrators can manage and audit Spotter training data programmatically without enabling a feature flag.

For more information, see xref:spotter-ai-memory-api.adoc[Spotter memory APIs].

=== Spotter Agent — Conversation sharing APIs

// SOURCE: SCAL-306173 (aug.26.mt)

ThoughtSpot 26.9.0.cl introduces REST API v2.0 endpoints for sharing saved Spotter agent conversations with other users or groups. Shared conversations are always `READ_ONLY`.

[width="100%"]
[options="header"]
|=====
| Method | Endpoint | Description
| `POST` | `/api/rest/2.0/ai/agent/conversations/{conversation_identifier}/share` | Shares a saved Spotter conversation with specified principals. Use `grant` and `revoke` arrays to manage access.
| `GET` | `/api/rest/2.0/ai/agent/conversations/{conversation_identifier}/get-shared-content` | Returns the content of a shared Spotter conversation — messages, data sources, and answer details.
| `GET` | `/api/rest/2.0/ai/agent/conversations/{conversation_identifier}/get-share-info` | Returns sharing metadata — the list of principals the conversation is shared with and their access levels. The `is_shared_content_outdated` flag indicates if the shared snapshot is stale.
|=====

For more information, see xref:spotter-agent-apis.adoc#_sharing_spotter_conversations[Sharing Spotter conversations].

=== KPI Sparkline setting in metadata search response

// SOURCE: SCAL-320899

The `POST /api/rest/2.0/metadata/search` API response now includes the `isSparklineEnabled` field in the `AnswerSpecHeader` object for KPI chart type answers. This boolean field indicates whether the sparkline trend line is enabled for the KPI visualization.

* `true` — the sparkline trend line is enabled.
* `false` — the sparkline is disabled.
* Absent — the answer was saved before this release and has not been re-saved. Treat an absent field as unknown, not as `false`.

=== Outline Encoding — BYOC Muze

// SOURCE: SCAL-317550

ThoughtSpot 26.9.0.cl promotes mark outline color to a first-class data-driven encoding channel in the Muze charting library (BYOC). Developers building custom charts with Muze can now bind a data field to `encoding.outline` to produce ordinal color palettes (for categorical fields) or continuous gradient ramps (for measures), with full legend rendering and legend-to-mark interaction.

The static `outline` config (`{ fill, color, width, dash }`) remains fully backward compatible. Supported mark types: Point, Bar, Arc.

=== Personalized Views TML portability — General Availability

// SOURCE: SCAL-307284

The Personalized Views TML portability feature introduced as Early Access in 26.8.0.cl is generally available from 26.9.0.cl.

* The `author` field in Personalized View TML maps to the view owner's username or email, ensuring ownership is retained when a Liveboard is promoted across clusters or orgs.
* The `obj_id` field provides a stable cross-environment identifier for Personalized Views.
* Smart merge import: when importing a Liveboard TML that contains Personalized Views, ThoughtSpot preserves views that exist only in the target environment, appends new views from the imported TML, and updates views present in both.

For more information, see xref:tml.adoc#personalized-views-portability[Personalized Views portability in TML].

=== Connection configuration — Scheduled Liveboards process type

// SOURCE: SCAL-312738

ThoughtSpot 26.9.0.cl adds `SCHEDULED_LIVEBOARDS` as a new process type for Embrace connection configurations. Administrators can assign the Scheduled Liveboards process to a connection configuration, enabling ThoughtSpot to use the associated credentials when running scheduled Liveboard delivery jobs. Configurable via:

* `POST /api/rest/2.0/connection/configuration/create`
* `PUT /api/rest/2.0/connection/configuration/{configuration_identifier}/update`

=== AI Context — Spotter Optimization tab

// SOURCE: SCAL-277656

The AI Context generation UI is revamped in 26.9.0.cl. A new *Spotter Optimization* tab is introduced in the data model editor for managing AI context, replacing the previous AI Context panel. The tab provides a more streamlined interface for reviewing and editing auto-generated descriptions for columns and joins.

No changes to the AI context REST API endpoints in this release.


== Version 26.8.0.cl, August 2026

=== Spotter AI APIs
Expand Down
Loading