Skip to main content

ThoughtSpot

Requirements

Warehouse Integration Required

A Warehouse type integration must already be configured to complete the first ingestion of this integration.

For all ThoughtSpot clients:

  • ThoughtSpot admin credentials

You must create a user in your ThoughtSpot instance that has "Can administer ThoughtSpot" privilege.

If Needed, Whitelist Catalog IP

Here are our fixed IPs:

Catalog Managed

You can upload your credentials directly in the App when creating your ThoughtSpot integration.

We need:

{
"base_url": "https://*****.thoughtspot.cloud",
"username": "Catalog",
"password": "*****"
}

For your first sync, it will take up to 48 h and we will let you know when it is complete.

If you are not comfortable giving us access to your credentials, please continue to Client Managed.

Client Managed

Doing a One Shot Extract

For your trial, you can simply give us a one shot view of your BI tool.

To get things working quickly, here is a Google Colab to run our package swiftly.

Running the Extraction Package

Install the PyPI Package

pip install castor-extractor[thoughtspot]

For further details, see the castor-extractor installation instructions.

Run the Package

Once the package has been installed, you should be able to run the following command in your terminal:

castor-extract-thoughtspot [arguments]

Example:

castor-extract-thoughtspot -b "https://*****.thoughtspot.cloud" -u "Catalog" -p "*****" -o "/output/directory"

Credentials

User and password:

  • -u, --username: ThoughtSpot username
  • -p, --password: ThoughtSpot password

Other Arguments

  • -b, --server-url: ThoughtSpot base URL, your API endpoint, usually your ThoughtSpot URL homepage (for example, https://*****.thoughtspot.cloud)
  • -o, --output: target folder to store the extracted files
Help

You can also get help with the argument --help.

Scheduling and Push to Catalog

When moving out of trial, you will want to refresh your ThoughtSpot content in Catalog. Here is how to do it:

  • Your source id provided by Catalog, referred as source_id in the code examples
  • Your Catalog Token given by Catalog

We recommend using the castor-upload command:

castor-upload [arguments]

The Catalog team will provide you with:

  1. Catalog Identifier (an id for us to match your ThoughtSpot files with your Catalog instance)
  2. Catalog Token - An API Token

Arguments

  • -k, --token: Token provided by Catalog
  • -s, --source_id: source id provided by Catalog
  • -t, --file_type: source type to upload (VIZ)

Target Files

To specify the target files, provide one of the following:

  • -f, --file_path: to push a single file

or

  • -d, --directory_path: to push several files at once
Directory Contents

The tool will upload all files included in the given directory.

Make sure it contains only the extracted files before pushing.

Then you will have to schedule the script run and the push to Catalog. Use your preferred scheduler to create this job.

You are done.