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 Version: 10.12.0.cl or later\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 Version: 10.12.0.cl or later\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 Version: 10.12.0.cl or later\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 Version: 10.12.0.cl or later\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 Version: 10.12.0.cl or later\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 Version: 10.12.0.cl or later\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 Version: 10.12.0.cl or later\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 Version: 10.12.0.cl or later\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 Version: 10.12.0.cl or later\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: ' Beta Version: 10.12.0.cl or later 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: "\nBeta Version: 10.12.0.cl or later\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: "\nBeta Version: 10.12.0.cl or later\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 }\n ],\n \"sourceTableDetails\": {\n \"id\": \"source-table-guid\",\n \"name\": \"Employee_Data\"\n }\n }\n ]\n }\n ]\n}\n```\n\n\n\n#### Endpoint URL\n" tags: - 10.12.0.cl requestBody: content: application/json: schema: $ref: '#/components/schemas/FetchColumnSecurityRulesRequest' required: true parameters: [] responses: '200': description: Successfully fetched column security rules content: application/json: schema: type: array items: $ref: '#/components/schemas/ColumnSecurityRuleResponse' '400': description: Bad request - Table not found or invalid parameters content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized access. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Forbidden - User doesn't have permission to access security rules for this table content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /api/rest/2.0/security/column/rules/update: post: operationId: updateColumnSecurityRules description: "\nBeta Version: 10.12.0.cl or later\n\nCreates, updates, or deletes column security rules for specified tables.\n\nThis API endpoint allows you to create, update, or delete column-level security rules on columns of a table. The operation follows an \"all or none\" policy: if defining security rules for any of the provided columns fails, the entire operation will be rolled back, and no rules will be created.\n\n#### Usage guidelines\n\n- Provide table identifier using either `identifier` (GUID or name) or `obj_identifier` (object ID)\n- Use `clear_csr: true` to remove all column security rules from the table\n- For each column, specify the security rule using `column_security_rules` array\n- Use `is_unsecured: true` to mark a specific column as unprotected\n- Use `group_access` operations to manage group associations:\n - `ADD`: Add groups to the column's access list\n - `REMOVE`: Remove groups from the column's access list\n - `REPLACE`: Replace all existing groups with the specified groups\n\n#### Required permissions\n\n- `ADMINISTRATION` - Can administer ThoughtSpot\n- `DATAMANAGEMENT` - Can manage data (if RBAC is disabled)\n- `CAN_MANAGE_WORKSHEET_VIEWS_TABLES` - Can manage worksheet views and tables (if RBAC is enabled)\n\n#### Example request\n\n```json\n{\n \"identifier\": \"table-guid\",\n \"obj_identifier\": \"table-object-id\",\n \"clear_csr\": false,\n \"column_security_rules\": [\n {\n \"column_identifier\": \"col id or col name\",\n \"is_unsecured\": false,\n \"group_access\": [\n {\n \"operation\": \"ADD\",\n \"group_identifiers\": [\"hr_group_id\", \"hr_group_name\", \"finance_group_id\"]\n }\n ]\n },\n {\n \"column_identifier\": \"col id or col name\",\n \"is_unsecured\": true\n },\n {\n \"column_identifier\": \"col id or col name\",\n \"is_unsecured\": false,\n \"group_access\": [\n {\n \"operation\": \"REPLACE\",\n \"group_identifiers\": [\"management_group_id\", \"management_group_name\"]\n }\n ]\n }\n ]\n}\n```\n\n#### Request Body Schema\n\n- `identifier` (string, optional): GUID or name of the table for which we want to create column security rules\n- `obj_identifier` (string, optional): The object ID of the table\n- `clear_csr` (boolean, optional): If true, then all the secured columns will be marked as unprotected, and all the group associations will be removed\n- `column_security_rules` (array of objects, required): An array where each object defines the security rule for a specific column\n\nEach column security rule object contains:\n- `column_identifier` (string, required): Column identifier (col_id or name)\n- `is_unsecured` (boolean, optional): If true, the column will be marked as unprotected and all groups associated with it will be removed\n- `group_access` (array of objects, optional): Array of group operation objects\n\nEach group operation object contains:\n- `operation` (string, required): Operation type - ADD, REMOVE, or REPLACE\n- `group_identifiers` (array of strings, required): Array of group identifiers (name or GUID) on which the operation will be performed\n\n#### Response\n\nThis API does not return any response body. A successful operation returns HTTP 200 status code.\n\n#### Operation Types\n\n- **ADD**: Adds the specified groups to the column's access list\n- **REMOVE**: Removes the specified groups from the column's access list \n- **REPLACE**: Replaces all existing groups with the specified groups \n\n\n\n#### Endpoint URL\n" tags: - 10.12.0.cl requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateColumnSecurityRulesRequest' required: true parameters: [] responses: '204': description: Successfully updated column security rules '400': description: Bad request - Invalid parameters or table not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized access. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '403': description: Forbidden - User doesn't have permission to modify security rules for this table content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' components: schemas: UpdateColumnSecurityRulesRequest: type: object properties: identifier: description: GUID or name of the table for which we want to create column security rules type: string obj_identifier: description: The object ID of the table type: string clear_csr: description: If true, then all the secured columns will be marked as unprotected, and all the group associations will be removed type: boolean nullable: true column_security_rules: description: Array where each object defines the security rule for a specific column type: array items: $ref: '#/components/schemas/ColumnSecurityRuleUpdate' required: - column_security_rules ExternalTableInput: type: object required: - connection_identifier - table_name properties: connection_identifier: type: string description: Unique ID or name of the connection. database_name: type: string default: '' description: Name of the database. nullable: true schema_name: type: string default: '' description: Name of the schema. nullable: true table_name: type: string description: Name of the table. Table names may be case-sensitive depending on the database system. UpdateCalendarRequest: type: object properties: update_method: description: Type of update operation. default: FROM_INPUT_PARAMS type: string enum: - FROM_INPUT_PARAMS - FROM_EXISTING_TABLE table_reference: description: 'Table reference containing connection identifier and table details in this format: `{"connection_identifier":"conn1", "database_name":"db1", "schema_name":"sc1", "table_name":"tb1"}`.' allOf: - $ref: '#/components/schemas/ExternalTableInput' start_date: description: Start date for the calendar in `MM/dd/yyyy` format. This parameter is mandatory if `update_method` is set as `FROM_INPUT_PARAMS`. type: string end_date: description: End date for the calendar in `MM/dd/yyyy` format. This parameter is mandatory if `update_method` is set as `FROM_INPUT_PARAMS`. type: string calendar_type: description: Type of the calendar. default: MONTH_OFFSET type: string enum: - MONTH_OFFSET - FOUR_FOUR_FIVE - FOUR_FIVE_FOUR - FIVE_FOUR_FOUR month_offset: description: Specify the month in which the fiscal or custom calendar year should start. For example, if you set `month_offset` to "April", the custom calendar will treat "April" as the first month of the year, and the related attributes such as quarters and start date will be based on this offset. The default value is `January`, which represents the standard calendar year (January to December). default: January type: string enum: - January - February - March - April - May - June - July - August - September - October - November - December start_day_of_week: description: Specify the starting day of the week default: Sunday type: string enum: - Sunday - Monday - Tuesday - Wednesday - Thursday - Friday - Saturday quarter_name_prefix: description: Prefix to add before the quarter. default: '' type: string year_name_prefix: description: Prefix to add before the year. default: '' type: string required: - table_reference PolicyProcessOptionsInput: type: object properties: impersonate_user: type: string nullable: true ConnectionConfigurationResponse: type: object properties: configuration_identifier: type: string nullable: true name: type: string nullable: true description: type: string nullable: true configuration: type: object nullable: true policy_principals: type: array items: $ref: '#/components/schemas/UserPrincipal' nullable: true policy_processes: type: array items: type: string enum: - SAGE_INDEXING - ROW_COUNT_STATS - SCHEDULED_LIVEBOARDS nullable: true disabled: type: boolean nullable: true data_warehouse_type: type: string 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 nullable: true policy_type: type: string enum: - NO_POLICY - PRINCIPALS - PROCESSES nullable: true same_as_parent: type: boolean nullable: true policy_process_options: $ref: '#/components/schemas/PolicyProcessOptions' nullable: true 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 ColumnSecurityRuleGroupOperation: type: object required: - operation - group_identifiers properties: operation: type: string enum: - ADD - REMOVE - REPLACE description: Type of operation to be performed on the groups group_identifiers: type: array items: type: string description: Array of group identifiers (name or GUID) on which the operation will be performed ErrorResponse: type: object properties: error: type: object nullable: true GenerateCSVRequest: type: object properties: start_date: description: Start date for the calendar in `MM/dd/yyyy` format. type: string end_date: description: End date for the calendar in `MM/dd/yyyy` format. type: string calendar_type: description: Type of the calendar. default: MONTH_OFFSET type: string enum: - MONTH_OFFSET - FOUR_FOUR_FIVE - FOUR_FIVE_FOUR - FIVE_FOUR_FOUR month_offset: description: Month offset to start calendar from `January`. default: January type: string enum: - January - February - March - April - May - June - July - August - September - October - November - December start_day_of_week: description: Specify the starting day of the week. default: Sunday type: string enum: - Sunday - Monday - Tuesday - Wednesday - Thursday - Friday - Saturday quarter_name_prefix: description: Prefix to add before the quarter. type: string year_name_prefix: description: Prefix to add before the year. type: string required: - start_date - end_date PolicyProcessOptions: type: object properties: impersonate_user: type: string nullable: true 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.
Version: 26.2.0.cl or later' default: false type: boolean nullable: true 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.
Version: 26.2.0.cl or later' 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 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 ColumnSecurityRuleUpdate: type: object required: - column_identifier properties: column_identifier: type: string description: Column identifier (col_id or name) is_unsecured: type: boolean description: If true, the column will be marked as unprotected and all groups associated with it will be removed nullable: true group_access: type: array items: $ref: '#/components/schemas/ColumnSecurityRuleGroupOperation' description: Array of group operation objects that specifies the actions for groups to be associated with a column nullable: true CalendarResponse: type: object properties: calendar_name: type: string description: Name of the calendar nullable: true connection_name: type: string description: Name of the connection nullable: true data_warehouse_type: type: string description: Type of data warehouse nullable: true modification_time_in_millis: type: string description: Last modification time in milliseconds nullable: true author_name: type: string description: Name of the author who created the calendar nullable: true connection_id: type: string description: Unique ID of the connection nullable: true calendar_id: type: string description: Unique ID of the calendar nullable: true ColumnSecurityRuleTableInput: type: object properties: identifier: type: string description: Name or GUID of the table nullable: true obj_identifier: type: string description: Object ID of the table nullable: true ColumnSecurityRuleColumn: type: object required: - id - name properties: id: type: string description: The unique identifier of the column name: type: string description: The name of the column SearchCalendarsRequest: type: object properties: connection_identifier: description: Unique ID or name of the connection. type: string name_pattern: description: Pattern to match for calendar names (use '%' for wildcard match). type: string record_offset: description: The starting record number from where the records should be included. default: 0 type: integer format: int32 record_size: description: The number of records that should be included. default: 10 type: integer format: int32 sort_options: description: Sort options. allOf: - $ref: '#/components/schemas/SortOption' ColumnSecurityRuleGroup: type: object required: - id - name properties: id: type: string description: The unique identifier of the group name: type: string description: The name of the group Template_Properties_Input_Create: type: object properties: cta_button_bg_color: type: string description: Background color for call-to-action button in hex format nullable: true cta_text_font_color: type: string description: Text color for call-to-action button in hex format nullable: true primary_bg_color: type: string description: Primary background color in hex format nullable: true home_url: type: string description: Home page URL (HTTP/HTTPS only) nullable: true logo_url: type: string description: Logo image URL (HTTP/HTTPS only) nullable: true font_family: type: string description: Font family for email content (e.g., Arial, sans-serif) nullable: true product_name: type: string description: Product name to display nullable: true footer_address: type: string description: Footer address text nullable: true footer_phone: type: string description: Footer phone number nullable: true replacement_value_for_liveboard: type: string description: Replacement value for Liveboard nullable: true replacement_value_for_answer: type: string description: Replacement value for Answer nullable: true replacement_value_for_spot_iq: type: string description: Replacement value for SpotIQ nullable: true hide_footer_address: type: boolean description: Whether to hide footer address nullable: true hide_footer_phone: type: boolean description: Whether to hide footer phone number nullable: true hide_manage_notification: type: boolean description: Whether to hide manage notification link nullable: true hide_mobile_app_nudge: type: boolean description: Whether to hide mobile app nudge nullable: true hide_privacy_policy: type: boolean description: Whether to hide privacy policy link nullable: true hide_product_name: type: boolean description: Whether to hide product name nullable: true hide_ts_vocabulary_definitions: type: boolean description: Whether to hide ThoughtSpot vocabulary definitions nullable: true hide_notification_status: type: boolean description: Whether to hide notification status nullable: true hide_error_message: type: boolean description: Whether to hide error message nullable: true hide_unsubscribe_link: type: boolean description: Whether to hide unsubscribe link nullable: true hide_modify_alert: type: boolean description: Whether to hide modify alert nullable: true company_privacy_policy_url: type: string description: Company privacy policy URL (HTTP/HTTPS only) nullable: true company_website_url: type: string description: Company website URL (HTTP/HTTPS only) nullable: true contact_support_url: type: string description: 'Contact support url (HTTP/HTTPS only).
Version: 26.2.0.cl or later' nullable: true hide_contact_support_url: type: boolean description: 'Whether to hide contact support url.
Version: 26.2.0.cl or later' nullable: true hide_logo_url: type: boolean description: 'Whether to hide logo
Version: 26.4.0.cl or later' nullable: true description: Email customization configuration properties FetchColumnSecurityRulesRequest: type: object properties: tables: description: Array of table identifier objects for which to fetch column security rules type: array items: $ref: '#/components/schemas/ColumnSecurityRuleTableInput' required: - tables UpdateEmailCustomizationRequest: type: object properties: template_properties: description: Email customization configuration as key value pair allOf: - $ref: '#/components/schemas/Template_Properties_Input_Create' org_identifier: description: Unique ID or name of org type: string required: - template_properties CreateCalendarRequest: type: object properties: name: description: Name of the custom calendar. type: string creation_method: description: Type of create operation. type: string enum: - FROM_INPUT_PARAMS - FROM_EXISTING_TABLE table_reference: description: 'Table reference containing connection identifier and table details in this format: `{"connection_identifier":"conn1", "database_name":"db1", "schema_name":"sc1", "table_name":"tb1"}`. The given table will be created if `creation_method` is set as `FROM_INPUT_PARAMS`.' allOf: - $ref: '#/components/schemas/ExternalTableInput' start_date: description: Start date for the calendar in `MM/dd/yyyy` format. This parameter is mandatory if `creation_method` is set as `FROM_INPUT_PARAMS`. type: string end_date: description: End date for the calendar in `MM/dd/yyyy` format. This parameter is mandatory if `creation_method` is set as `FROM_INPUT_PARAMS`. type: string calendar_type: description: Type of the calendar. default: MONTH_OFFSET type: string enum: - MONTH_OFFSET - FOUR_FOUR_FIVE - FOUR_FIVE_FOUR - FIVE_FOUR_FOUR month_offset: description: Specify the month in which the fiscal or custom calendar year should start. For example, if you set `month_offset` to "April", the custom calendar will treat "April" as the first month of the year, and the related attributes such as quarters and start date will be based on this offset. The default value is `January`, which represents the standard calendar year (January to December). default: January type: string enum: - January - February - March - April - May - June - July - August - September - October - November - December start_day_of_week: description: Specify the starting day of the week. default: Sunday type: string enum: - Sunday - Monday - Tuesday - Wednesday - Thursday - Friday - Saturday quarter_name_prefix: description: Prefix to add before the quarter. default: '' type: string year_name_prefix: description: Prefix to add before the year. default: '' type: string required: - name - creation_method - table_reference UserPrincipal: type: object properties: id: type: string nullable: true name: type: string nullable: true type: type: string nullable: true 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.
Version: 26.2.0.cl or later' default: false type: boolean nullable: true 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.
Version: 26.2.0.cl or later' 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 nullable: true required: - connection_identifier ColumnSecurityRuleResponse: type: object properties: table_guid: type: string description: GUID of the table for which the column security rules are fetched nullable: true obj_id: type: string description: Object ID of the table for which the column security rules are fetched nullable: true column_security_rules: type: array items: $ref: '#/components/schemas/ColumnSecurityRule' description: Array containing column security rule objects nullable: true DeleteOrgEmailCustomizationRequest: type: object properties: org_identifiers: description: Unique identifier of the organization. type: array items: type: string ColumnSecurityRuleSourceTable: type: object required: - id - name properties: id: type: string description: The unique identifier of the source table name: type: string description: The name of the source table ColumnSecurityRule: type: object required: - column properties: column: $ref: '#/components/schemas/ColumnSecurityRuleColumn' description: Information about the column groups: type: array items: $ref: '#/components/schemas/ColumnSecurityRuleGroup' description: Array of groups that have access to this column nullable: true source_table_details: $ref: '#/components/schemas/ColumnSecurityRuleSourceTable' description: Information about the source table nullable: true SortOption: type: object properties: field_name: type: string enum: - DEFAULT - NAME - DISPLAY_NAME - AUTHOR - CREATED - MODIFIED default: DEFAULT description: Name of the field to apply the sort on. nullable: true order: type: string enum: - ASC - DESC default: ASC description: 'Sort order : ASC(Ascending) or DESC(Descending).' nullable: true 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