Use ThoughtSpot Scripting Language to modify a Pinboard in a flat-file format. Then you can migrate the object to a different cluster, or restore it to the same cluster.

Scriptability for Answers and Pinboards is in Beta. To enable Scriptable Answers and Pinboards, contact ThoughtSpot Support.

To work with Scriptable Pinboards in ThoughtSpot, you can download Pinboards to a flat file in TSL, ThoughtSpot’s Scripting Language, modify it, and subsequently upload this file either to the same cluster, or to a different cluster. To learn how to export, change, and update Pinboards, see Migrate or restore Pinboards.

Syntax of the Pinboard TSL file

The TSL file for Scriptable Pinboards has a specific syntax.

See the Parameters section for details about the keywords used in this example.

You may not see each of these parameters in your own TSL files, depending on whether each variable is explicitly defined. For example, if you do not have any filters on your Pinboard, the filters parameter does not appear. You can add that variable to the TSL file to specify filters for your Pinboard.

pinboard:
  name: <pinboard_name>
  description:
    This is a multi-line description of the pinboard
    Description line 2
  visualizations:
  - answer:
    This section includes all the Answer specification for a visualization, from name to display_mode, in the Answer syntax section of TSL Answer Specification.
    id: <viz_id_1>
  - answer:
    This section includes all the Answer specification for a second visualization. In this case, the visualization is a headline.
    id: <viz_id_2>
    display_headline_column: <headline_column>    
  filters:
  - column: <filtered_column_name_1>
    oper: <filter_operator>
    values: <filtered_values>
    - value 1
    - value 2
  - column: <filtered_column_name_2>
  layout:
    tiles:
    - visualization_id: <visualization_id_1>
      size: <viz_id_1_size>
    - visualization_id: <visualization_id_2>

Parameters of the Pinboard TSL file

answer
This section includes all the Answer specification for a visualization, from name to display_mode, in the Answer syntax section of TSL Answer Specification.
column
The id of the column being filtered on.
description
The text that describes an object: a worksheet, a worksheet_column, answer, pinboard, and so on.
display_headline_column
If the visualization is a headline, this parameter specifies the column the headline comes from.
filters
Contains specifications for Pinboard and Worksheet filters.
id
Specifies the id of an object, such as an answer, in a Pinboard.
layout
Specifies the Pinboard layout, in the order that a visualization_id is listed.
name
The name of an object. Applies to worksheet, table,join, formula, answer, pinboard and so on.
oper
The operator of the Pinboard or Worksheet filter. Accepted operators are "in", "not in", "between", =<, !=, <=, >=, >, or <.
pinboard
Top-level container for all object definitions within the Pinboard.
size
The size of a visualization in a Pinboard. The options are EXTRA_SMALL, SMALL, MEDIUM, LARGE, LARGE_SMALL, MEDIUM_SMALL, and EXTRA_LARGE.
values
The values being filtered (excluded or included) in a Pinboard or Worksheet.
visualizations
The visualizations in a Pinboard: tables, charts, and headlines.
visualization_id
The id of a visualization. Used to specify the Pinboard's layout.

Limitations of working with TSL files

There are certain limitations to the changes you can apply by editing a Pinboard through TSL.

  • Formulas and columns can either have a new name, or a new expression. You cannot change both, unless migrating or updating the Pinboard two times.

  • It is not possible to reverse the join direction in the TSL script.

  • You cannot create Scriptable representations of R- or Python-powered visualizations.