ThoughtSpot Connection Configurations API

The Connection Configurations API from ThoughtSpot — 4 operation(s) for connection configurations.

Operations 4

POST /api/rest/2.0/connection-configurations/search #
POST /api/rest/2.0/connection-configurations/create #
POST /api/rest/2.0/connection-configurations/delete #
POST /api/rest/2.0/connection-configurations/{configuration_identifier}/update #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/thoughtspot-connection-configurations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

thoughtspot-connection-configurations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ThoughtSpot Public REST Connection Configurations API
  version: '2.0'
servers:
- url: '{base-url}'
  variables:
    base-url:
      default: https://localhost:443
security:
- bearerAuth: []
tags:
- name: Connection Configurations
paths:
  /api/rest/2.0/connection-configurations/search:
    post:
      operationId: connectionConfigurationSearch
      description: "\n <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nGets connection configuration objects.\n\nRequires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\n\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege is required.\n\n#### Usage guidelines\n* To get a list of all configurations available in the ThoughtSpot system, send the API request with only the connection name or GUID in the request body.\n* To fetch details of a configuration object, specify the configuration object name or GUID.\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - Connection Configurations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectionConfigurationSearchRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Configuration fetched successfully.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ConnectionConfigurationResponse'
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /api/rest/2.0/connection-configurations/create:
    post:
      operationId: createConnectionConfiguration
      description: "\n <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nCreates an additional configuration to an existing connection to a data warehouse.  \n\nRequires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\n\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege is required.\n\n#### Usage guidelines\n\n * A JSON map of configuration attributes in `configuration`. The following example shows the configuration attributes:\n  ```\n   {\n     \"user\":\"DEV_USER\",\n     \"password\":\"TestConn123\",\n     \"role\":\"DEV\",\n     \"warehouse\":\"DEV_WH\"\n    }\n  ```\n\n* If the `policy_type` is `PRINCIPALS`, then `policy_principals` is a required field.\n* If the `policy_type` is `PROCESSES`, then `policy_processes` is a required field.\n* If the `policy_type` is `NO_POLICY`, then `policy_principals` and `policy_processes` are not required fields.\n\n#### Parameterized Connection Support\nFor parameterized connections that use OAuth authentication, only the same_as_parent and policy_process_options  attributes are allowed in the API request. These attributes are not applicable to connections that are not parameterized.\n\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - Connection Configurations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateConnectionConfigurationRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Connection configuration successfully created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectionConfigurationResponse'
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /api/rest/2.0/connection-configurations/delete:
    post:
      operationId: deleteConnectionConfiguration
      description: "\n <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nDeletes connection configuration objects.\n\nRequires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\n\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege is required.\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - Connection Configurations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteConnectionConfigurationRequest'
        required: true
      parameters: []
      responses:
        '204':
          description: Connection Configurations successfully deleted.
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /api/rest/2.0/connection-configurations/{configuration_identifier}/update:
    post:
      operationId: updateConnectionConfiguration
      description: "\n <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nUpdates a connection configuration object.\n\nRequires `DATAMANAGEMENT` (**Can manage data**) and edit permissions to the connection object, or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\n\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `CAN_CREATE_OR_EDIT_CONNECTIONS` (**Can create/edit Connections**) privilege is required.\n\n#### Supported operations\nThis API endpoint lets you perform the following operations in a single API request:\n\n * Edit the name or description of the configuration\n * Edit the configuration properties\n * Edit the `policy_type`\n * Edit the type of authentication\n * Enable or disable a configuration\n\n#### Parameterized Connection Support\nFor parameterized oauth based connections, only the `same_as_parent` and `policy_process_options` attributes are allowed. These attributes are not applicable to connections that are not parameterized.\n\n **NOTE**: When updating a configuration where `disabled` is `true`, you must reset `disabled` to `true` in your update request payload. If not explicitly set again, the API will default `disabled` to `false`.\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - Connection Configurations
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateConnectionConfigurationRequest'
        required: true
      parameters:
      - in: path
        name: configuration_identifier
        required: true
        schema:
          type: string
        description: Unique ID or name of the configuration.
      responses:
        '204':
          description: Connection configuration successfully updated.
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    CreateConnectionConfigurationRequest:
      type: object
      properties:
        name:
          description: Unique name for the configuration.
          type: string
        description:
          description: Description of the configuration.
          type: string
        connection_identifier:
          description: Unique ID or name of the connection.
          type: string
        same_as_parent:
          description: 'Specifies whether the connection configuration should inherit all properties and authentication

            type from its parent connection. This attribute is only applicable to parameterized connections.

            When set to true, the configuration uses only the connection properties and authentication type

            inherited from the parent. <br/>  <span class="since-beta-tag">Version: 26.2.0.cl or later</span>'
          default: false
          type:
          - boolean
          - 'null'
        policy_process_options:
          description: 'This attribute is only applicable to parameterized connections. Ensure that the policy is

            set to Processes to allow the configuration to be used exclusively for system processes. <br/>  <span class="since-beta-tag">Version: 26.2.0.cl or later</span>'
          allOf:
          - $ref: '#/components/schemas/PolicyProcessOptionsInput'
        authentication_type:
          description: Type of authentication used for the connection.
          default: SERVICE_ACCOUNT
          type: string
          enum:
          - SERVICE_ACCOUNT
          - KEY_PAIR
          - PERSONAL_ACCESS_TOKEN
          - OAUTH_WITH_SERVICE_PRINCIPAL
          - OAUTH_CLIENT_CREDENTIALS
          - OAUTH_CLIENT_CREDENTIALS_WITH_X509
        configuration:
          description: Configuration properties in JSON.
          type: object
        policy_type:
          description: Type of policy.
          default: NO_POLICY
          type: string
          enum:
          - NO_POLICY
          - PRINCIPALS
          - PROCESSES
        policy_principals:
          description: Unique ID or name of the User and User Groups.
          type: array
          items:
            type: string
        policy_processes:
          description: Action that the query performed on the data warehouse, such as SAGE_INDEXING, ROW_COUNT_STATS, and SCHEDULED_LIVEBOARDS.
          type: array
          items:
            type: string
            enum:
            - SAGE_INDEXING
            - ROW_COUNT_STATS
            - SCHEDULED_LIVEBOARDS
      required:
      - name
      - connection_identifier
      - configuration
    ErrorResponse:
      type: object
      properties:
        error:
          type:
          - object
          - 'null'
    UserPrincipal:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        type:
          type:
          - string
          - 'null'
    UpdateConnectionConfigurationRequest:
      type: object
      properties:
        connection_identifier:
          description: Unique ID or name of the connection.
          type: string
        name:
          description: Name of the configuration to update.
          type: string
        description:
          description: Description of the configuration.
          type: string
        same_as_parent:
          description: 'Specifies whether the connection configuration should inherit all properties and authentication

            type from its parent connection. This attribute is only applicable to parameterized connections.

            When set to true, the configuration uses only the connection properties and authentication type

            inherited from the parent. <br/>  <span class="since-beta-tag">Version: 26.2.0.cl or later</span>'
          default: false
          type:
          - boolean
          - 'null'
        policy_process_options:
          description: 'This attribute is only applicable to parameterized connections. Ensure that the policy is

            set to Processes to allow the configuration to be used exclusively for system processes. <br/>  <span class="since-beta-tag">Version: 26.2.0.cl or later</span>'
          allOf:
          - $ref: '#/components/schemas/PolicyProcessOptionsInput'
        authentication_type:
          description: Type of authentication.
          type: string
          enum:
          - SERVICE_ACCOUNT
          - OAUTH
          - OAUTH_WITH_SERVICE_PRINCIPAL
          - EXTOAUTH
          - KEY_PAIR
          - EXTOAUTH_WITH_PKCE
          - OAUTH_WITH_PKCE
          - PERSONAL_ACCESS_TOKEN
          - OAUTH_CLIENT_CREDENTIALS
          - OAUTH_CLIENT_CREDENTIALS_WITH_X509
        configuration:
          description: Configuration properties in JSON.
          type: object
        policy_type:
          description: Type of policy.
          type: string
          enum:
          - NO_POLICY
          - PRINCIPALS
          - PROCESSES
        policy_principals:
          description: Unique ID or name of the User and User Groups.
          type: array
          items:
            type: string
        policy_processes:
          description: Action that the query performed on the data warehouse, such as SAGE_INDEXING, ROW_COUNT_STATS, and SCHEDULED_LIVEBOARDS.
          type: array
          items:
            type: string
            enum:
            - SAGE_INDEXING
            - ROW_COUNT_STATS
            - SCHEDULED_LIVEBOARDS
        disable:
          description: Indicates whether the configuration enable/disable.
          default: false
          type:
          - boolean
          - 'null'
      required:
      - connection_identifier
    DeleteConnectionConfigurationRequest:
      type: object
      properties:
        configuration_identifier:
          description: Unique ID or name of the configuration.
          type: string
        connection_identifier:
          description: Unique ID or name of the connection.
          type: string
      required:
      - configuration_identifier
      - connection_identifier
    PolicyProcessOptionsInput:
      type: object
      properties:
        impersonate_user:
          type:
          - string
          - 'null'
    ConnectionConfigurationResponse:
      type: object
      properties:
        configuration_identifier:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        description:
          type:
          - string
          - 'null'
        configuration:
          type:
          - object
          - 'null'
        policy_principals:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/UserPrincipal'
        policy_processes:
          type:
          - array
          - 'null'
          items:
            type: string
            enum:
            - SAGE_INDEXING
            - ROW_COUNT_STATS
            - SCHEDULED_LIVEBOARDS
        disabled:
          type:
          - boolean
          - 'null'
        data_warehouse_type:
          type:
          - string
          - 'null'
          enum:
          - SNOWFLAKE
          - AMAZON_REDSHIFT
          - GOOGLE_BIGQUERY
          - AZURE_SYNAPSE
          - TERADATA
          - SAP_HANA
          - STARBURST
          - ORACLE_ADW
          - DATABRICKS
          - DENODO
          - DREMIO
          - TRINO
          - PRESTO
          - POSTGRES
          - SQLSERVER
          - MYSQL
          - GENERIC_JDBC
          - AMAZON_RDS_POSTGRESQL
          - AMAZON_AURORA_POSTGRESQL
          - AMAZON_RDS_MYSQL
          - AMAZON_AURORA_MYSQL
          - LOOKER
          - AMAZON_ATHENA
          - SINGLESTORE
          - GCP_SQLSERVER
          - GCP_ALLOYDB_POSTGRESQL
          - GCP_POSTGRESQL
          - GCP_MYSQL
          - MODE
          - GOOGLE_SHEETS
          - FALCON
          - FALCON_ONPREM
          - CLICKHOUSE
          - IOMETE
        policy_type:
          type:
          - string
          - 'null'
          enum:
          - NO_POLICY
          - PRINCIPALS
          - PROCESSES
        same_as_parent:
          type:
          - boolean
          - 'null'
        policy_process_options:
          $ref: '#/components/schemas/PolicyProcessOptions'
    ConnectionConfigurationSearchRequest:
      type: object
      properties:
        connection_identifier:
          description: Unique ID or name of the connection.
          type: string
        configuration_identifier:
          description: Unique ID or name of the configuration.
          type: string
        policy_type:
          description: Type of policy.
          type: string
          enum:
          - NO_POLICY
          - PRINCIPALS
          - PROCESSES
      required:
      - connection_identifier
    PolicyProcessOptions:
      type: object
      properties:
        impersonate_user:
          type:
          - string
          - 'null'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
