ThoughtSpot 10.12.0.cl API

The 10.12.0.cl API from ThoughtSpot — 13 operation(s) for 10.12.0.cl.

Documentation

Specifications

Other Resources

OpenAPI Specification

thoughtspot-10-12-0-cl-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: ThoughtSpot Public REST 10.1.0.cl 10.12.0.cl API
  version: '2.0'
servers:
- url: '{base-url}'
  variables:
    base-url:
      default: https://localhost:443
security:
- bearerAuth: []
tags:
- name: 10.12.0.cl
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:
      - 10.12.0.cl
      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:
      - 10.12.0.cl
      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:
      - 10.12.0.cl
      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:
      - 10.12.0.cl
      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'
  /api/rest/2.0/calendars/create:
    post:
      operationId: createCalendar
      description: "\n <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nCreates a new [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal).\n\nRequires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your ThoughtSpot instance, the `CAN_MANAGE_CUSTOM_CALENDAR` (**Can manage custom calendars**) privilege is required.\n\n\n#### Usage guidelines\n\nYou can create a custom calendar from scratch or an existing Table in ThoughtSpot. For both methods of calendar creation, the following parameters are required:\n\n* Name of the custom calendar.\n* Calendar creation method. To create a calendar from an existing table, specify the method:\n\n - `FROM_EXISTING_TABLE` - Creates calendar from the table reference provided in the API request.\n - `FROM_INPUT_PARAMS` - Creates a calendar from the parameters defined in the API request.\n\n* Connection ID and Table name\n* Database and schema name attributes:\n  For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required.  \n  However, the attribute requirements are conditional and vary based on the connector type and its metadata structure. For example, for connectors such as Teradata, MySQL, SingleSore, Amazon Aurora MySQL, Amazon RDS MySQL, Oracle, and GCP_MYSQL, the `schema_name` is required, whereas the `database_name` attribute is not.\n  Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional.\n\n**NOTE**: If you are creating a calendar from an existing table, ensure that the referenced table matches the required DDL for custom calendars. If the schema does not match, the API returns an error.\n\n##### Calendar type\nThe API allows you to create the following types of calendars:\n\n* `MONTH_OFFSET`. The default calendar type. A `MONTH_OFFSET` calendar is offset by a few months from the standard calendar months (January to December) and the year begins with the month defined in the request. For example, if the `month_offset` value is set as `April`, the calendar year begins in April.\n\n* `4-4-5`. Each quarter in the calendar will include two 4-week months followed by one 5-week month.\n* `4-5-4`. Each quarter in the calendar will include two 4-week months with a 5-week month between.\n* `5-4-4`. Each quarter begins with a 5-week month, followed by two 4-week months.\n\nTo start and end the calendar on a specific date, specify the dates in the `MM/DD/YYYY` format. For `MONTH_OFFSET` calendars, ensure that the `start_date` matches the month specified in the `month_offset` attribute.\n\nYou can also set the starting day of the week and customize the prefixes for year and quarter labels.\n\n#### Examples\n\nTo create a calendar from an existing table:\n\n```\n{\n  \"name\": \"MyCustomCalendar1\",\n  \"table_reference\": {\n    \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\",\n    \"table_name\": \"MyCalendarTable\",\n    \"database_name\": \"RETAILAPPAREL\",\n    \"schema_name\": \"PUBLIC\"\n  },\n  \"creation_method\": \"FROM_EXISTING_TABLE\",\n}\n```\n\nTo create a calendar from scratch:\n\n```\n{\n  \"name\": \"MyCustomCalendar1\",\n  \"table_reference\": {\n    \"connection_identifier\": \"4db8ea22-2ff4-4224-b05a-26674717e468\",\n    \"table_name\": \"MyCalendarTable\",\n    \"database_name\": \"RETAILAPPAREL\",\n    \"schema_name\": \"PUBLIC\"\n  },\n  \"creation_method\": \"FROM_INPUT_PARAMS\",\n  \"calendar_type\": \"MONTH_OFFSET\",\n  \"month_offset\": \"April\",\n  \"start_day_of_week\": \"Monday\",\n  \"quarter_name_prefix\": \"Q\",\n  \"year_name_prefix\": \"FY\",\n  \"start_date\": \"04/01/2025\",\n  \"end_date\": \"04/31/2025\"\n}\n```\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - 10.12.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateCalendarRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Custom calendar created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CalendarResponse'
        '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/calendars/{calendar_identifier}/delete:
    post:
      operationId: deleteCalendar
      description: "\n <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nDeletes a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal).\n\nRequires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your ThoughtSpot instance, the `CAN_MANAGE_CUSTOM_CALENDAR` (**Can manage custom calendars**) privilege is required.\n\n#### Usage guidelines\nTo delete a custom calendar, specify the calendar ID as a path parameter in the request URL.  \n\n\n\n\n#### Endpoint URL\n"
      tags:
      - 10.12.0.cl
      parameters:
      - in: path
        name: calendar_identifier
        required: true
        schema:
          type: string
        description: Unique ID or name of the Calendar.
      responses:
        '204':
          description: Custom calendar 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/calendars/generate-csv:
    post:
      operationId: generateCSV
      description: "\n <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nExports a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal) in the CSV format.\n\nRequires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your ThoughtSpot instance, the `CAN_MANAGE_CUSTOM_CALENDAR` (**Can manage custom calendars**) privilege is required.\n\n#### Usage guidelines\n\nUse this API to download a custom calendar in the CSV file format. In your API request, specify the following parameters.\n\n* Start and end date of the calendar. For \"month offset\" calendars, the start date must match the month defined in the `month_offset` attribute.\n\nYou can also specify optional parameters such as the starting day of the week and prefixes for the quarter and year labels.\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - 10.12.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenerateCSVRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Generate custom calendar data based on specifications, as a CSV file.
          content:
            application/json:
              schema:
                type: object
        '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/calendars/search:
    post:
      operationId: searchCalendars
      description: "\n <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nGets a list of [custom calendars](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal).\n\nRequires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your ThoughtSpot instance, the `CAN_MANAGE_CUSTOM_CALENDAR` (**Can manage custom calendars**) privilege is required.\n\n#### Usage guidelines\n\nBy default, the API returns a list of custom calendars for all connection objects. To retrieve custom calendar details for a particular connection, specify the connection ID. You can also use other search parameters such as `name_pattern` and `sort_options` as search filters.\n\nThe `name_pattern` parameter filters and returns only those objects that match the specified pattern. Use `%` as a wildcard for pattern matching.\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - 10.12.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchCalendarsRequest'
        required: true
      parameters: []
      responses:
        '200':
          description: Custom calendar fetched successfully.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CalendarResponse'
        '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/calendars/{calendar_identifier}/update:
    post:
      operationId: updateCalendar
      description: "\n <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nUpdates the properties of a [custom calendar](https://docs.thoughtspot.com/cloud/latest/connections-cust-cal).\n\nRequires `DATAMANAGEMENT` (**Can manage data**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your ThoughtSpot instance, the `CAN_MANAGE_CUSTOM_CALENDAR` (**Can manage custom calendars**) privilege is required.\n\n#### Usage guidelines\n\nYou can update the properties of a calendar using one of the following methods:\n* `FROM_INPUT_PARAMS` to update the calendar properties with the values defined in the API request.\n* `FROM_EXISTING_TABLE` Creates a calendar from the parameters defined in the API request.\n\nTo update a custom calendar, specify the calendar ID as a path parameter in the request URL and the following parameters in the request body:  \n\n* Connection ID and Table name\n* Database and schema name attributes:\n  For most Cloud Data Warehouse (CDW) connectors, both `database_name` and `schema_name` attributes are required.  \n  However, the attribute requirements are conditional and vary based on the connector type and its metadata structure. For example, for connectors such as Teradata, MySQL, SingleSore, Amazon Aurora MySQL, Amazon RDS MySQL, Oracle, and GCP_MYSQL, the `schema_name` is required, whereas the `database_name` attribute is not.\n  Similarly, connectors such as ClickHouse require you to specify the `database_name` and the schema specification in such cases is optional.\n\nThe API allows you to modify the calendar type, month offset value, start and end date, starting day of the week, and prefixes assigned to the year and quarter labels.   \n\n#### Examples\n\nUpdate a custom calendar using an existing Table in ThoughtSpot:\n\n```\n{\n  \"update_method\": \"FROM_EXISTING_TABLE\",\n  \"table_reference\": {\n    \"connection_identifier\": \"Connection1\",\n    \"database_name\": \"db1\",\n    \"table_name\": \"custom_calendar_2025\",\n    \"schame_name\": \"schemaVar\"\n  }\n}\n```\n\nUpdate a custom calendar with the attributes defined in the API request:\n\n```\n{\n  \"update_method\": \"FROM_INPUT_PARAMS\",\n  \"table_reference\": {\n    \"connection_identifier\": \"Connection1\",\n    \"database_name\": \"db1\",\n    \"table_name\": \"custom_calendar_2025\",\n    \"schame_name\": \"schemaVar\"\n  },\n  \"month_offset\": \"August\",\n  \"start_day_of_week\": \"Monday\",\n  \"start_date\": \"08/01/2025\",\n  \"end_date\": \"07/31/2026\"\n}\n```\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - 10.12.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateCalendarRequest'
        required: true
      parameters:
      - in: path
        name: calendar_identifier
        required: true
        schema:
          type: string
        description: Unique Id or name of the calendar.
      responses:
        '204':
          description: Custom calendar updated successfully.
        '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/customization/email/delete:
    post:
      operationId: deleteOrgEmailCustomization
      description: '

        <span class="since-beta-tag">Beta</span> <span class="since-beta-tag">Version: 10.12.0.cl or later</span>


        Deletes the configuration for the email customization.


        #### Pre-requisites


        Requires `DEVELOPER` (**has developer privilege**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.

        If [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `DEVELOPER` (**Has developer privilege**) privilege is required.


        **NOTE**:This endpoint in currently in beta. Contact ThoughtSpot support to enable this on your instance.


        #### Usage guidelines


        - Call the search API endpoint to get the `org_identifier` from the response.

        - Use that `org_identifier` as a parameter in this API request.





        #### Endpoint URL

        '
      tags:
      - 10.12.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteOrgEmailCustomizationRequest'
        required: true
      parameters: []
      responses:
        '204':
          description: Email Customization configuration 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: Unauthorized 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/customization/email/update:
    post:
      operationId: updateEmailCustomization
      description: "\n<span class=\"since-beta-tag\">Beta</span> <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nUpdates a customization configuration for the notification email.\n\n#### Pre-requisites\n\nRequires `DEVELOPER` (**has developer privilege**) or `ADMINISTRATION` (**Can administer ThoughtSpot**) privilege.\nIf [Role-Based Access Control (RBAC)](https://developers.thoughtspot.com/docs/rbac) is enabled on your instance, the `DEVELOPER` (**Has developer privilege**) privilege is required.\n\n**NOTE**:This endpoint in currently in beta. Contact ThoughtSpot support to enable this on your instance.\n\n#### Usage guidelines\n\nTo update a custom configuration pass these parameters in your API request:\n\n- A JSON map of configuration attributes `template_properties`. The following example shows a sample set of customization configuration:\n\n```\n{\n  {\n      \"cta_button_bg_color\": \"#444DEA\",\n    \t\"cta_text_font_color\": \"#FFFFFF\",\n    \t\"primary_bg_color\": \"#D3DEF0\",\n        \"logo_url\": \"https://storage.pardot.com/710713/1642089901EbkRibJq/TS_fullworkmark_darkmode.png\",\n  \t    \"font_family\": \"\",\n    \t\"product_name\": \"ThoughtSpot\",\n    \t\"footer_address\": \"444 Castro St, Suite 1000 Mountain View, CA 94041\",\n\t    \"footer_phone\": \"(800) 508-7008\",\n        \"replacement_value_for_liveboard\": \"Dashboard\",\n    \t\"replacement_value_for_answer\": \"Chart\",\n    \t\"replacement_value_for_spot_iq\": \"AI Insights\",\n   \t    \"hide_footer_phone\": false,\n        \"hide_footer_address\": false,\n        \"hide_product_name\": false,\n    \t\"hide_manage_notification\": false,\n    \t\"hide_mobile_app_nudge\": false,\n    \t\"hide_privacy_policy\": false,\n     \t\"hide_ts_vocabulary_definitions\": false,\n    \t\"hide_error_message\": false,\n    \t\"hide_unsubscribe_link\": false,\n        \"hide_notification_status\": false,\n    \t\"hide_modify_alert\": false,\n    \t\"company_website_url\": \"https://your-website.com/\",\n    \t\"company_privacy_policy_url\" : \"https://link-to-privacy-policy.com/\",\n        \"contact_support_url\": \"https://link-to-contact-support.com/\",\n        \"hide_contact_support_url\": false,\n\t    \"hide_logo_url\" : false\n  }\n}\n```\n\n\n\n\n#### Endpoint URL\n"
      tags:
      - 10.12.0.cl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateEmailCustomizationRequest'
        required: true
      parameters: []
      responses:
        '204':
          description: Email Customization 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: Unauthorized 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/security/column/rules/fetch:
    post:
      operationId: fetchColumnSecurityRules
      description: "\n<span class=\"since-beta-tag\">Beta</span> <span class=\"since-beta-tag\">Version: 10.12.0.cl or later</span>\n\nFetches column security rules for specified tables.\n\nThis API endpoint retrieves column-level security rules configured for tables. It returns information about which columns are secured and which groups have access to those columns.\n\n#### Usage guidelines\n\n- Provide an array of table identifiers using either `identifier` (GUID or name) or `obj_identifier` (object ID)\n- At least one of `identifier` or `obj_identifier` must be provided for each table\n- The API returns column security rules for all specified tables\n- Users must have appropriate permissions to access security rules for the specified tables\n\n#### Required permissions\n\n- `ADMINISTRATION` - Can administer ThoughtSpot\n- `DATAMANAGEMENT` - Can manage data\n- `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables\n\n#### Example request\n\n```json\n{\n  \"tables\": [\n    {\n      \"identifier\": \"table-guid\",\n      \"obj_identifier\": \"table-object-id\"\n    }\n  ]\n}\n```\n\n#### Response format\n\nThe API returns an array of `ColumnSecurityRuleResponse` objects wrapped in a `data` field. Each `ColumnSecurityRuleResponse` object contains:\n- Table information (GUID and object ID)  \n- Array of column security rules with column details, group access, and source table information\n\n#### Example response\n\n```json\n{\n  \"data\": [\n    {\n      \"guid\": \"table-guid\",\n      \"objId\": \"table-object-id\",\n      \"columnSecurityRules\": [\n        {\n          \"column\": {\n            \"id\": \"col_123\",\n            \"name\": \"Salary\"\n          },\n          \"groups\": [\n            {\n              \"id\": \"group_1\",\n              \"name\": \"HR Department\"\n

# --- truncated at 32 KB (68 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/thoughtspot/refs/heads/main/openapi/thoughtspot-10-12-0-cl-api-openapi.yml