x-roles:
- name: 26.2.0.cl
  id: 26.2.0.cl
  tags:
  - 26.2.0.cl
  description: Roles for version 26.2.0.cl
- name: 10.4.0.cl
  id: 10.4.0.cl
  tags:
  - 10.4.0.cl
  description: Roles for version 10.4.0.cl
- name: 26.7.0.cl
  id: 26.7.0.cl
  tags:
  - 26.7.0.cl
  description: Roles for version 26.7.0.cl
- name: 26.8.0.cl
  id: 26.8.0.cl
  tags:
  - 26.8.0.cl
  description: Roles for version 26.8.0.cl
- name: 26.6.0.cl
  id: 26.6.0.cl
  tags:
  - 26.6.0.cl
  description: Roles for version 26.6.0.cl
- name: 10.15.0.cl
  id: 10.15.0.cl
  tags:
  - 10.15.0.cl
  description: Roles for version 10.15.0.cl
- name: 10.13.0.cl
  id: 10.13.0.cl
  tags:
  - 10.13.0.cl
  description: Roles for version 10.13.0.cl
- name: 26.9.0.cl
  id: 26.9.0.cl
  tags:
  - 26.9.0.cl
  description: Roles for version 26.9.0.cl
- name: 10.7.0.cl
  id: 10.7.0.cl
  tags:
  - 10.7.0.cl
  description: Roles for version 10.7.0.cl
- name: 26.5.0.cl
  id: 26.5.0.cl
  tags:
  - 26.5.0.cl
  description: Roles for version 26.5.0.cl
- name: 9.0.0.cl
  id: 9.0.0.cl
  tags:
  - 9.0.0.cl
  description: Roles for version 9.0.0.cl
- name: 9.4.0.cl
  id: 9.4.0.cl
  tags:
  - 9.4.0.cl
  description: Roles for version 9.4.0.cl
- name: 9.12.0.cl
  id: 9.12.0.cl
  tags:
  - 9.12.0.cl
  description: Roles for version 9.12.0.cl
- name: 26.4.0.cl
  id: 26.4.0.cl
  tags:
  - 26.4.0.cl
  description: Roles for version 26.4.0.cl
- name: 10.12.0.cl
  id: 10.12.0.cl
  tags:
  - 10.12.0.cl
  description: Roles for version 10.12.0.cl
- name: 9.2.0.cl
  id: 9.2.0.cl
  tags:
  - 9.2.0.cl
  description: Roles for version 9.2.0.cl
- name: 9.9.0.cl
  id: 9.9.0.cl
  tags:
  - 9.9.0.cl
  description: Roles for version 9.9.0.cl
- name: 9.6.0.cl
  id: 9.6.0.cl
  tags:
  - 9.6.0.cl
  description: Roles for version 9.6.0.cl
- name: 10.10.0.cl
  id: 10.10.0.cl
  tags:
  - 10.10.0.cl
  description: Roles for version 10.10.0.cl
- name: 10.6.0.cl
  id: 10.6.0.cl
  tags:
  - 10.6.0.cl
  description: Roles for version 10.6.0.cl
- name: 10.3.0.cl
  id: 10.3.0.cl
  tags:
  - 10.3.0.cl
  description: Roles for version 10.3.0.cl
- name: 10.1.0.cl
  id: 10.1.0.cl
  tags:
  - 10.1.0.cl
  description: Roles for version 10.1.0.cl
- name: 10.9.0.cl
  id: 10.9.0.cl
  tags:
  - 10.9.0.cl
  description: Roles for version 10.9.0.cl
- name: 10.8.0.cl
  id: 10.8.0.cl
  tags:
  - 10.8.0.cl
  description: Roles for version 10.8.0.cl
- name: 9.5.0.cl
  id: 9.5.0.cl
  tags:
  - 9.5.0.cl
  description: Roles for version 9.5.0.cl
- name: 26.3.0.cl
  id: 26.3.0.cl
  tags:
  - 26.3.0.cl
  description: Roles for version 26.3.0.cl
- name: 10.14.0.cl
  id: 10.14.0.cl
  tags:
  - 10.14.0.cl
  description: Roles for version 10.14.0.cl
- name: 9.7.0.cl
  id: 9.7.0.cl
  tags:
  - 9.7.0.cl
  description: Roles for version 9.7.0.cl